import { PropType } from 'vue';
import { LazyLoadConfig, OptionType, OptionValueType } from "../../types/OptionAndConfig.types";
declare const _default: import("vue").DefineComponent<{
    modelValue: {
        type: PropType<OptionType[]>;
        default: () => never[];
    };
    lazyLoadConfig: {
        type: PropType<LazyLoadConfig>;
        default: undefined;
    };
}, unknown, {
    localOptions: OptionType[];
    selectedElementsList: OptionType[];
}, {}, {
    loadData(): Promise<void>;
    deleteSelectedOption(id: number): void;
    onHiddenOptionsDelete(items: OptionValueType[]): void;
    onInputWrapperClick(): void;
    onArrowDown(ev: Event): void;
    onArrowUp(ev: Event): void;
    onEnter(): void;
    loadMore(): void;
    addToSelectedList(option: OptionType): void;
    onDropdownOptionClick(option: OptionType): void;
    onClick(): void;
    onClear(): void;
}, import("vue").DefineComponent<{
    config: {
        type: PropType<import("../../types/OptionAndConfig.types").ConfigType>;
        default: () => import("../../types/OptionAndConfig.types").ConfigType;
    };
    options: {
        type: PropType<OptionType[]>;
        default: () => OptionType[];
    };
}, unknown, unknown, {}, {
    optionKey(option: OptionType, index: number, config: import("../../types/OptionAndConfig.types").ConfigType): import("../../types/VueGeneric.types").KeyAttributeType;
    optionValue(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): OptionValueType;
    optionLabel(option: OptionType | undefined, config: import("../../types/OptionAndConfig.types").ConfigType): string;
    optionIcon(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): string;
    optionDisabled(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): boolean;
    optionIconColorHex(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): string;
    optionSearchKey(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): string;
    optionClass(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): string | [string];
    optionStyle(option: OptionType, config: import("../../types/OptionAndConfig.types").ConfigType): string | {
        [key: string]: unknown;
    };
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    config: {
        type: PropType<import("../../types/OptionAndConfig.types").ConfigType>;
        default: () => import("../../types/OptionAndConfig.types").ConfigType;
    };
    options: {
        type: PropType<OptionType[]>;
        default: () => OptionType[];
    };
}>>, {
    config: import("../../types/OptionAndConfig.types").ConfigType;
    options: OptionType[];
}> | import("vue").DefineComponent<{
    noDataText: {
        type: StringConstructor;
        default: string;
    };
    maxWidth: {
        type: StringConstructor;
        default: string;
    };
    dataTestName: {
        type: StringConstructor;
        default: string;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
}, unknown, {
    lazyLoad: {
        total: number;
        page: number;
    };
    open: boolean;
    searchQuery: string;
    LOAD_MORE_BLOCK: HTMLElement;
    selectedElement: string;
    loading: boolean;
    keyup_selected: number;
}, {
    noDataMessage(): string;
}, {
    fixScrolling(): void;
    closeDropdown(): void;
    handleNavigate(): void;
    onBlur(): void;
    onChange(): void;
    onFocus(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "onblur" | "onchange" | "onfocus")[], "update:modelValue" | "onblur" | "onchange" | "onfocus", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    noDataText: {
        type: StringConstructor;
        default: string;
    };
    maxWidth: {
        type: StringConstructor;
        default: string;
    };
    dataTestName: {
        type: StringConstructor;
        default: string;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    onOnblur?: ((...args: any[]) => any) | undefined;
    onOnchange?: ((...args: any[]) => any) | undefined;
    onOnfocus?: ((...args: any[]) => any) | undefined;
}, {
    noDataText: string;
    maxWidth: string;
    dataTestName: string;
    placeholder: string;
}>, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    modelValue: {
        type: PropType<OptionType[]>;
        default: () => never[];
    };
    lazyLoadConfig: {
        type: PropType<LazyLoadConfig>;
        default: undefined;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}, {
    modelValue: OptionType[];
    lazyLoadConfig: LazyLoadConfig;
}>;
export default _default;
