UNPKG

sanity-plugin-s3-files

Version:
41 lines (40 loc) 1.82 kB
import { VendorConfiguration } from 'sanity-plugin-external-files'; export declare const s3Files: import("sanity").Plugin<UserConfig | undefined>; interface UserConfig extends Pick<Partial<VendorConfiguration>, 'defaultAccept' | 'schemaPrefix'> { toolTitle?: string; /** * @optional * Credentials for accessing the S3 bucket. * * Leave this empty if you don't want to store credentials in the JS bundle of the Sanity studio, and instead prefer storing them in the dataset as a private document. * If empty, the user will be prompted to enter credentials when they first open the media library. * * This configuration can be partial: credentials not provided here will be prompted to be stored inside of Sanity. * For example, you may want to store the public-facing `bucketKey` and `bucketRegion` in the JS bundle, but keep `secretForValidating` in the Sanity dataset. */ credentials?: Partial<S3Credentials>; } export interface S3Credentials { /** S3 bucket key */ bucketKey?: string; /** S3 bucket region */ bucketRegion?: string; /** HTTPS endpoint that returns S3's signed URLs for uploading objects from the browser */ getSignedUrlEndpoint?: string; /** HTTPS endpoint for deleting an object in S3 */ deleteObjectEndpoint?: string; /** * @optional * Folder to store files inside the bucket. If none provided, will upload files to the bucket's root. */ folder?: string; /** * @optional * Secret for validating the signed URL request (optional) * * 🚨 Give preference to storing this value in Sanity by leaving this configuration empty. * When you populate it here, it'll show up in the JS bundle of the Sanity studio. */ secretForValidating?: string; } export {};