import { type VNode } from 'vue';
import type { AttachmentsProps, AttachmentsSelectOptions } from './interface';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        default?(): VNode | VNode[] | string;
        placeholder?(props?: {
            type: "inline" | "drop";
        }): VNode | string;
        /** Custom FileList upload trigger (plus button area). */
        upload?(): VNode | VNode[] | string;
    }> & {
        default?(): VNode | VNode[] | string;
        placeholder?(props?: {
            type: "inline" | "drop";
        }): VNode | string;
        /** Custom FileList upload trigger (plus button area). */
        upload?(): VNode | VNode[] | string;
    };
    refs: {};
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import("vue").DefineComponent<AttachmentsProps, {
    nativeElement: HTMLDivElement | null;
    fileNativeElement: HTMLInputElement | null;
    upload: (file: File | File[] | FileList) => void;
    select: (options?: AttachmentsSelectOptions) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AttachmentsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
