import { AutocompleteFetchSuggestions } from 'element-plus';
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    modelValue: import("vue").PropType<string>;
    id: {
        type: import("vue").PropType<string>;
        default: undefined;
    };
    name: {
        type: import("vue").PropType<string>;
        default: undefined;
    };
    size: {
        type: import("vue").PropType<"" | "small" | "default" | "large">;
        default: string;
    };
    color: {
        type: import("vue").PropType<"" | "primary" | "secondary" | "destructive" | "success" | "warning" | "active" | "primary-alternative">;
        default: string;
    };
    disabled: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    teleported: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    placeholder: {
        type: import("vue").PropType<string>;
        default: string;
    };
    fetchSuggestions: {
        type: import("vue").PropType<AutocompleteFetchSuggestions>;
        required: true;
    };
    valueKey: {
        type: import("vue").PropType<string>;
        default: string;
    };
    debounce: {
        type: import("vue").PropType<number>;
        default: number;
    };
    clearable: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    highlightFirstItem: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    fitInputWidth: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    triggerOnFocus: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    popperClass: {
        type: import("vue").PropType<string>;
        default: string;
    };
    dataTestName: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIconColor: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIcon: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIconSize: {
        type: import("vue").PropType<string>;
        default: string;
    };
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (pl: string) => void;
    select: (pl: any) => void;
    change: (pl: string) => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    modelValue: import("vue").PropType<string>;
    id: {
        type: import("vue").PropType<string>;
        default: undefined;
    };
    name: {
        type: import("vue").PropType<string>;
        default: undefined;
    };
    size: {
        type: import("vue").PropType<"" | "small" | "default" | "large">;
        default: string;
    };
    color: {
        type: import("vue").PropType<"" | "primary" | "secondary" | "destructive" | "success" | "warning" | "active" | "primary-alternative">;
        default: string;
    };
    disabled: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    teleported: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    placeholder: {
        type: import("vue").PropType<string>;
        default: string;
    };
    fetchSuggestions: {
        type: import("vue").PropType<AutocompleteFetchSuggestions>;
        required: true;
    };
    valueKey: {
        type: import("vue").PropType<string>;
        default: string;
    };
    debounce: {
        type: import("vue").PropType<number>;
        default: number;
    };
    clearable: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    highlightFirstItem: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    fitInputWidth: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    triggerOnFocus: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    popperClass: {
        type: import("vue").PropType<string>;
        default: string;
    };
    dataTestName: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIconColor: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIcon: {
        type: import("vue").PropType<string>;
        default: string;
    };
    prefixIconSize: {
        type: import("vue").PropType<string>;
        default: string;
    };
}>> & Readonly<{
    "onUpdate:modelValue"?: ((pl: string) => any) | undefined;
    onChange?: ((pl: string) => any) | undefined;
    onSelect?: ((pl: any) => any) | undefined;
}>, {
    id: string;
    name: string;
    size: "" | "small" | "default" | "large";
    color: "" | "primary" | "secondary" | "destructive" | "success" | "warning" | "active" | "primary-alternative";
    disabled: boolean;
    teleported: boolean;
    placeholder: string;
    valueKey: string;
    debounce: number;
    clearable: boolean;
    highlightFirstItem: boolean;
    fitInputWidth: boolean;
    triggerOnFocus: boolean;
    popperClass: string;
    dataTestName: string;
    prefixIconColor: string;
    prefixIcon: string;
    prefixIconSize: string;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
    "prefix-icon"?(_: {}): any;
    suffix?(_: {}): any;
    option?(_: {
        item: Record<string, any>;
    }): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
