/// import { PutObjectCommandOutput } from '@aws-sdk/client-s3'; export interface IFilePath { path: string; name: string; } export declare abstract class StorageService { abstract getSignedUrl(key: string, contentType: string): Promise<{ signedUrl: string; path: string; additionalHeaders?: Record; }>; abstract uploadFile(key: string, file: Buffer, contentType: string): Promise; abstract getFile(key: string): Promise; abstract deleteFile(key: string): Promise; } export declare class S3StorageService implements StorageService { private s3; uploadFile(key: string, file: Buffer, contentType: string): Promise; getFile(key: string): Promise; deleteFile(key: string): Promise; getSignedUrl(key: string, contentType: string): Promise<{ signedUrl: string; path: string; }>; } export declare class GCSStorageService implements StorageService { private gcs; uploadFile(key: string, file: Buffer, contentType: string): Promise; getFile(key: string): Promise; deleteFile(key: string): Promise; getSignedUrl(key: string, contentType: string): Promise<{ signedUrl: string; path: string; }>; } export declare class AzureBlobStorageService implements StorageService { private sharedKeyCredential; private blobServiceClient; uploadFile(key: string, file: Buffer, contentType: string): Promise; getFile(key: string): Promise; deleteFile(key: string): Promise; getSignedUrl(key: string, contentType: string): Promise<{ signedUrl: string; path: string; additionalHeaders: { 'x-ms-blob-type': string; }; }>; } //# sourceMappingURL=storage.service.d.ts.map