declare type Id = number | string;

declare interface RecordList<T> {
	list: T[];
	pagination: {
		total: number;
		pageSize: number;
		current: number;
		recordTotal: number;
		sort?: string;
		filter?: string;
	};
}

declare interface OptionItem {
	label: string;
	value: string | number;
	children?: OptionItem[];
}

declare interface BlockContent {
	type: 'text' | 'image';
	content: string;
}

declare interface ArticleContentGroup {
	groupId?: number;
	blocks: BlockContent[];
}

declare interface ArticleDetail {
	id: number;
	title: string;
	metahuman_text: string;
	content_group: BlockContent[][]
}

declare interface NewsInfo {
	id: number;
	title: string;
	content: string;
	media_name: string;
	publish_time: string | number;
}

declare interface TOSSPolicy {
	//Oss access id
	access_id: string;
	//上传 host
	host: string;
	//Oss 上传 policy
	policy: string;
	//Oss 上传的鉴权签名
	signature: string;
	//该签名和policy有效期截至时间
	expire: int;
	//上传的 路径，在最后的 /  后面接上文件名称  文件名称 处理成  K8efE3imYn.docx，文件名长度16
	dir: string;
	//允许上传的文件最大大小，单位字节
	max_size: int;
	//允许上传的文件最大大小，单位字节
	allow: string;
}