@aws-amplify/storage
Version:
Storage category of aws-amplify
29 lines (28 loc) • 1.13 kB
TypeScript
import { AmplifyClassV6, StorageAccessLevel } from '@aws-amplify/core';
import { ResolvedS3Config, StorageBucket } from '../types/options';
interface S3ApiOptions {
accessLevel?: StorageAccessLevel;
targetIdentityId?: string;
useAccelerateEndpoint?: boolean;
bucket?: StorageBucket;
}
interface ResolvedS3ConfigAndInput {
s3Config: ResolvedS3Config;
bucket: string;
keyPrefix: string;
isObjectLockEnabled?: boolean;
identityId?: string;
}
/**
* resolve the common input options for S3 API handlers from Amplify configuration and library options.
*
* @param {AmplifyClassV6} amplify The Amplify instance.
* @param {S3ApiOptions} apiOptions The input options for S3 provider.
* @returns {Promise<ResolvedS3ConfigAndInput>} The resolved common input options for S3 API handlers.
* @throws A `StorageError` with `error.name` from `StorageValidationErrorCode` indicating invalid
* configurations or Amplify library options.
*
* @internal
*/
export declare const resolveS3ConfigAndInput: (amplify: AmplifyClassV6, apiOptions?: S3ApiOptions) => Promise<ResolvedS3ConfigAndInput>;
export {};