import { S3 } from 'aws-sdk';
import { ManagedUpload } from 'aws-sdk/clients/s3';
import { AWSError } from 'aws-sdk/lib/error';
import { Request } from 'aws-sdk/lib/request';
export declare class S3Service {
    readonly s3: S3;
    getObject(key: string): Request<S3.Types.GetObjectOutput, AWSError>;
    headObject(key: string): Request<S3.Types.HeadObjectOutput, AWSError>;
    upload(key: string, body: S3.Body): ManagedUpload;
    deleteObject(key: string): Request<S3.Types.DeleteObjectOutput, AWSError>;
}
