import { S3Client } from "@aws-sdk/client-s3/S3Client";
import { HeadObjectCommandOutput } from "@aws-sdk/client-s3";
interface S3ServiceOptions {
    bucketName?: string;
    domainName?: string;
    region?: string;
}
declare class S3Header {
    header: HeadObjectCommandOutput;
    constructor(header: HeadObjectCommandOutput);
    getETag(): string | undefined;
}
export declare class S3Service {
    private readonly client;
    private readonly options;
    constructor(client: S3Client, options?: S3ServiceOptions);
    getHeader(key: string): Promise<S3Header>;
    deleteObject(key: string): Promise<void>;
    putObject(key: string, body: string, contentType: string, cacheControl?: string): Promise<void>;
    getObject(key: string): Promise<any>;
}
export {};
