import { UploadedFile, UploadInterface } from "upload-js";
import { UploadParams } from "upload-js/dist/UploadParams";
import { FileLike } from "upload-js/dist/FileLike";
import { UrlParams } from "upload-js/dist/UrlParams";
/**
 * Allows all file uploads to be cancelled (e.g. when widget closes).
 */
export declare class UploadManager implements UploadInterface {
    private readonly instance;
    private uploadCancellations;
    constructor(instance: UploadInterface);
    cancelAll(): void;
    beginAuthSession(authUrl: string, authHeaders: () => Promise<Record<string, string>>): Promise<void>;
    endAuthSession(): Promise<void>;
    uploadFile(file: FileLike, params: UploadParams | undefined): Promise<UploadedFile>;
    url(filePath: string, slugOrParams?: string | UrlParams): string;
}
