import { DetailedError } from 'tus-js-client'; import { KeyValuePair, UploaderInterface, UploadJob, UploadManagerOptions } from '../types'; export declare class TusUploader implements UploaderInterface { private job; private options; private authorizationToken; defaultRetryDelays: number[]; defaultChunkSize: number; private currentUploader; constructor(job: UploadJob, options: UploadManagerOptions, authorizationToken: string); start(): Promise; /** * @param shouldTerminate true when allow resuming upload later, false when cancelling upload. */ abort(shouldTerminate?: boolean): Promise; pause(): Promise; resume(): Promise; createEndpointUrl(): string; createUploadUrl(): string; createHeaders(): KeyValuePair; createMetadata(job: UploadJob): KeyValuePair; onProgress(bytesUploaded: number, bytesTotal: number): void; onSuccess(): void; onError(error: Error | DetailedError): void; onShouldRetry(error: Error | DetailedError): boolean; triggerCallback(callback: () => void): void; } export declare function createTusUploader(job: UploadJob, options: UploadManagerOptions, authorizationToken: string): TusUploader;