@modbox/s3-uploads-client
Version:
The frontend package for s3-uploads module.
51 lines (50 loc) • 2.17 kB
TypeScript
import { CancellableUpload, InitiatedUploadWithFile, MultipartUploadChunk, OneUploadCompleteCallback, PendingChunkUpload, PresignedRequestInfo, SingleFileUploadChunk, UploadChunk, UploadCompleteCallback, UploadedChunk, UploadedFile, UploadErrorCallback, UploadProgressCallback } from './types';
export declare class UploadManager {
private onProgress;
private onComplete;
private onUploadComplete;
private onError;
private getPartRequest;
private uploads;
private chunks;
private totalChunksCount;
private completedChunksCount;
private maxConcurrent;
private cancelAllOnError;
private isCanceled;
private pendingChunkUploads;
private completedChunks;
private completedUploads;
private uploadPromise;
private resolvePromise;
private rejectPromise;
constructor({ uploads, maxConcurrent, cancelAllOnError, onProgress, onComplete, onUploadComplete, onError, getPartRequest, }: {
onProgress?: UploadProgressCallback;
onComplete?: UploadCompleteCallback;
onUploadComplete?: OneUploadCompleteCallback;
onError?: UploadErrorCallback;
cancelAllOnError?: boolean;
uploads: InitiatedUploadWithFile[];
maxConcurrent: number;
getPartRequest?: (upload: MultipartUploadChunk) => Promise<PresignedRequestInfo>;
});
prepareChunks(): Promise<void>;
start(): Promise<CancellableUpload[]>;
upload(): void;
completeOne(upload: InitiatedUploadWithFile): void;
complete(): void;
promise(): Promise<UploadedFile[]>;
cancel(reason?: string): void;
cancelOne(uploadId: string): void;
chunkCompleted(uploadedChunk: UploadedChunk): void;
chunkErrored(erroredChunk: PendingChunkUpload, error: Error): void;
uploadChunk(chunk: UploadChunk): PendingChunkUpload;
performSingleFileUpload(abortController: AbortController | {
abort: () => void;
signal: null;
}, chunk: SingleFileUploadChunk): Promise<UploadedChunk>;
performMultipartUpload(abortController: AbortController | {
abort: () => void;
signal: null;
}, chunk: MultipartUploadChunk): Promise<UploadedChunk>;
}