/** * @fractary/core - S3 Storage Implementation * * AWS S3 storage backend for file operations. * Uses AWS SDK v3 with lazy loading to avoid hard dependencies. */ import { Storage, S3StorageConfig } from './types'; /** * AWS S3 storage implementation */ export declare class S3Storage implements Storage { private config; private s3Client; constructor(config: S3StorageConfig); /** * Get or create the S3 client (lazy loaded) */ private getClient; /** * Get the full S3 key with optional prefix */ private getKey; /** * Check if an error is a "not found" error * AWS SDK v3 uses error.name and error.$metadata.httpStatusCode */ private isNotFoundError; /** * Write content to S3 */ write(id: string, content: string | Buffer): Promise; /** * Read content from S3 */ read(id: string): Promise; /** * Check if object exists in S3 */ exists(id: string): Promise; /** * List objects in S3 with optional prefix */ list(prefix?: string): Promise; /** * Delete object from S3 */ delete(id: string): Promise; /** * Get a presigned URL for the object */ getUrl(id: string, expiresIn?: number): Promise; /** * Get the bucket name */ getBucket(): string; /** * Get the configured prefix */ getPrefix(): string | undefined; } //# sourceMappingURL=s3.d.ts.map