@cool-midway/file
Version:
cool-admin一个很酷的后台权限管理系统,开源免费,模块化、插件化、极速开发CRUD,方便快速构建迭代后台管理系统
88 lines (87 loc) • 1.76 kB
TypeScript
export declare enum MODETYPE {
LOCAL = "local",
CLOUD = "cloud",
OTHER = "other"
}
export declare enum CLOUDTYPE {
OSS = "oss",
COS = "cos",
QINIU = "qiniu",
/** AWS S3 */
AWS = "aws"
}
/**
* 上传模式
*/
export interface Mode {
mode: MODETYPE;
type: string;
}
/**
* 模块配置
*/
export interface CoolFileConfig {
mode: MODETYPE;
oss: OSSConfig;
cos: COSConfig;
qiniu: QINIUConfig;
/** AWS s3 配置 */
aws: AWSConfig;
domain: string;
}
/**
* OSS 配置
*/
export interface OSSConfig {
accessKeyId: string;
accessKeySecret: string;
bucket: string;
endpoint: string;
timeout: string;
expAfter?: number;
maxSize?: number;
host?: string;
publicDomain?: string;
}
/**
* COS 配置
*/
export interface COSConfig {
accessKeyId: string;
accessKeySecret: string;
bucket: string;
region: string;
publicDomain: string;
durationSeconds?: number;
allowPrefix?: string;
allowActions?: string[];
}
export interface AWSConfig {
/** accessKeyId */
accessKeyId: string;
/** secretAccessKey */
secretAccessKey: string;
/** bucket */
bucket: string;
/** region */
region: string;
/** fields */
fields?: any;
/** conditions */
conditions?: any[];
/** expires */
expires?: number;
/** publicDomain */
publicDomain?: string;
/** forcePathStyle */
forcePathStyle?: boolean;
}
export interface QINIUConfig {
accessKeyId: string;
accessKeySecret: string;
bucket: string;
region: string;
publicDomain: string;
uploadUrl?: string;
fileKey?: string;
}