@vectorx/cloud-toolkit
Version:
VectorX Cloud Toolkit
42 lines (41 loc) • 1.08 kB
TypeScript
import COS, { type UploadBody } from "cos-nodejs-sdk-v5";
import type { GetToken } from "../services/upload-service";
interface IFileInfo {
name: string;
size: number;
type: string;
}
export interface UploadResponse extends COS.UploadFileResult {
bizName: string;
scene: string;
cloudType: number;
cdnDomain?: string;
fileId: string;
previewUrl?: string;
staticUrl?: string;
url?: string;
useCache?: boolean;
sliceSize?: number;
isSlice?: boolean;
tokenFail?: boolean;
}
export declare class Uploader {
bizName: string;
scene: string;
getToken: GetToken;
enableResume?: boolean;
constructor(args: {
bizName: string;
scene: string;
getToken: GetToken;
enableResume?: boolean;
});
private getPermit;
post(options: Omit<COS.UploadFileParams, "Bucket" | "Region" | "Key"> & {
Body: UploadBody;
fileInfo: IFileInfo;
fileFormat?: string;
onInstanceCreated?: (instance: COS) => void;
}): Promise<UploadResponse>;
}
export {};