import { type UploadFile, type UploadFileItem } from './common'; declare const _default: __VLS_WithTemplateSlots; rootClass: StringConstructor; accept: { type: import("vue").PropType<"video" | "image" | undefined>; default: string; }; multiple: BooleanConstructor; sourceType: { type: import("vue").PropType<("album" | "camera")[] | undefined>; default: () => string[]; }; sizeType: { type: import("vue").PropType<("original" | "compressed")[] | undefined>; default: () => string[]; }; maxDuration: { type: NumberConstructor; default: number; }; camera: import("vue").PropType<"front" | "back" | undefined>; modelValue: import("vue").PropType; maxCount: { type: NumberConstructor; default: number; }; maxSize: { type: import("vue").PropType boolean) | undefined>; default: number; }; overSize: import("vue").PropType<((fileItem: UploadFileItem[]) => void) | undefined>; disabled: BooleanConstructor; readonly: BooleanConstructor; beforeRead: import("vue").PropType<((file: UploadFile) => boolean | Promise) | undefined>; afterRead: import("vue").PropType<((fileItem: UploadFileItem) => void) | undefined>; removable: { type: BooleanConstructor; default: boolean; }; beforeRemove: import("vue").PropType<((...args: unknown[]) => boolean | Promise) | undefined>; validateEvent: { type: BooleanConstructor; default: boolean; }; }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "update:model-value": (...args: any[]) => void; remove: (...args: any[]) => void; }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; rootClass: StringConstructor; accept: { type: import("vue").PropType<"video" | "image" | undefined>; default: string; }; multiple: BooleanConstructor; sourceType: { type: import("vue").PropType<("album" | "camera")[] | undefined>; default: () => string[]; }; sizeType: { type: import("vue").PropType<("original" | "compressed")[] | undefined>; default: () => string[]; }; maxDuration: { type: NumberConstructor; default: number; }; camera: import("vue").PropType<"front" | "back" | undefined>; modelValue: import("vue").PropType; maxCount: { type: NumberConstructor; default: number; }; maxSize: { type: import("vue").PropType boolean) | undefined>; default: number; }; overSize: import("vue").PropType<((fileItem: UploadFileItem[]) => void) | undefined>; disabled: BooleanConstructor; readonly: BooleanConstructor; beforeRead: import("vue").PropType<((file: UploadFile) => boolean | Promise) | undefined>; afterRead: import("vue").PropType<((fileItem: UploadFileItem) => void) | undefined>; removable: { type: BooleanConstructor; default: boolean; }; beforeRemove: import("vue").PropType<((...args: unknown[]) => boolean | Promise) | undefined>; validateEvent: { type: BooleanConstructor; default: boolean; }; }>> & { "onUpdate:model-value"?: ((...args: any[]) => any) | undefined; onRemove?: ((...args: any[]) => any) | undefined; }, { multiple: boolean; validateEvent: boolean; disabled: boolean; accept: "video" | "image" | undefined; sourceType: ("album" | "camera")[] | undefined; sizeType: ("original" | "compressed")[] | undefined; maxDuration: number; maxCount: number; maxSize: number | ((file: UploadFile) => boolean) | undefined; removable: boolean; readonly: boolean; }, {}>, { select?(_: {}): any; }>; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };