/** * 文件选择器配置选项 */ export interface FileSelectorOptions { /** * 最大文件大小(字节) */ maxSize: number; /** * 支持的文件类型 */ accept: string; /** * 最大选择数量 */ maxCount?: number; /** * 是否多选 */ multiple?: boolean; /** * 是否使用相机(capture属性) */ useCamera?: boolean; /** * 自定义事件名称 */ eventName?: string; /** * 文件大小错误提示 */ sizeErrorText?: string; /** * 文件类型错误提示 */ typeErrorText?: string; /** * 文件数量错误提示 */ countErrorText?: string; /** * 功能不可用错误提示 */ unavailableErrorText?: string; } /** * 判断文件是否接受上传的文件类型 * @param file 文件对象 * @param accept 接受上传的文件类型 * @returns 是否接受上传的文件类型 */ export declare const isAccepted: (file: File, accept?: string) => boolean; /** * 验证文件大小 */ export declare const validateFileSize: (file: File, maxSize: number, errorText?: string) => boolean; /** * 验证文件类型 */ export declare const validateFileType: (file: File, accept: string, errorText?: string) => boolean; /** * 验证文件数量 */ export declare const validateFileCount: (files: File[], maxCount: number, errorText?: string) => boolean; /** * 过滤有效文件 */ export declare const filterValidFiles: (files: File[], options: Pick) => File[]; /** * 创建文件输入元素 */ export declare const createFileInput: (options: Pick) => HTMLInputElement; /** * 清理文件输入元素 */ export declare const cleanupFileInput: (fileInput: HTMLInputElement, handler: (e: Event) => void) => void; /** * 处理文件选择 */ export declare const handleFileSelection: (files: File[], options: FileSelectorOptions, onChange?: (files: File[]) => void) => void;