//#region src/domains/run/services/blob-storage/types.d.ts
interface BlobStorageUploadParams {
  key: string;
  /** Buffer or Uint8Array; prefer <= ~20MB per blob (guideline, not enforced). */
  data: Buffer | Uint8Array;
  contentType: string;
}
interface BlobStorageDownloadResult {
  data: Uint8Array;
  contentType: string;
}
interface BlobStorageProvider {
  upload(params: BlobStorageUploadParams): Promise<void>;
  download(key: string): Promise<BlobStorageDownloadResult>;
  delete(key: string): Promise<void>;
  getPresignedUrl?(key: string, expiresInSeconds?: number): Promise<string>;
}
//#endregion
export { BlobStorageDownloadResult, BlobStorageProvider, BlobStorageUploadParams };