@cloudbase/storage
Version:
cloudbase js sdk storage module
50 lines (49 loc) • 2.19 kB
TypeScript
import { ICloudbaseUploadFileParams, ICloudbaseUploadFileResult, ICloudbaseGetUploadMetadataParams, ICloudbaseDeleteFileParams, ICloudbaseDeleteFileResult, ICloudbaseGetTempFileURLResult, ICloudbaseGetTempFileURLParams, ICloudbaseDownloadFileResult, ICloudbaseDownloadFileParams, ICloudbaseCopyFileParams, ICloudbaseCopyFileResult } from '@cloudbase/types/storage';
declare enum EUploadMethod {
put = "put",
post = "post"
}
interface IUploadMetadata {
url: string;
token: string;
authorization: string;
fileId: string;
cosFileId: string;
download_url?: string;
}
export declare const COMPONENT_NAME = "storage";
export interface ICloudbaseContext {
config: any;
request: any;
}
export declare class CloudbaseStorage {
isGateWay(): boolean;
uploadFile(params: Omit<ICloudbaseUploadFileParams, 'filePath'> & {
filePath?: string;
}, callback?: Function): Promise<ICloudbaseUploadFileResult>;
getUploadMetadata(params: ICloudbaseGetUploadMetadataParams & {
method?: EUploadMethod;
headers?: Record<string, string>;
}, callback?: Function): Promise<{
data: IUploadMetadata;
requestId: string;
}>;
deleteFile(params: ICloudbaseDeleteFileParams, callback?: Function): Promise<ICloudbaseDeleteFileResult>;
getTempFileURL(params: ICloudbaseGetTempFileURLParams, callback?: Function): Promise<ICloudbaseGetTempFileURLResult>;
downloadFile(params: ICloudbaseDownloadFileParams, callback?: Function): Promise<ICloudbaseDownloadFileResult>;
copyFile(params: ICloudbaseCopyFileParams, callback?: Function): Promise<ICloudbaseCopyFileResult>;
getFileInfo(params: ICloudbaseGetTempFileURLParams): Promise<{
fileList: (Pick<ICloudbaseGetTempFileURLResult['fileList'][0], 'code' | 'fileID' | 'tempFileURL' | 'message'> & {
fileName?: string;
cloudId?: ICloudbaseGetTempFileURLResult['fileList'][0]['fileID'];
contentType?: string;
mime?: string;
size?: number;
cacheControl?: string;
lastModified?: string;
etag?: string;
})[];
requestId: string;
}>;
}
export {};