import { AbstractUploader, CommonOptions, VideoUploadResponse, WithAccessToken, WithApiKey, WithUploadToken } from "./abstract-uploader"; export interface ProgressiveUploadCommonOptions { preventEmptyParts?: boolean; mergeSmallPartsBeforeUpload?: boolean; } export interface ProgressiveUploaderOptionsWithUploadToken extends ProgressiveUploadCommonOptions, CommonOptions, WithUploadToken { } export interface ProgressiveUploaderOptionsWithAccessToken extends ProgressiveUploadCommonOptions, CommonOptions, WithAccessToken { } export interface ProgressiveUploaderOptionsWithApiKey extends ProgressiveUploadCommonOptions, CommonOptions, WithApiKey { } export interface ProgressiveUploadProgressEvent { part: number; uploadedBytes: number; totalBytes: number; } export declare class ProgressiveUploader extends AbstractUploader { private currentPartNum; private currentPartBlobs; private currentPartBlobsSize; private queue; private preventEmptyParts; private fileName; private mergeSmallPartsBeforeUpload; private currentChunkCancel?; private canceled; constructor(options: ProgressiveUploaderOptionsWithAccessToken | ProgressiveUploaderOptionsWithUploadToken | ProgressiveUploaderOptionsWithApiKey); uploadPart(file: Blob): Promise; cancel(): void; uploadLastPart(file: Blob): Promise; private upload; }