import { type PropType, type ExtractPublicPropTypes, type Ref, nextTick } from 'vue';
import { type ThemeComponent } from '../../composables/useTheme';
declare const selectProps: {
    placeholder: StringConstructor;
    options: PropType<SelectOption[]>;
    multiple: BooleanConstructor;
    multipleCheckbox: BooleanConstructor;
    truncate: BooleanConstructor;
    flat: BooleanConstructor;
    native: BooleanConstructor;
    filterable: BooleanConstructor;
    clearable: BooleanConstructor;
    filterPlaceholder: {
        type: StringConstructor;
        default: string;
    };
    virtualList: BooleanConstructor;
    virtualListOffsetTop: NumberConstructor;
    virtualListOffsetBottom: NumberConstructor;
    virtualListItemHeight: {
        type: NumberConstructor;
        default: number;
    };
    virtualListOverscan: {
        type: NumberConstructor;
        default: number;
    };
    placement: PropType<import("floating-vue").Placement>;
    modelValue: {
        readonly type: PropType<string | number | boolean | object | any[] | undefined>;
        readonly default: undefined;
    };
    id: StringConstructor;
    name: StringConstructor;
    readonly: BooleanConstructor;
    required: BooleanConstructor;
    validateOnInput: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    label: StringConstructor;
    helper: StringConstructor;
    error: StringConstructor;
    hideFooter: BooleanConstructor;
    rules: {
        readonly type: ArrayConstructor;
        readonly default: () => never[];
    };
    tooltip: StringConstructor;
    skipFormRegistry: BooleanConstructor;
    disabled: BooleanConstructor;
    loading: BooleanConstructor;
    loadingLabel: StringConstructor;
    loadingStatus: {
        readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
        readonly default: "active";
    };
    size: {
        readonly type: PropType<import("../../composables/useCommon").Size>;
        readonly default: "md";
        readonly validator: (value: string) => boolean;
    };
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
};
export type SelectOption = {
    value: number | string;
    label: string;
    prefix?: string;
    suffix?: string;
    disabled?: boolean;
    keepOpenOnClick?: boolean;
    onClick?: () => void | undefined;
};
export type SelectProps = ExtractPublicPropTypes<typeof selectProps>;
type InternalClasses = 'wrapper' | 'box' | 'truncateCounter' | 'content' | 'search' | 'contentBody' | 'iconWrapper' | 'clearButton' | 'icon';
type InternalExtraData = {
    errorInternal: Ref<boolean>;
};
export interface SelectTheme extends ThemeComponent<SelectProps, InternalClasses, InternalExtraData> {
}
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    filter: import('vue').PropType<any>;
    placeholder: StringConstructor;
    options: PropType<SelectOption[]>;
    multiple: BooleanConstructor;
    multipleCheckbox: BooleanConstructor;
    truncate: BooleanConstructor;
    flat: BooleanConstructor;
    native: BooleanConstructor;
    filterable: BooleanConstructor;
    clearable: BooleanConstructor;
    filterPlaceholder: {
        type: StringConstructor;
        default: string;
    };
    virtualList: BooleanConstructor;
    virtualListOffsetTop: NumberConstructor;
    virtualListOffsetBottom: NumberConstructor;
    virtualListItemHeight: {
        type: NumberConstructor;
        default: number;
    };
    virtualListOverscan: {
        type: NumberConstructor;
        default: number;
    };
    placement: PropType<import("floating-vue").Placement>;
    modelValue: {
        readonly type: PropType<string | number | boolean | object | any[] | undefined>;
        readonly default: undefined;
    };
    id: StringConstructor;
    name: StringConstructor;
    readonly: BooleanConstructor;
    required: BooleanConstructor;
    validateOnInput: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    label: StringConstructor;
    helper: StringConstructor;
    error: StringConstructor;
    hideFooter: BooleanConstructor;
    rules: {
        readonly type: ArrayConstructor;
        readonly default: () => never[];
    };
    tooltip: StringConstructor;
    skipFormRegistry: BooleanConstructor;
    disabled: BooleanConstructor;
    loading: BooleanConstructor;
    loadingLabel: StringConstructor;
    loadingStatus: {
        readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
        readonly default: "active";
    };
    size: {
        readonly type: PropType<import("../../composables/useCommon").Size>;
        readonly default: "md";
        readonly validator: (value: string) => boolean;
    };
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
}>, {
    focus: () => void | undefined;
    blur: () => void | undefined;
    reset: () => void;
    validate: (val?: any) => boolean;
    setError: (val: string) => void;
    filterRef: Ref<({
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            disabled: boolean;
            type: string;
            color: string;
            size: import("../../composables/useCommon").Size;
            block: boolean;
            loading: boolean;
            loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            modelValue: string | number | boolean | object | any[] | undefined;
            readonly: boolean;
            required: boolean;
            validateOnInput: boolean;
            hideFooter: boolean;
            rules: unknown[];
            skipFormRegistry: boolean;
            clearable: boolean;
            showPasswordToggle: boolean;
            dir: "rtl" | "ltr";
            showCounter: boolean;
        }> & Omit<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
            readonly disabled: boolean;
            readonly type: string;
            readonly color: string;
            readonly size: import("../../composables/useCommon").Size;
            readonly block: boolean;
            readonly loading: boolean;
            readonly loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            readonly readonly: boolean;
            readonly required: boolean;
            readonly validateOnInput: boolean;
            readonly hideFooter: boolean;
            readonly rules: unknown[];
            readonly skipFormRegistry: boolean;
            readonly clearable: boolean;
            readonly showPasswordToggle: boolean;
            readonly dir: "rtl" | "ltr";
            readonly showCounter: boolean;
            readonly error?: string | undefined;
            readonly name?: string | undefined;
            readonly icon?: string | undefined;
            readonly iconLeft?: string | undefined;
            readonly iconRight?: string | undefined;
            readonly loadingLabel?: string | undefined;
            readonly modelValue?: string | number | boolean | object | any[] | undefined;
            readonly id?: string | undefined;
            readonly label?: string | undefined;
            readonly helper?: string | undefined;
            readonly tooltip?: string | undefined;
            readonly placeholder?: string | undefined;
            readonly max?: string | number | undefined;
            readonly maxlength?: string | number | undefined;
            readonly min?: string | number | undefined;
            readonly minlength?: string | number | undefined;
            readonly step?: string | number | undefined;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
            showPasswordToggle: {
                type: BooleanConstructor;
                default: boolean;
            };
            dir: {
                type: PropType<"rtl" | "ltr">;
                default: string;
            };
            icon: StringConstructor;
            iconLeft: StringConstructor;
            iconRight: StringConstructor;
            max: (StringConstructor | NumberConstructor)[];
            maxlength: (StringConstructor | NumberConstructor)[];
            min: (StringConstructor | NumberConstructor)[];
            minlength: (StringConstructor | NumberConstructor)[];
            placeholder: StringConstructor;
            type: {
                type: StringConstructor;
                default: string;
            };
            step: (StringConstructor | NumberConstructor)[];
            block: BooleanConstructor;
            showCounter: BooleanConstructor;
            clearable: BooleanConstructor;
            modelValue: {
                readonly type: PropType<string | number | boolean | object | any[] | undefined>;
                readonly default: undefined;
            };
            id: StringConstructor;
            name: StringConstructor;
            readonly: BooleanConstructor;
            required: BooleanConstructor;
            validateOnInput: {
                readonly type: BooleanConstructor;
                readonly default: true;
            };
            label: StringConstructor;
            helper: StringConstructor;
            error: StringConstructor;
            hideFooter: BooleanConstructor;
            rules: {
                readonly type: ArrayConstructor;
                readonly default: () => never[];
            };
            tooltip: StringConstructor;
            skipFormRegistry: BooleanConstructor;
            disabled: BooleanConstructor;
            loading: BooleanConstructor;
            loadingLabel: StringConstructor;
            loadingStatus: {
                readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
                readonly default: "active";
            };
            color: {
                readonly type: StringConstructor;
                readonly default: string | undefined;
            };
            size: {
                readonly type: PropType<import("../../composables/useCommon").Size>;
                readonly default: "md";
                readonly validator: (value: string) => boolean;
            };
        }>> & Readonly<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
        }>, "disabled" | "type" | "color" | "size" | "block" | "loading" | "loadingStatus" | "modelValue" | "readonly" | "required" | "validateOnInput" | "hideFooter" | "rules" | "skipFormRegistry" | "clearable" | "showPasswordToggle" | "dir" | "showCounter">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot<any> | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
        $host: Element | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
            showPasswordToggle: {
                type: BooleanConstructor;
                default: boolean;
            };
            dir: {
                type: PropType<"rtl" | "ltr">;
                default: string;
            };
            icon: StringConstructor;
            iconLeft: StringConstructor;
            iconRight: StringConstructor;
            max: (StringConstructor | NumberConstructor)[];
            maxlength: (StringConstructor | NumberConstructor)[];
            min: (StringConstructor | NumberConstructor)[];
            minlength: (StringConstructor | NumberConstructor)[];
            placeholder: StringConstructor;
            type: {
                type: StringConstructor;
                default: string;
            };
            step: (StringConstructor | NumberConstructor)[];
            block: BooleanConstructor;
            showCounter: BooleanConstructor;
            clearable: BooleanConstructor;
            modelValue: {
                readonly type: PropType<string | number | boolean | object | any[] | undefined>;
                readonly default: undefined;
            };
            id: StringConstructor;
            name: StringConstructor;
            readonly: BooleanConstructor;
            required: BooleanConstructor;
            validateOnInput: {
                readonly type: BooleanConstructor;
                readonly default: true;
            };
            label: StringConstructor;
            helper: StringConstructor;
            error: StringConstructor;
            hideFooter: BooleanConstructor;
            rules: {
                readonly type: ArrayConstructor;
                readonly default: () => never[];
            };
            tooltip: StringConstructor;
            skipFormRegistry: BooleanConstructor;
            disabled: BooleanConstructor;
            loading: BooleanConstructor;
            loadingLabel: StringConstructor;
            loadingStatus: {
                readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
                readonly default: "active";
            };
            color: {
                readonly type: StringConstructor;
                readonly default: string | undefined;
            };
            size: {
                readonly type: PropType<import("../../composables/useCommon").Size>;
                readonly default: "md";
                readonly validator: (value: string) => boolean;
            };
        }>> & Readonly<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
        }>, {
            focus: () => void | undefined;
            blur: () => void | undefined;
            reset: () => void;
            validate: (val?: any) => boolean;
            setError: (val: string) => void;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, {
            disabled: boolean;
            type: string;
            color: string;
            size: import("../../composables/useCommon").Size;
            block: boolean;
            loading: boolean;
            loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            modelValue: string | number | boolean | object | any[] | undefined;
            readonly: boolean;
            required: boolean;
            validateOnInput: boolean;
            hideFooter: boolean;
            rules: unknown[];
            skipFormRegistry: boolean;
            clearable: boolean;
            showPasswordToggle: boolean;
            dir: "rtl" | "ltr";
            showCounter: boolean;
        }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<{
        disabled: boolean;
        type: string;
        color: string;
        size: import("../../composables/useCommon").Size;
        block: boolean;
        loading: boolean;
        loadingStatus: import("../loader/Loader.vue").LoaderStatus;
        modelValue: string | number | boolean | object | any[] | undefined;
        readonly: boolean;
        required: boolean;
        validateOnInput: boolean;
        hideFooter: boolean;
        rules: unknown[];
        skipFormRegistry: boolean;
        clearable: boolean;
        showPasswordToggle: boolean;
        dir: "rtl" | "ltr";
        showCounter: boolean;
    }> & Omit<Readonly<import("vue").ExtractPropTypes<{
        showPasswordToggle: {
            type: BooleanConstructor;
            default: boolean;
        };
        dir: {
            type: PropType<"rtl" | "ltr">;
            default: string;
        };
        icon: StringConstructor;
        iconLeft: StringConstructor;
        iconRight: StringConstructor;
        max: (StringConstructor | NumberConstructor)[];
        maxlength: (StringConstructor | NumberConstructor)[];
        min: (StringConstructor | NumberConstructor)[];
        minlength: (StringConstructor | NumberConstructor)[];
        placeholder: StringConstructor;
        type: {
            type: StringConstructor;
            default: string;
        };
        step: (StringConstructor | NumberConstructor)[];
        block: BooleanConstructor;
        showCounter: BooleanConstructor;
        clearable: BooleanConstructor;
        modelValue: {
            readonly type: PropType<string | number | boolean | object | any[] | undefined>;
            readonly default: undefined;
        };
        id: StringConstructor;
        name: StringConstructor;
        readonly: BooleanConstructor;
        required: BooleanConstructor;
        validateOnInput: {
            readonly type: BooleanConstructor;
            readonly default: true;
        };
        label: StringConstructor;
        helper: StringConstructor;
        error: StringConstructor;
        hideFooter: BooleanConstructor;
        rules: {
            readonly type: ArrayConstructor;
            readonly default: () => never[];
        };
        tooltip: StringConstructor;
        skipFormRegistry: BooleanConstructor;
        disabled: BooleanConstructor;
        loading: BooleanConstructor;
        loadingLabel: StringConstructor;
        loadingStatus: {
            readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
            readonly default: "active";
        };
        color: {
            readonly type: StringConstructor;
            readonly default: string | undefined;
        };
        size: {
            readonly type: PropType<import("../../composables/useCommon").Size>;
            readonly default: "md";
            readonly validator: (value: string) => boolean;
        };
    }>> & Readonly<{
        [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
    }>, "blur" | "focus" | "reset" | "validate" | "setError" | ("disabled" | "type" | "color" | "size" | "block" | "loading" | "loadingStatus" | "modelValue" | "readonly" | "required" | "validateOnInput" | "hideFooter" | "rules" | "skipFormRegistry" | "clearable" | "showPasswordToggle" | "dir" | "showCounter")> & import("vue").ShallowUnwrapRef<{
        focus: () => void | undefined;
        blur: () => void | undefined;
        reset: () => void;
        validate: (val?: any) => boolean;
        setError: (val: string) => void;
    }> & {} & import("vue").ComponentCustomProperties & {} & {
        $slots: {
            prefix?(_: {}): any;
            suffix?(_: {}): any;
        };
    }) | null, ({
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            disabled: boolean;
            type: string;
            color: string;
            size: import("../../composables/useCommon").Size;
            block: boolean;
            loading: boolean;
            loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            modelValue: string | number | boolean | object | any[] | undefined;
            readonly: boolean;
            required: boolean;
            validateOnInput: boolean;
            hideFooter: boolean;
            rules: unknown[];
            skipFormRegistry: boolean;
            clearable: boolean;
            showPasswordToggle: boolean;
            dir: "rtl" | "ltr";
            showCounter: boolean;
        }> & Omit<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
            readonly disabled: boolean;
            readonly type: string;
            readonly color: string;
            readonly size: import("../../composables/useCommon").Size;
            readonly block: boolean;
            readonly loading: boolean;
            readonly loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            readonly readonly: boolean;
            readonly required: boolean;
            readonly validateOnInput: boolean;
            readonly hideFooter: boolean;
            readonly rules: unknown[];
            readonly skipFormRegistry: boolean;
            readonly clearable: boolean;
            readonly showPasswordToggle: boolean;
            readonly dir: "rtl" | "ltr";
            readonly showCounter: boolean;
            readonly error?: string | undefined;
            readonly name?: string | undefined;
            readonly icon?: string | undefined;
            readonly iconLeft?: string | undefined;
            readonly iconRight?: string | undefined;
            readonly loadingLabel?: string | undefined;
            readonly modelValue?: string | number | boolean | object | any[] | undefined;
            readonly id?: string | undefined;
            readonly label?: string | undefined;
            readonly helper?: string | undefined;
            readonly tooltip?: string | undefined;
            readonly placeholder?: string | undefined;
            readonly max?: string | number | undefined;
            readonly maxlength?: string | number | undefined;
            readonly min?: string | number | undefined;
            readonly minlength?: string | number | undefined;
            readonly step?: string | number | undefined;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
            showPasswordToggle: {
                type: BooleanConstructor;
                default: boolean;
            };
            dir: {
                type: PropType<"rtl" | "ltr">;
                default: string;
            };
            icon: StringConstructor;
            iconLeft: StringConstructor;
            iconRight: StringConstructor;
            max: (StringConstructor | NumberConstructor)[];
            maxlength: (StringConstructor | NumberConstructor)[];
            min: (StringConstructor | NumberConstructor)[];
            minlength: (StringConstructor | NumberConstructor)[];
            placeholder: StringConstructor;
            type: {
                type: StringConstructor;
                default: string;
            };
            step: (StringConstructor | NumberConstructor)[];
            block: BooleanConstructor;
            showCounter: BooleanConstructor;
            clearable: BooleanConstructor;
            modelValue: {
                readonly type: PropType<string | number | boolean | object | any[] | undefined>;
                readonly default: undefined;
            };
            id: StringConstructor;
            name: StringConstructor;
            readonly: BooleanConstructor;
            required: BooleanConstructor;
            validateOnInput: {
                readonly type: BooleanConstructor;
                readonly default: true;
            };
            label: StringConstructor;
            helper: StringConstructor;
            error: StringConstructor;
            hideFooter: BooleanConstructor;
            rules: {
                readonly type: ArrayConstructor;
                readonly default: () => never[];
            };
            tooltip: StringConstructor;
            skipFormRegistry: BooleanConstructor;
            disabled: BooleanConstructor;
            loading: BooleanConstructor;
            loadingLabel: StringConstructor;
            loadingStatus: {
                readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
                readonly default: "active";
            };
            color: {
                readonly type: StringConstructor;
                readonly default: string | undefined;
            };
            size: {
                readonly type: PropType<import("../../composables/useCommon").Size>;
                readonly default: "md";
                readonly validator: (value: string) => boolean;
            };
        }>> & Readonly<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
        }>, "disabled" | "type" | "color" | "size" | "block" | "loading" | "loadingStatus" | "modelValue" | "readonly" | "required" | "validateOnInput" | "hideFooter" | "rules" | "skipFormRegistry" | "clearable" | "showPasswordToggle" | "dir" | "showCounter">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot<any> | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
        $host: Element | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
            showPasswordToggle: {
                type: BooleanConstructor;
                default: boolean;
            };
            dir: {
                type: PropType<"rtl" | "ltr">;
                default: string;
            };
            icon: StringConstructor;
            iconLeft: StringConstructor;
            iconRight: StringConstructor;
            max: (StringConstructor | NumberConstructor)[];
            maxlength: (StringConstructor | NumberConstructor)[];
            min: (StringConstructor | NumberConstructor)[];
            minlength: (StringConstructor | NumberConstructor)[];
            placeholder: StringConstructor;
            type: {
                type: StringConstructor;
                default: string;
            };
            step: (StringConstructor | NumberConstructor)[];
            block: BooleanConstructor;
            showCounter: BooleanConstructor;
            clearable: BooleanConstructor;
            modelValue: {
                readonly type: PropType<string | number | boolean | object | any[] | undefined>;
                readonly default: undefined;
            };
            id: StringConstructor;
            name: StringConstructor;
            readonly: BooleanConstructor;
            required: BooleanConstructor;
            validateOnInput: {
                readonly type: BooleanConstructor;
                readonly default: true;
            };
            label: StringConstructor;
            helper: StringConstructor;
            error: StringConstructor;
            hideFooter: BooleanConstructor;
            rules: {
                readonly type: ArrayConstructor;
                readonly default: () => never[];
            };
            tooltip: StringConstructor;
            skipFormRegistry: BooleanConstructor;
            disabled: BooleanConstructor;
            loading: BooleanConstructor;
            loadingLabel: StringConstructor;
            loadingStatus: {
                readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
                readonly default: "active";
            };
            color: {
                readonly type: StringConstructor;
                readonly default: string | undefined;
            };
            size: {
                readonly type: PropType<import("../../composables/useCommon").Size>;
                readonly default: "md";
                readonly validator: (value: string) => boolean;
            };
        }>> & Readonly<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
        }>, {
            focus: () => void | undefined;
            blur: () => void | undefined;
            reset: () => void;
            validate: (val?: any) => boolean;
            setError: (val: string) => void;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, {
            disabled: boolean;
            type: string;
            color: string;
            size: import("../../composables/useCommon").Size;
            block: boolean;
            loading: boolean;
            loadingStatus: import("../loader/Loader.vue").LoaderStatus;
            modelValue: string | number | boolean | object | any[] | undefined;
            readonly: boolean;
            required: boolean;
            validateOnInput: boolean;
            hideFooter: boolean;
            rules: unknown[];
            skipFormRegistry: boolean;
            clearable: boolean;
            showPasswordToggle: boolean;
            dir: "rtl" | "ltr";
            showCounter: boolean;
        }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<{
        disabled: boolean;
        type: string;
        color: string;
        size: import("../../composables/useCommon").Size;
        block: boolean;
        loading: boolean;
        loadingStatus: import("../loader/Loader.vue").LoaderStatus;
        modelValue: string | number | boolean | object | any[] | undefined;
        readonly: boolean;
        required: boolean;
        validateOnInput: boolean;
        hideFooter: boolean;
        rules: unknown[];
        skipFormRegistry: boolean;
        clearable: boolean;
        showPasswordToggle: boolean;
        dir: "rtl" | "ltr";
        showCounter: boolean;
    }> & Omit<Readonly<import("vue").ExtractPropTypes<{
        showPasswordToggle: {
            type: BooleanConstructor;
            default: boolean;
        };
        dir: {
            type: PropType<"rtl" | "ltr">;
            default: string;
        };
        icon: StringConstructor;
        iconLeft: StringConstructor;
        iconRight: StringConstructor;
        max: (StringConstructor | NumberConstructor)[];
        maxlength: (StringConstructor | NumberConstructor)[];
        min: (StringConstructor | NumberConstructor)[];
        minlength: (StringConstructor | NumberConstructor)[];
        placeholder: StringConstructor;
        type: {
            type: StringConstructor;
            default: string;
        };
        step: (StringConstructor | NumberConstructor)[];
        block: BooleanConstructor;
        showCounter: BooleanConstructor;
        clearable: BooleanConstructor;
        modelValue: {
            readonly type: PropType<string | number | boolean | object | any[] | undefined>;
            readonly default: undefined;
        };
        id: StringConstructor;
        name: StringConstructor;
        readonly: BooleanConstructor;
        required: BooleanConstructor;
        validateOnInput: {
            readonly type: BooleanConstructor;
            readonly default: true;
        };
        label: StringConstructor;
        helper: StringConstructor;
        error: StringConstructor;
        hideFooter: BooleanConstructor;
        rules: {
            readonly type: ArrayConstructor;
            readonly default: () => never[];
        };
        tooltip: StringConstructor;
        skipFormRegistry: BooleanConstructor;
        disabled: BooleanConstructor;
        loading: BooleanConstructor;
        loadingLabel: StringConstructor;
        loadingStatus: {
            readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
            readonly default: "active";
        };
        color: {
            readonly type: StringConstructor;
            readonly default: string | undefined;
        };
        size: {
            readonly type: PropType<import("../../composables/useCommon").Size>;
            readonly default: "md";
            readonly validator: (value: string) => boolean;
        };
    }>> & Readonly<{
        [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
    }>, "blur" | "focus" | "reset" | "validate" | "setError" | ("disabled" | "type" | "color" | "size" | "block" | "loading" | "loadingStatus" | "modelValue" | "readonly" | "required" | "validateOnInput" | "hideFooter" | "rules" | "skipFormRegistry" | "clearable" | "showPasswordToggle" | "dir" | "showCounter")> & import("vue").ShallowUnwrapRef<{
        focus: () => void | undefined;
        blur: () => void | undefined;
        reset: () => void;
        validate: (val?: any) => boolean;
        setError: (val: string) => void;
    }> & {} & import("vue").ComponentCustomProperties & {} & {
        $slots: {
            prefix?(_: {}): any;
            suffix?(_: {}): any;
        };
    }) | null>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    filter: import('vue').PropType<any>;
    placeholder: StringConstructor;
    options: PropType<SelectOption[]>;
    multiple: BooleanConstructor;
    multipleCheckbox: BooleanConstructor;
    truncate: BooleanConstructor;
    flat: BooleanConstructor;
    native: BooleanConstructor;
    filterable: BooleanConstructor;
    clearable: BooleanConstructor;
    filterPlaceholder: {
        type: StringConstructor;
        default: string;
    };
    virtualList: BooleanConstructor;
    virtualListOffsetTop: NumberConstructor;
    virtualListOffsetBottom: NumberConstructor;
    virtualListItemHeight: {
        type: NumberConstructor;
        default: number;
    };
    virtualListOverscan: {
        type: NumberConstructor;
        default: number;
    };
    placement: PropType<import("floating-vue").Placement>;
    modelValue: {
        readonly type: PropType<string | number | boolean | object | any[] | undefined>;
        readonly default: undefined;
    };
    id: StringConstructor;
    name: StringConstructor;
    readonly: BooleanConstructor;
    required: BooleanConstructor;
    validateOnInput: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    label: StringConstructor;
    helper: StringConstructor;
    error: StringConstructor;
    hideFooter: BooleanConstructor;
    rules: {
        readonly type: ArrayConstructor;
        readonly default: () => never[];
    };
    tooltip: StringConstructor;
    skipFormRegistry: BooleanConstructor;
    disabled: BooleanConstructor;
    loading: BooleanConstructor;
    loadingLabel: StringConstructor;
    loadingStatus: {
        readonly type: PropType<import("../loader/Loader.vue").LoaderStatus>;
        readonly default: "active";
    };
    size: {
        readonly type: PropType<import("../../composables/useCommon").Size>;
        readonly default: "md";
        readonly validator: (value: string) => boolean;
    };
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
}>> & Readonly<{
    [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}>, {
    disabled: boolean;
    flat: boolean;
    color: string;
    size: import("../../composables/useCommon").Size;
    loading: boolean;
    loadingStatus: import("../loader/Loader.vue").LoaderStatus;
    modelValue: string | number | boolean | object | any[] | undefined;
    readonly: boolean;
    required: boolean;
    validateOnInput: boolean;
    hideFooter: boolean;
    rules: unknown[];
    skipFormRegistry: boolean;
    clearable: boolean;
    multiple: boolean;
    multipleCheckbox: boolean;
    truncate: boolean;
    native: boolean;
    filterable: boolean;
    filterPlaceholder: string;
    virtualList: boolean;
    virtualListItemHeight: number;
    virtualListOverscan: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
    input?(_: {
        popover: ({
            $: import("vue").ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                disabled: boolean;
                delay: string | number | {
                    show: number;
                    hide: number;
                };
                container: string | boolean | Record<string, any>;
                positioningDisabled: boolean;
                placement: import("floating-vue").Placement;
                triggers: import("floating-vue").TriggerEvent[];
                hideArrow: boolean;
                strategy: "absolute" | "fixed";
                autoHide: boolean | ((event: Event) => boolean);
                shown: boolean;
                handleResize: boolean;
                instantMove: boolean;
                eagerMount: boolean;
                computeTransformOrigin: boolean;
            }> & Omit<{
                readonly disabled: boolean;
                readonly delay: string | number | {
                    show: number;
                    hide: number;
                };
                readonly container: string | boolean | Record<string, any>;
                readonly positioningDisabled: boolean;
                readonly placement: import("floating-vue").Placement;
                readonly triggers: import("floating-vue").TriggerEvent[];
                readonly hideArrow: boolean;
                readonly strategy: "absolute" | "fixed";
                readonly autoHide: boolean | ((event: Event) => boolean);
                readonly shown: boolean;
                readonly handleResize: boolean;
                readonly instantMove: boolean;
                readonly eagerMount: boolean;
                readonly computeTransformOrigin: boolean;
                readonly distance?: string | number | undefined;
                readonly skidding?: string | number | undefined;
                readonly showTriggers?: import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[]) | undefined;
                readonly hideTriggers?: import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[]) | undefined;
                readonly popperTriggers?: import("floating-vue").TriggerEvent[] | undefined;
                readonly popperShowTriggers?: import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[]) | undefined;
                readonly popperHideTriggers?: import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[]) | undefined;
                readonly boundary?: string | Record<string, any> | undefined;
                readonly popperClass?: string | Record<string, any> | unknown[] | undefined;
                readonly onResize?: ((...args: any[]) => any) | undefined;
                readonly onShow?: ((...args: any[]) => any) | undefined;
                readonly onHide?: ((...args: any[]) => any) | undefined;
                readonly "onUpdate:shown"?: ((...args: any[]) => any) | undefined;
                readonly "onApply-show"?: ((...args: any[]) => any) | undefined;
                readonly "onApply-hide"?: ((...args: any[]) => any) | undefined;
                readonly "onClose-group"?: ((...args: any[]) => any) | undefined;
                readonly "onClose-directive"?: ((...args: any[]) => any) | undefined;
                readonly "onAuto-hide"?: ((...args: any[]) => any) | undefined;
            } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
                disabled: BooleanConstructor;
                positioningDisabled: BooleanConstructor;
                placement: {
                    type: PropType<import("floating-vue").Placement>;
                    default: string;
                };
                delay: {
                    type: PropType<string | number | {
                        show: number;
                        hide: number;
                    }>;
                    default: number;
                };
                distance: (StringConstructor | NumberConstructor)[];
                skidding: (StringConstructor | NumberConstructor)[];
                triggers: {
                    type: PropType<import("floating-vue").TriggerEvent[]>;
                    default: () => string[];
                };
                hideArrow: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                showTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                hideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                popperTriggers: PropType<import("floating-vue").TriggerEvent[]>;
                popperShowTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                popperHideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                container: {
                    type: (BooleanConstructor | ObjectConstructor | StringConstructor)[];
                    default: string;
                };
                boundary: (ObjectConstructor | StringConstructor)[];
                strategy: {
                    type: PropType<"absolute" | "fixed">;
                    default: string;
                };
                autoHide: {
                    type: PropType<boolean | ((event: Event) => boolean)>;
                    default: boolean;
                };
                shown: BooleanConstructor;
                handleResize: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                instantMove: BooleanConstructor;
                eagerMount: BooleanConstructor;
                popperClass: (ArrayConstructor | ObjectConstructor | StringConstructor)[];
                computeTransformOrigin: BooleanConstructor;
            }>> & Readonly<{
                onResize?: ((...args: any[]) => any) | undefined;
                onShow?: ((...args: any[]) => any) | undefined;
                onHide?: ((...args: any[]) => any) | undefined;
                "onUpdate:shown"?: ((...args: any[]) => any) | undefined;
                "onApply-show"?: ((...args: any[]) => any) | undefined;
                "onApply-hide"?: ((...args: any[]) => any) | undefined;
                "onClose-group"?: ((...args: any[]) => any) | undefined;
                "onClose-directive"?: ((...args: any[]) => any) | undefined;
                "onAuto-hide"?: ((...args: any[]) => any) | undefined;
            }>, "disabled" | "delay" | "container" | "positioningDisabled" | "placement" | "triggers" | "hideArrow" | "strategy" | "autoHide" | "shown" | "handleResize" | "instantMove" | "eagerMount" | "computeTransformOrigin">;
            $attrs: {
                [x: string]: unknown;
            };
            $refs: {
                [x: string]: unknown;
            };
            $slots: Readonly<{
                [name: string]: import("vue").Slot<any> | undefined;
            }>;
            $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
            $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null;
            $host: Element | null;
            $emit: (event: "resize" | "show" | "hide" | "update:shown" | "apply-show" | "apply-hide" | "close-group" | "close-directive" | "auto-hide", ...args: any[]) => void;
            $el: any;
            $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
                disabled: BooleanConstructor;
                positioningDisabled: BooleanConstructor;
                placement: {
                    type: PropType<import("floating-vue").Placement>;
                    default: string;
                };
                delay: {
                    type: PropType<string | number | {
                        show: number;
                        hide: number;
                    }>;
                    default: number;
                };
                distance: (StringConstructor | NumberConstructor)[];
                skidding: (StringConstructor | NumberConstructor)[];
                triggers: {
                    type: PropType<import("floating-vue").TriggerEvent[]>;
                    default: () => string[];
                };
                hideArrow: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                showTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                hideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                popperTriggers: PropType<import("floating-vue").TriggerEvent[]>;
                popperShowTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                popperHideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
                container: {
                    type: (BooleanConstructor | ObjectConstructor | StringConstructor)[];
                    default: string;
                };
                boundary: (ObjectConstructor | StringConstructor)[];
                strategy: {
                    type: PropType<"absolute" | "fixed">;
                    default: string;
                };
                autoHide: {
                    type: PropType<boolean | ((event: Event) => boolean)>;
                    default: boolean;
                };
                shown: BooleanConstructor;
                handleResize: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                instantMove: BooleanConstructor;
                eagerMount: BooleanConstructor;
                popperClass: (ArrayConstructor | ObjectConstructor | StringConstructor)[];
                computeTransformOrigin: BooleanConstructor;
            }>> & Readonly<{
                onResize?: ((...args: any[]) => any) | undefined;
                onShow?: ((...args: any[]) => any) | undefined;
                onHide?: ((...args: any[]) => any) | undefined;
                "onUpdate:shown"?: ((...args: any[]) => any) | undefined;
                "onApply-show"?: ((...args: any[]) => any) | undefined;
                "onApply-hide"?: ((...args: any[]) => any) | undefined;
                "onClose-group"?: ((...args: any[]) => any) | undefined;
                "onClose-directive"?: ((...args: any[]) => any) | undefined;
                "onAuto-hide"?: ((...args: any[]) => any) | undefined;
            }>, {
                show: () => void;
                hide: () => void;
                toggle: () => void;
                isOpen: Ref<boolean, boolean>;
            }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("resize" | "show" | "hide" | "update:shown" | "apply-show" | "apply-hide" | "close-group" | "close-directive" | "auto-hide")[], string, {
                disabled: boolean;
                delay: string | number | {
                    show: number;
                    hide: number;
                };
                container: string | boolean | Record<string, any>;
                positioningDisabled: boolean;
                placement: import("floating-vue").Placement;
                triggers: import("floating-vue").TriggerEvent[];
                hideArrow: boolean;
                strategy: "absolute" | "fixed";
                autoHide: boolean | ((event: Event) => boolean);
                shown: boolean;
                handleResize: boolean;
                instantMove: boolean;
                eagerMount: boolean;
                computeTransformOrigin: boolean;
            }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & {
                beforeCreate?: ((() => void) | (() => void)[]) | undefined;
                created?: ((() => void) | (() => void)[]) | undefined;
                beforeMount?: ((() => void) | (() => void)[]) | undefined;
                mounted?: ((() => void) | (() => void)[]) | undefined;
                beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
                updated?: ((() => void) | (() => void)[]) | undefined;
                activated?: ((() => void) | (() => void)[]) | undefined;
                deactivated?: ((() => void) | (() => void)[]) | undefined;
                beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
                beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
                destroyed?: ((() => void) | (() => void)[]) | undefined;
                unmounted?: ((() => void) | (() => void)[]) | undefined;
                renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
                renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
                errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined;
            };
            $forceUpdate: () => void;
            $nextTick: typeof nextTick;
            $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
        } & Readonly<{
            disabled: boolean;
            delay: string | number | {
                show: number;
                hide: number;
            };
            container: string | boolean | Record<string, any>;
            positioningDisabled: boolean;
            placement: import("floating-vue").Placement;
            triggers: import("floating-vue").TriggerEvent[];
            hideArrow: boolean;
            strategy: "absolute" | "fixed";
            autoHide: boolean | ((event: Event) => boolean);
            shown: boolean;
            handleResize: boolean;
            instantMove: boolean;
            eagerMount: boolean;
            computeTransformOrigin: boolean;
        }> & Omit<Readonly<import("vue").ExtractPropTypes<{
            disabled: BooleanConstructor;
            positioningDisabled: BooleanConstructor;
            placement: {
                type: PropType<import("floating-vue").Placement>;
                default: string;
            };
            delay: {
                type: PropType<string | number | {
                    show: number;
                    hide: number;
                }>;
                default: number;
            };
            distance: (StringConstructor | NumberConstructor)[];
            skidding: (StringConstructor | NumberConstructor)[];
            triggers: {
                type: PropType<import("floating-vue").TriggerEvent[]>;
                default: () => string[];
            };
            hideArrow: {
                type: BooleanConstructor;
                default: boolean;
            };
            showTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
            hideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
            popperTriggers: PropType<import("floating-vue").TriggerEvent[]>;
            popperShowTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
            popperHideTriggers: PropType<import("floating-vue").TriggerEvent[] | ((triggers: import("floating-vue").TriggerEvent[]) => import("floating-vue").TriggerEvent[])>;
            container: {
                type: (BooleanConstructor | ObjectConstructor | StringConstructor)[];
                default: string;
            };
            boundary: (ObjectConstructor | StringConstructor)[];
            strategy: {
                type: PropType<"absolute" | "fixed">;
                default: string;
            };
            autoHide: {
                type: PropType<boolean | ((event: Event) => boolean)>;
                default: boolean;
            };
            shown: BooleanConstructor;
            handleResize: {
                type: BooleanConstructor;
                default: boolean;
            };
            instantMove: BooleanConstructor;
            eagerMount: BooleanConstructor;
            popperClass: (ArrayConstructor | ObjectConstructor | StringConstructor)[];
            computeTransformOrigin: BooleanConstructor;
        }>> & Readonly<{
            onResize?: ((...args: any[]) => any) | undefined;
            onShow?: ((...args: any[]) => any) | undefined;
            onHide?: ((...args: any[]) => any) | undefined;
            "onUpdate:shown"?: ((...args: any[]) => any) | undefined;
            "onApply-show"?: ((...args: any[]) => any) | undefined;
            "onApply-hide"?: ((...args: any[]) => any) | undefined;
            "onClose-group"?: ((...args: any[]) => any) | undefined;
            "onClose-directive"?: ((...args: any[]) => any) | undefined;
            "onAuto-hide"?: ((...args: any[]) => any) | undefined;
        }>, "toggle" | "show" | "hide" | "isOpen" | ("disabled" | "delay" | "container" | "positioningDisabled" | "placement" | "triggers" | "hideArrow" | "strategy" | "autoHide" | "shown" | "handleResize" | "instantMove" | "eagerMount" | "computeTransformOrigin")> & import("vue").ShallowUnwrapRef<{
            show: () => void;
            hide: () => void;
            toggle: () => void;
            isOpen: Ref<boolean, boolean>;
        }> & {} & import("vue").ComponentCustomProperties & {} & {
            $slots: {
                default?(_: {}): any;
                content?(_: {}): any;
            };
        }) | null;
        selected: any;
        disabled: boolean;
        label: string;
    }): any;
    "tag-prefix"?(_: {
        item: SelectOption | undefined;
    }): any;
    "content-header"?(_: {}): any;
    prefix?(_: {
        item: {
            value: string | number;
            label: string;
            active: boolean;
            prefix: string | undefined;
            suffix: string | undefined;
            disabled: boolean | undefined;
            iconRight: string | undefined;
            keepOpenOnClick: boolean | undefined;
            onClick: () => void;
        };
    }): any;
    label?(_: {
        item: {
            value: string | number;
            label: string;
            active: boolean;
            prefix: string | undefined;
            suffix: string | undefined;
            disabled: boolean | undefined;
            iconRight: string | undefined;
            keepOpenOnClick: boolean | undefined;
            onClick: () => void;
        };
    }): any;
    suffix?(_: {
        item: {
            value: string | number;
            label: string;
            active: boolean;
            prefix: string | undefined;
            suffix: string | undefined;
            disabled: boolean | undefined;
            iconRight: string | undefined;
            keepOpenOnClick: boolean | undefined;
            onClick: () => void;
        };
    }): any;
    "content-footer"?(_: {}): any;
    icon?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
