import FileServer from '../file-server'; import { FileProgress, FileStatus, TaskProgress, TaskStatus, UploadTaskOptions } from '../create-task/types'; import { FastTaskLike } from './types'; declare type OperationFns = { extractFile: FileServer['extractFile']; remove: FileServer['remove']; mkdir: FileServer['mkdir']; }; export declare class UltraFastUploadTask implements FastTaskLike { private readonly server; private readonly input; private readonly options; private readonly loginInfo?; private readonly groupId?; private readonly spaceId?; private readonly operationFns?; private taskId; private status; private delegate?; private initError?; private readonly abortController; private hasStarted; private hasCompleted; private pendingPause; private pendingCancel; private readonly stats; constructor(server: FileServer, files: FileList | File[] | DataTransferItemList, options: UploadTaskOptions, loginInfo?: { username: string; password: string; spaceId: number; authWay: number; isEncrypt: boolean; }, groupId?: number, spaceId?: number, operationFns?: OperationFns); pause(): void; resume(): void; cancel(): void; getProgress(): TaskProgress; getTaskId(): number; getStatus(): TaskStatus; getAllFiles(): FileProgress[]; getAllFilesRef(): FileProgress[]; getFile(requestId: number): FileProgress | undefined; private initialize; private buildTaskOptions; private buildUploadOrder; private getRawScannedOrder; private getBootstrapProgress; private emitProgress; private emitError; private sleep; } export { FileStatus, TaskStatus };