import { Widthable } from '../../composables/widthable';
import { FileUploadContentSlots } from './FileUploadContent';
import { locales as defaultLocales } from './locales';
type __VLS_Props = {
    modelValue: File[];
    disabled?: boolean;
    multiple?: boolean;
    fileSizeMax?: number;
    fileSizeUnits?: Array<string>;
    allowedExtensions?: Array<string>;
    locales?: typeof defaultLocales;
} & Widthable;
declare function openFileDialog(): void;
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        default(): void;
    } & FileUploadContentSlots> & {
        default(): void;
    } & FileUploadContentSlots;
    refs: {
        fileInput: HTMLInputElement;
        dropZone: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
    fileInput: import('vue').Ref<HTMLInputElement | null, HTMLInputElement | null>;
    openFileDialog: typeof openFileDialog;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    error: (value: string[]) => any;
    "update:modelValue": (value: File[]) => any;
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
    onError?: ((value: string[]) => any) | undefined;
    "onUpdate:modelValue"?: ((value: File[]) => any) | undefined;
}>, {
    disabled: boolean;
    locales: typeof defaultLocales;
    multiple: boolean;
    allowedExtensions: Array<string>;
    fileSizeUnits: Array<string>;
    fileSizeMax: number;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    fileInput: HTMLInputElement;
    dropZone: HTMLDivElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
