import { AbsoluteIconContainerProps } from '../icon/itlab-absolute-icon-container.vue';
import { SelectableCollection, SelectableData } from '../../models';
import { Icon } from 'itlab-icons';
type __VLS_Props = {
    icon?: Icon;
    iconContainer?: Omit<AbsoluteIconContainerProps, 'icon'>;
    disabled?: boolean;
    placeholder?: string;
    suggestions?: SelectableData<string>[] | SelectableCollection<string>;
    suggestionsPosition?: 'floating' | 'static';
    whitelist?: SelectableData<string>[] | SelectableCollection<string>;
    onTokenRestore?: (token: string | undefined) => string | undefined;
};
type __VLS_ModelProps = {
    'token'?: string;
    modelValue: string[];
};
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
declare const __VLS_export: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "update:modelValue": (value: string[]) => any;
    "update:token": (value: string) => any;
} & {
    click: (data: MouseEvent) => any;
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
    onClick?: ((data: MouseEvent) => any) | undefined;
    "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
    "onUpdate:token"?: ((value: string) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
declare const _default: typeof __VLS_export;
export default _default;
