import { StorageBackend, StorageResult, S3StorageConfig, StorageUploadOptions } from './base'; export declare class S3StorageBackend implements StorageBackend { private config; readonly type: "s3"; readonly hasPublicUrl = true; constructor(config: S3StorageConfig); init(): Promise; upload(buffer: Buffer, filename: string): Promise; uploadStream(stream: NodeJS.ReadableStream, filename: string, options?: StorageUploadOptions): Promise; download(key: string): Promise; downloadStream(key: string): NodeJS.ReadableStream; delete(key: string): Promise; exists(key: string): Promise; private buildRequestTarget; private generateAuthorizationHeader; private getSigningKey; private joinUrlPath; private encodePath; }