import { ExtractPropTypes, PropType } from 'vue'; /** * 文件上传列表单条数据类型 */ export type UploadListItemType = { /** * 文件地址 */ url: string; /** * 是否允许删除 */ deletable: boolean; /** * 上传状态 */ loading?: boolean; /** * 上传失败 */ fail?: boolean; }; /** * 上传回调公用类型 */ export type UploadCallbackParameters = (file: File, detail: { index: number; files: File[]; }) => void; /** * 上传前拦截方法 */ export type BeforeUploadType = (...rest: Parameters) => Promise; /** * 上传后拦截方法 */ export type AfterUploadType = (response: XMLHttpRequestResponseType) => UploadListItemType; export type UploadProps = ExtractPropTypes; export declare const UPLOAD_PROPS: { modelValue: { type: PropType; default: () => never[]; }; /** * 文件上传请求地址 */ action: StringConstructor; /** * 文件允许上传的格式 */ accept: { type: StringConstructor; default: string; }; /** * 请求方式 */ method: { type: StringConstructor; default: string; }; /** * 文件上传数据的 key,默认:file */ name: { type: StringConstructor; default: string; }; /** * 请求额外数据 */ data: { type: ObjectConstructor; default: () => {}; }; /** * 请求头数据 */ headerParams: { type: ObjectConstructor; default: () => {}; }; /** * 是否开启多选,默认:false */ multiple: { type: BooleanConstructor; default: boolean; }; /** * 是否展示删除按钮 */ deletable: { type: BooleanConstructor; default: boolean; }; /** * 相机调取模式 */ capture: { type: PropType; default: undefined; }; /** * 上传大小限制,单位:byte */ maxSize: { type: NumberConstructor; default: number; }; /** * 上传个数显示 */ maxCount: { type: NumberConstructor; default: number; }; /** * 预览区单个图片大小 */ previewSize: { type: (StringConstructor | NumberConstructor)[]; default: number; }; /** * 文件上传前回调函数,返回 false 终止上传 */ beforeUpload: { type: PropType; default: undefined; }; /** * 文件上传成功回调,返回文件预览列表 */ uploadAfter: { type: PropType; default: undefined; }; disabled: { type: BooleanConstructor; default: boolean; }; readonly: { type: BooleanConstructor; default: boolean; }; rowId: { type: StringConstructor; default: undefined; }; model: { /** * 预览区单个图片大小 */ type: PropType>; default: undefined; }; }; export declare const uploadListProps: { deletable: { type: BooleanConstructor; default: boolean; }; previewSize: { type: (StringConstructor | NumberConstructor)[]; default: number; }; list: { type: PropType; required: boolean; default: () => never[]; }; };