strapi-provider-upload-ibm-cos-s3
Version:
A storage provider for the Strapi CMS that manages file uploads to IBM COS S3
43 lines (40 loc) • 1.12 kB
text/typescript
import * as ibm_cos_sdk_lib_request from 'ibm-cos-sdk/lib/request';
import * as ibm from 'ibm-cos-sdk';
import { ReadStream } from 'node:fs';
type Config = {
apiKey: string;
serviceInstanceId: string;
endpoint: string;
bucket: string;
acl: ibm.S3.Types.ObjectCannedACL;
folder?: string;
};
type File = {
name: string;
alternativeText?: string;
caption?: string;
width?: number;
height?: number;
formats?: Record<string, unknown>;
hash: string;
ext: string;
mime: string;
size: number;
sizeInBytes: number;
url: string;
previewUrl?: string;
path?: string;
provider?: string;
provider_metadata?: Record<string, unknown>;
stream?: ReadStream;
buffer?: Buffer;
};
declare const _default: {
init: (config: Config) => {
upload(file: File): Promise<void>;
uploadStream(file: File): Promise<void>;
delete(file: File): Promise<ibm_cos_sdk_lib_request.PromiseResult<ibm.S3.DeleteObjectOutput, ibm.AWSError>>;
isPrivate(): Promise<boolean>;
};
};
export { type File, _default as default };