import { CommonsTaskHandler } from './CommonsTaskHandler';
import { UploadTask, UploaderOptions } from '../../interface';
import { Observable } from 'rxjs';
export declare class AwsS3TaskHandler extends CommonsTaskHandler {
    private static _overwrite;
    private requestBaseURL?;
    private requestSigner?;
    private s3Config?;
    constructor(task: UploadTask, uploaderOptions: UploaderOptions);
    private enable;
    abort(): this;
    private abortTaskFiles;
    private processUploaderOptions;
    private getOverwriteFns;
    private createMultipartUpload;
    protected uploadPart(key: string, partNumber: number, uploadId: string, body: any): Observable<{
        uploadId: string;
        key: string;
        partNumber: number;
        etag: string;
    }>;
    private completeMultipartUpload;
    private abortMultipartUpload;
    private signRequest;
    private stringifyQuery;
    private getS3Config;
    private getRequestBaseURL;
    private getRequestSigner;
    private getFileExtraInfo;
}
