oss-upload-tool
Version:
Integrated oss upload
34 lines (33 loc) • 1.14 kB
TypeScript
import { OSSUploadOptions, OSSUploadLocalItem } from './types';
export declare type UploadOptions = {
onProgress?: (loaded: number, total: number, speed?: number) => void;
};
export declare type UploadResp<T = any> = {
url: string;
} & T;
export declare abstract class Client<Options = {}, UploadParams = {}> {
opt: OSSUploadOptions;
protected constructor(options: OSSUploadOptions);
/**
* 上传单个文件
* @param item
* @param params
* @param options
*/
abstract upload(item: OSSUploadLocalItem, params?: Partial<UploadParams>, options?: UploadOptions): Promise<UploadResp>;
/**
* 获取上传后的文件地址
* @param item
* @param params
*/
abstract getUploadedUrl(item: OSSUploadLocalItem, params?: Partial<UploadParams>): Promise<UploadResp>;
/**
* 检查系统默认的配置
* 敏感配置建议通过环境或者系统配置获取,不要直接暴露到项目中
*/
abstract get globalOptions(): Partial<Options>;
/**
* 通用上传参数
*/
abstract get globalUploadParams(): Partial<UploadParams>;
}