@aws-amplify/storage
Version:
Storage category of aws-amplify
57 lines (46 loc) • 1.35 kB
text/typescript
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
import {
StorageOptions,
StorageListAllOptions,
StorageListPaginateOptions,
} from './options';
export type StorageOperationInput<Options extends StorageOptions> = {
key: string;
options?: Options;
};
export type StorageGetPropertiesInput<Options extends StorageOptions> =
StorageOperationInput<Options>;
export type StorageRemoveInput<Options extends StorageOptions> = {
key: string;
options?: Options;
};
export type StorageListInput<
Options extends StorageListAllOptions | StorageListPaginateOptions
> = {
prefix?: string;
options?: Options;
};
export type StorageGetUrlInput<Options extends StorageOptions> =
StorageOperationInput<Options>;
export type StorageDownloadDataInput<Options extends StorageOptions> =
StorageOperationInput<Options>;
export type StorageUploadDataInput<Options extends StorageOptions> =
StorageOperationInput<Options> & {
data: StorageUploadDataPayload;
};
export type StorageCopyInput<
SourceOptions extends StorageOptions,
DestinationOptions extends StorageOptions
> = {
source: SourceOptions;
destination: DestinationOptions;
};
/**
* The data payload type for upload operation.
*/
export type StorageUploadDataPayload =
| Blob
| ArrayBufferView
| ArrayBuffer
| string;