declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    /**
     * Input field name
     */
    name: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Accepted file types
     */
    accept: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Whether to perform validation
     */
    validation: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Allowed file MIME types
     */
    fileMimeTypes: {
        type: ArrayConstructor;
        default: () => string[];
    };
    /**
     * Maximum file size in bytes
     */
    maxSize: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Whether the input is disabled
     */
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    fileInputRef: import("vue").Ref<null, null>;
    file: import("vue").ComputedRef<any>;
    isDragging: import("vue").Ref<boolean, boolean>;
    fileErrors: import("vue").Ref<never[], never[]>;
    handleChange: (event: any) => Promise<void>;
    removeFile: () => void;
    formatFileSize: (bytes: any) => string;
    onDragOver: (event: any) => void;
    onDragLeave: (event: any) => void;
    onDrop: (event: any) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "change")[], "error" | "change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Input field name
     */
    name: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Accepted file types
     */
    accept: {
        type: StringConstructor;
        default: string;
    };
    /**
     * Whether to perform validation
     */
    validation: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Allowed file MIME types
     */
    fileMimeTypes: {
        type: ArrayConstructor;
        default: () => string[];
    };
    /**
     * Maximum file size in bytes
     */
    maxSize: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Whether the input is disabled
     */
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onChange?: ((...args: any[]) => any) | undefined;
    onError?: ((...args: any[]) => any) | undefined;
}>, {
    name: string;
    accept: string;
    validation: boolean;
    fileMimeTypes: unknown[];
    maxSize: number;
    disabled: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
