UNPKG

vuestic-ui

Version:
2,099 lines 79 kB
export { VaSelectOptionList } from './components/VaSelectOptionList';
export { VaSelectOption } from './components/VaSelectOption';
export declare const VaSelect: {
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: undefined;
        };
        placement: {
            default: string;
            type: import("vue").PropType<NonNullable<import("../../composables").PlacementWithAlias | undefined>>;
            required: true;
        };
        keepAnchorWidth: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        offset: {
            default: import("../va-dropdown/types").DropdownOffsetProp;
            type: import("vue").PropType<NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>>;
            required: true;
        };
        closeOnContentClick: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        trigger: {
            default: () => readonly ["click", "right-click", "space", "enter"];
            type: import("vue").PropType<NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>>;
            required: true;
        };
        allowCreate: {
            type: import("vue").PropType<boolean | "unique">;
            default: boolean;
            validator: (mode: string | boolean) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        multiple: {
            type: BooleanConstructor;
            default: boolean;
        };
        searchable: {
            type: BooleanConstructor;
            default: boolean;
        };
        width: {
            type: StringConstructor;
            default: string;
        };
        maxHeight: {
            type: StringConstructor;
            default: string;
        };
        noOptionsText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        hideSelected: {
            type: BooleanConstructor;
            default: boolean;
        };
        tabindex: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        virtualScroller: {
            type: BooleanConstructor;
            default: boolean;
        };
        selectedTopShown: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightMatchedText: {
            type: BooleanConstructor;
            default: boolean;
        };
        minSearchChars: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoSelectFirstOption: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        searchPlaceholderText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSearchLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaClearLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        search: {
            type: StringConstructor;
            default: undefined;
        };
        searchFn: {
            type: import("vue").PropType<(search: string, option: import("./types").SelectOption) => boolean>;
            default: undefined;
        };
        clearValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: string;
        };
        closeOnChange: {
            type: BooleanConstructor;
            default: null;
        };
        isOpen: {
            type: BooleanConstructor;
            default: undefined;
        };
        onClose: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchor: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        "onUpdate:modelValue": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        target: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        disabled: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onOpen: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        role: {
            type: import("vue").PropType<NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>>;
            required: true;
            default: import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined;
        };
        "onAnchor-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-right-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onContent-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onFocus-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-dblclick": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchorSelector: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        readonly: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnClickOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnFocusOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnAnchorClick: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        hoverOverTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        hoverOutTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        isContentHoverable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        verticalScrollOnOverflow: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        cursor: {
            type: import("vue").PropType<NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>>;
            required: true;
            default: boolean | import("../va-dropdown/types").CursorAnchor | undefined;
        };
        autoPlacement: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        stickToEdges: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        teleport: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        contentClass: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        autocomplete: {
            type: BooleanConstructor;
            default: boolean;
        };
        separator: {
            type: StringConstructor;
            default: string;
        };
        delay: {
            type: NumberConstructor;
            default: number;
            validator: (value: number) => boolean;
        };
        dropdownIcon: {
            type: import("vue").PropType<string | import("./types").SelectDropdownIcon>;
            default: () => import("./types").SelectDropdownIcon;
            validator: (value: string | import("./types").SelectDropdownIcon) => boolean;
        };
        maxVisibleOptions: {
            type: NumberConstructor;
            default: number;
        };
        clearable: {
            type: BooleanConstructor;
            default: boolean;
        };
        clearableIcon: {
            type: StringConstructor;
            default: string;
        };
        maxSelections: {
            type: (StringConstructor | NumberConstructor)[];
            default: undefined;
        };
        loading: {
            type: BooleanConstructor;
            default: boolean;
        };
        rules: {
            type: import("vue").PropType<import("../../composables").ValidationRule<import("./types").SelectOption>[]>;
            default: () => any;
            required: false;
        };
        error: {
            type: BooleanConstructor;
            default: undefined;
        };
        name: {
            type: StringConstructor;
            default: undefined;
        };
        success: {
            type: BooleanConstructor;
            default: boolean;
        };
        dirty: {
            type: BooleanConstructor;
            default: boolean;
        };
        errorMessages: {
            type: import("vue").PropType<string | string[]>;
            default: undefined;
        };
        errorCount: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        messages: {
            type: import("vue").PropType<string | string[]>;
            default: () => never[];
        };
        immediateValidation: {
            type: BooleanConstructor;
            default: boolean;
        };
        options: {
            type: import("vue").PropType<import("./types").SelectOption[]>;
            default: () => never[];
        };
        textBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        valueBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        trackBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        disabledBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        groupBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        preset: {
            type: import("vue").PropType<import("../../composables").PresetPropValue>;
            default: undefined;
        };
        label: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onClick: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        requiredMark: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        "onClick-prepend": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-prepend-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-field": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        counter: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        maxLength: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        background: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        innerLabel: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        inputAriaLabel: {
            type: import("vue").PropType<NonNullable<import("../../composables").TranslationProp | undefined>>;
            required: true;
            default: import("../../composables").TranslationProp | undefined;
        };
        inputAriaLabelledby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        inputAriaDescribedby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
    }>>, {
        focus: () => void;
        blur: () => void;
        reset: () => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        [x: string]: (...args: any[]) => void;
    }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: undefined;
        };
        placement: {
            default: string;
            type: import("vue").PropType<NonNullable<import("../../composables").PlacementWithAlias | undefined>>;
            required: true;
        };
        keepAnchorWidth: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        offset: {
            default: import("../va-dropdown/types").DropdownOffsetProp;
            type: import("vue").PropType<NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>>;
            required: true;
        };
        closeOnContentClick: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        trigger: {
            default: () => readonly ["click", "right-click", "space", "enter"];
            type: import("vue").PropType<NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>>;
            required: true;
        };
        allowCreate: {
            type: import("vue").PropType<boolean | "unique">;
            default: boolean;
            validator: (mode: string | boolean) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        multiple: {
            type: BooleanConstructor;
            default: boolean;
        };
        searchable: {
            type: BooleanConstructor;
            default: boolean;
        };
        width: {
            type: StringConstructor;
            default: string;
        };
        maxHeight: {
            type: StringConstructor;
            default: string;
        };
        noOptionsText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        hideSelected: {
            type: BooleanConstructor;
            default: boolean;
        };
        tabindex: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        virtualScroller: {
            type: BooleanConstructor;
            default: boolean;
        };
        selectedTopShown: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightMatchedText: {
            type: BooleanConstructor;
            default: boolean;
        };
        minSearchChars: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoSelectFirstOption: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        searchPlaceholderText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSearchLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaClearLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        search: {
            type: StringConstructor;
            default: undefined;
        };
        searchFn: {
            type: import("vue").PropType<(search: string, option: import("./types").SelectOption) => boolean>;
            default: undefined;
        };
        clearValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: string;
        };
        closeOnChange: {
            type: BooleanConstructor;
            default: null;
        };
        isOpen: {
            type: BooleanConstructor;
            default: undefined;
        };
        onClose: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchor: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        "onUpdate:modelValue": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        target: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        disabled: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onOpen: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        role: {
            type: import("vue").PropType<NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>>;
            required: true;
            default: import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined;
        };
        "onAnchor-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-right-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onContent-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onFocus-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-dblclick": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchorSelector: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        readonly: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnClickOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnFocusOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnAnchorClick: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        hoverOverTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        hoverOutTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        isContentHoverable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        verticalScrollOnOverflow: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        cursor: {
            type: import("vue").PropType<NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>>;
            required: true;
            default: boolean | import("../va-dropdown/types").CursorAnchor | undefined;
        };
        autoPlacement: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        stickToEdges: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        teleport: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        contentClass: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        autocomplete: {
            type: BooleanConstructor;
            default: boolean;
        };
        separator: {
            type: StringConstructor;
            default: string;
        };
        delay: {
            type: NumberConstructor;
            default: number;
            validator: (value: number) => boolean;
        };
        dropdownIcon: {
            type: import("vue").PropType<string | import("./types").SelectDropdownIcon>;
            default: () => import("./types").SelectDropdownIcon;
            validator: (value: string | import("./types").SelectDropdownIcon) => boolean;
        };
        maxVisibleOptions: {
            type: NumberConstructor;
            default: number;
        };
        clearable: {
            type: BooleanConstructor;
            default: boolean;
        };
        clearableIcon: {
            type: StringConstructor;
            default: string;
        };
        maxSelections: {
            type: (StringConstructor | NumberConstructor)[];
            default: undefined;
        };
        loading: {
            type: BooleanConstructor;
            default: boolean;
        };
        rules: {
            type: import("vue").PropType<import("../../composables").ValidationRule<import("./types").SelectOption>[]>;
            default: () => any;
            required: false;
        };
        error: {
            type: BooleanConstructor;
            default: undefined;
        };
        name: {
            type: StringConstructor;
            default: undefined;
        };
        success: {
            type: BooleanConstructor;
            default: boolean;
        };
        dirty: {
            type: BooleanConstructor;
            default: boolean;
        };
        errorMessages: {
            type: import("vue").PropType<string | string[]>;
            default: undefined;
        };
        errorCount: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        messages: {
            type: import("vue").PropType<string | string[]>;
            default: () => never[];
        };
        immediateValidation: {
            type: BooleanConstructor;
            default: boolean;
        };
        options: {
            type: import("vue").PropType<import("./types").SelectOption[]>;
            default: () => never[];
        };
        textBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        valueBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        trackBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        disabledBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        groupBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        preset: {
            type: import("vue").PropType<import("../../composables").PresetPropValue>;
            default: undefined;
        };
        label: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onClick: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        requiredMark: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        "onClick-prepend": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-prepend-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-field": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        counter: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        maxLength: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        background: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        innerLabel: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        inputAriaLabel: {
            type: import("vue").PropType<NonNullable<import("../../composables").TranslationProp | undefined>>;
            required: true;
            default: import("../../composables").TranslationProp | undefined;
        };
        inputAriaLabelledby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        inputAriaDescribedby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
    }>>, {
        label: string;
        search: string;
        error: boolean;
        onClick: (...args: any[]) => any;
        onClose: (...args: any[]) => any;
        anchor: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        options: import("./types").SelectOption[];
        "onUpdate:modelValue": (...args: any[]) => any;
        modelValue: import("./types").SelectOption | import("./types").SelectOption[];
        multiple: boolean;
        preset: import("../../composables").PresetPropValue;
        target: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        color: string;
        name: string;
        loading: boolean;
        success: boolean;
        disabled: NonNullable<boolean | undefined>;
        onOpen: (...args: any[]) => any;
        "onClick-outside": (...args: any[]) => any;
        maxHeight: string;
        ariaLabel: import("../../composables").TranslationProp;
        placement: NonNullable<import("../../composables").PlacementWithAlias | undefined>;
        offset: NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>;
        separator: string;
        role: NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>;
        "onAnchor-click": (...args: any[]) => any;
        "onAnchor-right-click": (...args: any[]) => any;
        "onContent-click": (...args: any[]) => any;
        "onFocus-outside": (...args: any[]) => any;
        "onAnchor-dblclick": (...args: any[]) => any;
        anchorSelector: string;
        trigger: NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>;
        readonly: NonNullable<boolean | undefined>;
        closeOnClickOutside: NonNullable<boolean | undefined>;
        closeOnFocusOutside: NonNullable<boolean | undefined>;
        closeOnAnchorClick: NonNullable<boolean | undefined>;
        closeOnContentClick: NonNullable<boolean | undefined>;
        hoverOverTimeout: NonNullable<string | number | undefined>;
        hoverOutTimeout: NonNullable<string | number | undefined>;
        isContentHoverable: NonNullable<boolean | undefined>;
        keepAnchorWidth: NonNullable<boolean | undefined>;
        verticalScrollOnOverflow: NonNullable<boolean | undefined>;
        cursor: NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>;
        autoPlacement: NonNullable<boolean | undefined>;
        stickToEdges: NonNullable<boolean | undefined>;
        teleport: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        contentClass: string;
        width: string;
        textBy: import("../../composables").StringOrFunction;
        valueBy: import("../../composables").StringOrFunction;
        trackBy: import("../../composables").StringOrFunction;
        disabledBy: import("../../composables").StringOrFunction;
        groupBy: import("../../composables").StringOrFunction;
        rules: import("../../composables").ValidationRule<import("./types").SelectOption>[];
        dirty: boolean;
        errorMessages: string | string[];
        errorCount: string | number;
        messages: string | string[];
        immediateValidation: boolean;
        requiredMark: NonNullable<boolean | undefined>;
        "onClick-prepend": (...args: any[]) => any;
        "onClick-append": (...args: any[]) => any;
        "onClick-prepend-inner": (...args: any[]) => any;
        "onClick-append-inner": (...args: any[]) => any;
        "onClick-field": (...args: any[]) => any;
        counter: NonNullable<boolean | undefined>;
        maxLength: NonNullable<string | number | undefined>;
        placeholder: string;
        background: string;
        innerLabel: NonNullable<boolean | undefined>;
        inputAriaLabel: NonNullable<import("../../composables").TranslationProp | undefined>;
        inputAriaLabelledby: string;
        inputAriaDescribedby: string;
        tabindex: string | number;
        autocomplete: boolean;
        clearable: boolean;
        clearableIcon: string;
        clearValue: import("./types").SelectOption | import("./types").SelectOption[];
        virtualScroller: boolean;
        delay: number;
        closeOnChange: boolean;
        isOpen: boolean;
        allowCreate: boolean | "unique";
        searchable: boolean;
        noOptionsText: import("../../composables").TranslationProp;
        hideSelected: boolean;
        selectedTopShown: boolean;
        highlightMatchedText: boolean;
        minSearchChars: string | number;
        autoSelectFirstOption: boolean;
        searchPlaceholderText: import("../../composables").TranslationProp;
        ariaSearchLabel: import("../../composables").TranslationProp;
        ariaClearLabel: import("../../composables").TranslationProp;
        searchFn: (search: string, option: import("./types").SelectOption) => boolean;
        dropdownIcon: string | import("./types").SelectDropdownIcon;
        maxVisibleOptions: number;
        maxSelections: string | number;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        modelValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: undefined;
        };
        placement: {
            default: string;
            type: import("vue").PropType<NonNullable<import("../../composables").PlacementWithAlias | undefined>>;
            required: true;
        };
        keepAnchorWidth: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        offset: {
            default: import("../va-dropdown/types").DropdownOffsetProp;
            type: import("vue").PropType<NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>>;
            required: true;
        };
        closeOnContentClick: {
            default: boolean;
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
        };
        trigger: {
            default: () => readonly ["click", "right-click", "space", "enter"];
            type: import("vue").PropType<NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>>;
            required: true;
        };
        allowCreate: {
            type: import("vue").PropType<boolean | "unique">;
            default: boolean;
            validator: (mode: string | boolean) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        multiple: {
            type: BooleanConstructor;
            default: boolean;
        };
        searchable: {
            type: BooleanConstructor;
            default: boolean;
        };
        width: {
            type: StringConstructor;
            default: string;
        };
        maxHeight: {
            type: StringConstructor;
            default: string;
        };
        noOptionsText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        hideSelected: {
            type: BooleanConstructor;
            default: boolean;
        };
        tabindex: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        virtualScroller: {
            type: BooleanConstructor;
            default: boolean;
        };
        selectedTopShown: {
            type: BooleanConstructor;
            default: boolean;
        };
        highlightMatchedText: {
            type: BooleanConstructor;
            default: boolean;
        };
        minSearchChars: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoSelectFirstOption: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        searchPlaceholderText: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSearchLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaClearLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        search: {
            type: StringConstructor;
            default: undefined;
        };
        searchFn: {
            type: import("vue").PropType<(search: string, option: import("./types").SelectOption) => boolean>;
            default: undefined;
        };
        clearValue: {
            type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
            default: string;
        };
        closeOnChange: {
            type: BooleanConstructor;
            default: null;
        };
        isOpen: {
            type: BooleanConstructor;
            default: undefined;
        };
        onClose: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchor: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        "onUpdate:modelValue": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        target: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        disabled: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onOpen: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        role: {
            type: import("vue").PropType<NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>>;
            required: true;
            default: import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined;
        };
        "onAnchor-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-right-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onContent-click": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onFocus-outside": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onAnchor-dblclick": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        anchorSelector: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        readonly: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnClickOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnFocusOutside: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        closeOnAnchorClick: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        hoverOverTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        hoverOutTimeout: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        isContentHoverable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        verticalScrollOnOverflow: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        cursor: {
            type: import("vue").PropType<NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>>;
            required: true;
            default: boolean | import("../va-dropdown/types").CursorAnchor | undefined;
        };
        autoPlacement: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        stickToEdges: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        teleport: {
            type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
            required: true;
            default: import("../../composables").MaybeHTMLElementOrSelector;
        };
        contentClass: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        autocomplete: {
            type: BooleanConstructor;
            default: boolean;
        };
        separator: {
            type: StringConstructor;
            default: string;
        };
        delay: {
            type: NumberConstructor;
            default: number;
            validator: (value: number) => boolean;
        };
        dropdownIcon: {
            type: import("vue").PropType<string | import("./types").SelectDropdownIcon>;
            default: () => import("./types").SelectDropdownIcon;
            validator: (value: string | import("./types").SelectDropdownIcon) => boolean;
        };
        maxVisibleOptions: {
            type: NumberConstructor;
            default: number;
        };
        clearable: {
            type: BooleanConstructor;
            default: boolean;
        };
        clearableIcon: {
            type: StringConstructor;
            default: string;
        };
        maxSelections: {
            type: (StringConstructor | NumberConstructor)[];
            default: undefined;
        };
        loading: {
            type: BooleanConstructor;
            default: boolean;
        };
        rules: {
            type: import("vue").PropType<import("../../composables").ValidationRule<import("./types").SelectOption>[]>;
            default: () => any;
            required: false;
        };
        error: {
            type: BooleanConstructor;
            default: undefined;
        };
        name: {
            type: StringConstructor;
            default: undefined;
        };
        success: {
            type: BooleanConstructor;
            default: boolean;
        };
        dirty: {
            type: BooleanConstructor;
            default: boolean;
        };
        errorMessages: {
            type: import("vue").PropType<string | string[]>;
            default: undefined;
        };
        errorCount: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        messages: {
            type: import("vue").PropType<string | string[]>;
            default: () => never[];
        };
        immediateValidation: {
            type: BooleanConstructor;
            default: boolean;
        };
        options: {
            type: import("vue").PropType<import("./types").SelectOption[]>;
            default: () => never[];
        };
        textBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        valueBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        trackBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        disabledBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        groupBy: {
            type: import("vue").PropType<import("../../composables").StringOrFunction>;
            default: string;
        };
        preset: {
            type: import("vue").PropType<import("../../composables").PresetPropValue>;
            default: undefined;
        };
        label: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onClick: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        requiredMark: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        "onClick-prepend": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-prepend-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-append-inner": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        "onClick-field": {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        counter: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        maxLength: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        background: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        innerLabel: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        inputAriaLabel: {
            type: import("vue").PropType<NonNullable<import("../../composables").TranslationProp | undefined>>;
            required: true;
            default: import("../../composables").TranslationProp | undefined;
        };
        inputAriaLabelledby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        inputAriaDescribedby: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
    }>>, {
        focus: () => void;
        blur: () => void;
        reset: () => void;
    }, {}, {}, {}, {
        label: string;
        search: string;
        error: boolean;
        onClick: (...args: any[]) => any;
        onClose: (...args: any[]) => any;
        anchor: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        options: import("./types").SelectOption[];
        "onUpdate:modelValue": (...args: any[]) => any;
        modelValue: import("./types").SelectOption | import("./types").SelectOption[];
        multiple: boolean;
        preset: import("../../composables").PresetPropValue;
        target: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        color: string;
        name: string;
        loading: boolean;
        success: boolean;
        disabled: NonNullable<boolean | undefined>;
        onOpen: (...args: any[]) => any;
        "onClick-outside": (...args: any[]) => any;
        maxHeight: string;
        ariaLabel: import("../../composables").TranslationProp;
        placement: NonNullable<import("../../composables").PlacementWithAlias | undefined>;
        offset: NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>;
        separator: string;
        role: NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>;
        "onAnchor-click": (...args: any[]) => any;
        "onAnchor-right-click": (...args: any[]) => any;
        "onContent-click": (...args: any[]) => any;
        "onFocus-outside": (...args: any[]) => any;
        "onAnchor-dblclick": (...args: any[]) => any;
        anchorSelector: string;
        trigger: NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>;
        readonly: NonNullable<boolean | undefined>;
        closeOnClickOutside: NonNullable<boolean | undefined>;
        closeOnFocusOutside: NonNullable<boolean | undefined>;
        closeOnAnchorClick: NonNullable<boolean | undefined>;
        closeOnContentClick: NonNullable<boolean | undefined>;
        hoverOverTimeout: NonNullable<string | number | undefined>;
        hoverOutTimeout: NonNullable<string | number | undefined>;
        isContentHoverable: NonNullable<boolean | undefined>;
        keepAnchorWidth: NonNullable<boolean | undefined>;
        verticalScrollOnOverflow: NonNullable<boolean | undefined>;
        cursor: NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>;
        autoPlacement: NonNullable<boolean | undefined>;
        stickToEdges: NonNullable<boolean | undefined>;
        teleport: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
        contentClass: string;
        width: string;
        textBy: import("../../composables").StringOrFunction;
        valueBy: import("../../composables").StringOrFunction;
        trackBy: import("../../composables").StringOrFunction;
        disabledBy: import("../../composables").StringOrFunction;
        groupBy: import("../../composables").StringOrFunction;
        rules: import("../../composables").ValidationRule<import("./types").SelectOption>[];
        dirty: boolean;
        errorMessages: string | string[];
        errorCount: string | number;
        messages: string | string[];
        immediateValidation: boolean;
        requiredMark: NonNullable<boolean | undefined>;
        "onClick-prepend": (...args: any[]) => any;
        "onClick-append": (...args: any[]) => any;
        "onClick-prepend-inner": (...args: any[]) => any;
        "onClick-append-inner": (...args: any[]) => any;
        "onClick-field": (...args: any[]) => any;
        counter: NonNullable<boolean | undefined>;
        maxLength: NonNullable<string | number | undefined>;
        placeholder: string;
        background: string;
        innerLabel: NonNullable<boolean | undefined>;
        inputAriaLabel: NonNullable<import("../../composables").TranslationProp | undefined>;
        inputAriaLabelledby: string;
        inputAriaDescribedby: string;
        tabindex: string | number;
        autocomplete: boolean;
        clearable: boolean;
        clearableIcon: string;
        clearValue: import("./types").SelectOption | import("./types").SelectOption[];
        virtualScroller: boolean;
        delay: number;
        closeOnChange: boolean;
        isOpen: boolean;
        allowCreate: boolean | "unique";
        searchable: boolean;
        noOptionsText: import("../../composables").TranslationProp;
        hideSelected: boolean;
        selectedTopShown: boolean;
        highlightMatchedText: boolean;
        minSearchChars: string | number;
        autoSelectFirstOption: boolean;
        searchPlaceholderText: import("../../composables").TranslationProp;
        ariaSearchLabel: import("../../composables").TranslationProp;
        ariaClearLabel: import("../../composables").TranslationProp;
        searchFn: (search: string, option: import("./types").SelectOption) => boolean;
        dropdownIcon: string | import("./types").SelectDropdownIcon;
        maxVisibleOptions: number;
        maxSelections: string | number;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    modelValue: {
        type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
        default: undefined;
    };
    placement: {
        default: string;
        type: import("vue").PropType<NonNullable<import("../../composables").PlacementWithAlias | undefined>>;
        required: true;
    };
    keepAnchorWidth: {
        default: boolean;
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
    };
    offset: {
        default: import("../va-dropdown/types").DropdownOffsetProp;
        type: import("vue").PropType<NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>>;
        required: true;
    };
    closeOnContentClick: {
        default: boolean;
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
    };
    trigger: {
        default: () => readonly ["click", "right-click", "space", "enter"];
        type: import("vue").PropType<NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>>;
        required: true;
    };
    allowCreate: {
        type: import("vue").PropType<boolean | "unique">;
        default: boolean;
        validator: (mode: string | boolean) => boolean;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    multiple: {
        type: BooleanConstructor;
        default: boolean;
    };
    searchable: {
        type: BooleanConstructor;
        default: boolean;
    };
    width: {
        type: StringConstructor;
        default: string;
    };
    maxHeight: {
        type: StringConstructor;
        default: string;
    };
    noOptionsText: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    hideSelected: {
        type: BooleanConstructor;
        default: boolean;
    };
    tabindex: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    virtualScroller: {
        type: BooleanConstructor;
        default: boolean;
    };
    selectedTopShown: {
        type: BooleanConstructor;
        default: boolean;
    };
    highlightMatchedText: {
        type: BooleanConstructor;
        default: boolean;
    };
    minSearchChars: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    autoSelectFirstOption: {
        type: BooleanConstructor;
        default: boolean;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
    searchPlaceholderText: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaSearchLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaClearLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    search: {
        type: StringConstructor;
        default: undefined;
    };
    searchFn: {
        type: import("vue").PropType<(search: string, option: import("./types").SelectOption) => boolean>;
        default: undefined;
    };
    clearValue: {
        type: import("vue").PropType<import("./types").SelectOption | import("./types").SelectOption[]>;
        default: string;
    };
    closeOnChange: {
        type: BooleanConstructor;
        default: null;
    };
    isOpen: {
        type: BooleanConstructor;
        default: undefined;
    };
    onClose: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    anchor: {
        type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
        required: true;
        default: import("../../composables").MaybeHTMLElementOrSelector;
    };
    "onUpdate:modelValue": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    target: {
        type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
        required: true;
        default: import("../../composables").MaybeHTMLElementOrSelector;
    };
    disabled: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    onOpen: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onClick-outside": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    role: {
        type: import("vue").PropType<NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>>;
        required: true;
        default: import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined;
    };
    "onAnchor-click": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onAnchor-right-click": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onContent-click": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onFocus-outside": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onAnchor-dblclick": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    anchorSelector: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    readonly: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    closeOnClickOutside: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    closeOnFocusOutside: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    closeOnAnchorClick: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    hoverOverTimeout: {
        type: import("vue").PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    hoverOutTimeout: {
        type: import("vue").PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    isContentHoverable: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    verticalScrollOnOverflow: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    cursor: {
        type: import("vue").PropType<NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>>;
        required: true;
        default: boolean | import("../va-dropdown/types").CursorAnchor | undefined;
    };
    autoPlacement: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    stickToEdges: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    teleport: {
        type: import("vue").PropType<NonNullable<import("../../composables").MaybeHTMLElementOrSelector>>;
        required: true;
        default: import("../../composables").MaybeHTMLElementOrSelector;
    };
    contentClass: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    autocomplete: {
        type: BooleanConstructor;
        default: boolean;
    };
    separator: {
        type: StringConstructor;
        default: string;
    };
    delay: {
        type: NumberConstructor;
        default: number;
        validator: (value: number) => boolean;
    };
    dropdownIcon: {
        type: import("vue").PropType<string | import("./types").SelectDropdownIcon>;
        default: () => import("./types").SelectDropdownIcon;
        validator: (value: string | import("./types").SelectDropdownIcon) => boolean;
    };
    maxVisibleOptions: {
        type: NumberConstructor;
        default: number;
    };
    clearable: {
        type: BooleanConstructor;
        default: boolean;
    };
    clearableIcon: {
        type: StringConstructor;
        default: string;
    };
    maxSelections: {
        type: (StringConstructor | NumberConstructor)[];
        default: undefined;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    rules: {
        type: import("vue").PropType<import("../../composables").ValidationRule<import("./types").SelectOption>[]>;
        default: () => any;
        required: false;
    };
    error: {
        type: BooleanConstructor;
        default: undefined;
    };
    name: {
        type: StringConstructor;
        default: undefined;
    };
    success: {
        type: BooleanConstructor;
        default: boolean;
    };
    dirty: {
        type: BooleanConstructor;
        default: boolean;
    };
    errorMessages: {
        type: import("vue").PropType<string | string[]>;
        default: undefined;
    };
    errorCount: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    messages: {
        type: import("vue").PropType<string | string[]>;
        default: () => never[];
    };
    immediateValidation: {
        type: BooleanConstructor;
        default: boolean;
    };
    options: {
        type: import("vue").PropType<import("./types").SelectOption[]>;
        default: () => never[];
    };
    textBy: {
        type: import("vue").PropType<import("../../composables").StringOrFunction>;
        default: string;
    };
    valueBy: {
        type: import("vue").PropType<import("../../composables").StringOrFunction>;
        default: string;
    };
    trackBy: {
        type: import("vue").PropType<import("../../composables").StringOrFunction>;
        default: string;
    };
    disabledBy: {
        type: import("vue").PropType<import("../../composables").StringOrFunction>;
        default: string;
    };
    groupBy: {
        type: import("vue").PropType<import("../../composables").StringOrFunction>;
        default: string;
    };
    preset: {
        type: import("vue").PropType<import("../../composables").PresetPropValue>;
        default: undefined;
    };
    label: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    onClick: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    requiredMark: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    "onClick-prepend": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onClick-append": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onClick-prepend-inner": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onClick-append-inner": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    "onClick-field": {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    counter: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    maxLength: {
        type: import("vue").PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    background: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    innerLabel: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    inputAriaLabel: {
        type: import("vue").PropType<NonNullable<import("../../composables").TranslationProp | undefined>>;
        required: true;
        default: import("../../composables").TranslationProp | undefined;
    };
    inputAriaLabelledby: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    inputAriaDescribedby: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
}>>, {
    focus: () => void;
    blur: () => void;
    reset: () => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    [x: string]: (...args: any[]) => void;
}, string, {
    label: string;
    search: string;
    error: boolean;
    onClick: (...args: any[]) => any;
    onClose: (...args: any[]) => any;
    anchor: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
    options: import("./types").SelectOption[];
    "onUpdate:modelValue": (...args: any[]) => any;
    modelValue: import("./types").SelectOption | import("./types").SelectOption[];
    multiple: boolean;
    preset: import("../../composables").PresetPropValue;
    target: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
    color: string;
    name: string;
    loading: boolean;
    success: boolean;
    disabled: NonNullable<boolean | undefined>;
    onOpen: (...args: any[]) => any;
    "onClick-outside": (...args: any[]) => any;
    maxHeight: string;
    ariaLabel: import("../../composables").TranslationProp;
    placement: NonNullable<import("../../composables").PlacementWithAlias | undefined>;
    offset: NonNullable<import("../va-dropdown/types").DropdownOffsetProp | undefined>;
    separator: string;
    role: NonNullable<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none"> | undefined>;
    "onAnchor-click": (...args: any[]) => any;
    "onAnchor-right-click": (...args: any[]) => any;
    "onContent-click": (...args: any[]) => any;
    "onFocus-outside": (...args: any[]) => any;
    "onAnchor-dblclick": (...args: any[]) => any;
    anchorSelector: string;
    trigger: NonNullable<import("../va-dropdown/hooks/useDropdownNavigation").Trigger | readonly import("../va-dropdown/hooks/useDropdownNavigation").Trigger[] | undefined>;
    readonly: NonNullable<boolean | undefined>;
    closeOnClickOutside: NonNullable<boolean | undefined>;
    closeOnFocusOutside: NonNullable<boolean | undefined>;
    closeOnAnchorClick: NonNullable<boolean | undefined>;
    closeOnContentClick: NonNullable<boolean | undefined>;
    hoverOverTimeout: NonNullable<string | number | undefined>;
    hoverOutTimeout: NonNullable<string | number | undefined>;
    isContentHoverable: NonNullable<boolean | undefined>;
    keepAnchorWidth: NonNullable<boolean | undefined>;
    verticalScrollOnOverflow: NonNullable<boolean | undefined>;
    cursor: NonNullable<boolean | import("../va-dropdown/types").CursorAnchor | undefined>;
    autoPlacement: NonNullable<boolean | undefined>;
    stickToEdges: NonNullable<boolean | undefined>;
    teleport: NonNullable<import("../../composables").MaybeHTMLElementOrSelector>;
    contentClass: string;
    width: string;
    textBy: import("../../composables").StringOrFunction;
    valueBy: import("../../composables").StringOrFunction;
    trackBy: import("../../composables").StringOrFunction;
    disabledBy: import("../../composables").StringOrFunction;
    groupBy: import("../../composables").StringOrFunction;
    rules: import("../../composables").ValidationRule<import("./types").SelectOption>[];
    dirty: boolean;
    errorMessages: string | string[];
    errorCount: string | number;
    messages: string | string[];
    immediateValidation: boolean;
    requiredMark: NonNullable<boolean | undefined>;
    "onClick-prepend": (...args: any[]) => any;
    "onClick-append": (...args: any[]) => any;
    "onClick-prepend-inner": (...args: any[]) => any;
    "onClick-append-inner": (...args: any[]) => any;
    "onClick-field": (...args: any[]) => any;
    counter: NonNullable<boolean | undefined>;
    maxLength: NonNullable<string | number | undefined>;
    placeholder: string;
    background: string;
    innerLabel: NonNullable<boolean | undefined>;
    inputAriaLabel: NonNullable<import("../../composables").TranslationProp | undefined>;
    inputAriaLabelledby: string;
    inputAriaDescribedby: string;
    tabindex: string | number;
    autocomplete: boolean;
    clearable: boolean;
    clearableIcon: string;
    clearValue: import("./types").SelectOption | import("./types").SelectOption[];
    virtualScroller: boolean;
    delay: number;
    closeOnChange: boolean;
    isOpen: boolean;
    allowCreate: boolean | "unique";
    searchable: boolean;
    noOptionsText: import("../../composables").TranslationProp;
    hideSelected: boolean;
    selectedTopShown: boolean;
    highlightMatchedText: boolean;
    minSearchChars: string | number;
    autoSelectFirstOption: boolean;
    searchPlaceholderText: import("../../composables").TranslationProp;
    ariaSearchLabel: import("../../composables").TranslationProp;
    ariaClearLabel: import("../../composables").TranslationProp;
    searchFn: (search: string, option: import("./types").SelectOption) => boolean;
    dropdownIcon: string | import("./types").SelectDropdownIcon;
    maxVisibleOptions: number;
    maxSelections: string | number;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: Partial<Record<NonNullable<string | number>, (_: any) => any>> & Partial<Record<NonNullable<string | number>, (_: any) => any>> & {
        option?(_: {
            option: import("./types").SelectOption;
            index: number;
            selectOption: (option: import("./types").SelectOption) => void;
        }): any;
        "option-content"?(_: {
            option: import("./types").SelectOption;
            index: number;
        }): any;
    };
});
export * from './types';