import { SelectableCollection, SelectableData } from '../../models';
import { Icon } from 'itlab-icons';
declare const __VLS_export: <TData, TValue extends (TData | undefined) | TData[]>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: import('vue').PublicProps & __VLS_PrettifyLocal<({
        placeholder?: string | TValue | undefined;
        preventUndefined?: boolean;
        search?: boolean | string;
        keepOpen?: boolean;
        isResetable?: boolean;
    } & {
        dataset?: SelectableCollection<TData> | SelectableData<TData>[] | undefined;
    } & {
        label: string;
        icon?: Icon;
        omitDescription?: boolean;
    } & {
        modelValue?: TValue;
    }) & {
        "onUpdate:modelValue"?: ((value: TValue | undefined) => any) | undefined;
    }> & (typeof globalThis extends {
        __VLS_PROPS_FALLBACK: infer P;
    } ? P : {});
    expose: (exposed: {}) => void;
    attrs: any;
    slots: {
        'leading-icon'?: (props: {}) => any;
    } & {
        item?: (props: {}) => any;
    } & {
        'header-start'?: (props: {}) => any;
    } & {
        'search-trailing'?: (props: {}) => any;
    } & {
        'header-end'?: (props: {}) => any;
    } & {
        'default-start'?: (props: {}) => any;
    } & {
        'default-end'?: (props: {}) => any;
    } & {
        'footer-start'?: (props: {}) => any;
    } & {
        'footer-end'?: (props: {}) => any;
    };
    emit: (event: "update:modelValue", value: TValue | undefined) => void;
}>) => import('vue').VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_PrettifyLocal<T> = (T extends any ? {
    [K in keyof T]: T[K];
} : {
    [K in keyof T as K]: T[K];
}) & {};
