/// import { S3 } from "aws-sdk"; import { CreateMultipartUploadRequest } from "aws-sdk/clients/s3"; import { EventEmitter } from "events"; export declare class Uploader extends EventEmitter { private readonly s3; private readonly s3Options; private readonly localFile; readonly contentLength: number; private readonly fileContent; /** @readonly */ loaded: number; private cancelled; readonly s3RetryCount: number; readonly s3RetryDelay: number; readonly multipartUploadThreshold: number; readonly multipartUploadSize: number; readonly multipartDownloadThreshold: number; readonly multipartDownloadSize: number; constructor(s3: S3, s3Options: CreateMultipartUploadRequest, localFile: string, contentLength: number, fileContent: Buffer | null | undefined); upload(): Promise; abort(): void; private putObject(md5); private multipartUpload(uploadId, multipartUploadSize); private makeUploadPart(part, uploadId); private runOrRetry(task); }