import { type Readable } from 'node:stream';
import { type BucketItemStat } from 'minio';
export interface InitS3ClientParams {
    endPoint: string;
    port?: number;
    useSSL?: boolean;
    accessKey: string;
    secretKey: string;
}
export declare function initS3Client({ accessKey, endPoint, port, secretKey, useSSL, }: InitS3ClientParams): void;
export declare function uploadS3File(bucket: string, key: string, content: Buffer | Readable | string, size?: number): Promise<void>;
export declare function uploadS3FileFromPath(bucket: string, key: string, path: string): Promise<void>;
export declare function getS3File(bucket: string, key: string): Promise<Readable>;
export declare function getS3FileBuffer(bucket: string, key: string): Promise<Buffer>;
export declare function getS3FileStats(bucket: string, key: string): Promise<BucketItemStat>;
export declare function deleteS3File(bucket: string, key: string): Promise<void>;
export declare function deleteS3Files(bucket: string, keys: string[]): Promise<void>;
export declare function clearAllS3Buckets(): Promise<void>;
