/** * S3 attachment storage driver. */ export default class S3AttachmentStorageDriver { options: Record; _clientPromise: Promise<{ DeleteObjectCommand: any; GetObjectCommand: any; PutObjectCommand: any; S3Client: any; getSignedUrl: any; }> | null; _client: any; /** * Runs constructor. * @param {object} args - Options. * @param {Record>} [args.options] - Driver options. */ constructor({ options }: { options?: Record>; }); /** * Runs bucket. * @returns {string} - S3 bucket name. */ bucket(): string; /** * Runs signed url expires in. * @returns {number} - Signed URL expiration in seconds. */ signedUrlExpiresIn(): number; /** * Runs s3 runtime. * @returns {Promise<{S3Client: ReturnType, PutObjectCommand: ReturnType, GetObjectCommand: ReturnType, DeleteObjectCommand: ReturnType, getSignedUrl: ReturnType}>} - S3 runtime. */ s3Runtime(): Promise<{ S3Client: ReturnType; PutObjectCommand: ReturnType; GetObjectCommand: ReturnType; DeleteObjectCommand: ReturnType; getSignedUrl: ReturnType; }>; /** * Runs client. * @returns {Promise>} - S3 client. */ client(): Promise>; /** * Runs write. * @param {object} args - Write args. * @param {string} args.attachmentId - Attachment id. * @param {import("../normalize-input.js").NormalizedAttachmentInput} args.input - Normalized attachment input. * @returns {Promise<{storageKey: string}>} - Storage key. */ write({ attachmentId, input }: { attachmentId: string; input: import("../normalize-input.js").NormalizedAttachmentInput; }): Promise<{ storageKey: string; }>; /** * Runs read. * @param {object} args - Read args. * @param {string} args.storageKey - Storage key. * @returns {Promise} - Attachment bytes. */ read({ storageKey }: { storageKey: string; }): Promise; /** * Runs delete. * @param {object} args - Delete args. * @param {string} args.storageKey - Storage key. * @returns {Promise} - Resolves when deleted. */ delete({ storageKey }: { storageKey: string; }): Promise; /** * Runs url. * @param {object} args - URL args. * @param {string} args.storageKey - Storage key. * @returns {Promise} - Signed URL. */ url({ storageKey }: { storageKey: string; }): Promise; } //# sourceMappingURL=s3.d.ts.map