import { PpsvComponent } from './varComponent' export interface PpsvFile { file?: File name?: string url?: string cover?: string fit?: string state?: 'loading' | 'success' | 'error' } export type UploaderValidateTriggers = 'onChange' | 'onRemove' interface UploaderProps { modelValue?: PpsvFile[] accept?: string capture?: string multiple?: boolean readonly?: boolean disabled?: boolean removable?: boolean maxlength?: string | number maxsize?: string | number previewed?: boolean ripple?: boolean validateTrigger?: Array rules?: Array<(v: PpsvFile) => any> onBeforeRead?: (file: PpsvFile) => Promise | boolean onAfterRead?: (file: PpsvFile) => any onOversize?: (file: PpsvFile) => any onRemove?: (file: PpsvFile) => any 'onUpdate:modelValue'?: (files: PpsvFile[]) => any } export class Uploader extends PpsvComponent { $props: UploaderProps getLoading(varFiles: PpsvFile[]): PpsvFile[] getSuccess(varFiles: PpsvFile[]): PpsvFile[] getError(varFiles: PpsvFile[]): PpsvFile[] validate(): Promise resetValidation(): void reset(): void } export class _UploaderComponent extends Uploader {}