/**
 * Types
 */
export interface DsgIconItem {
    id: string | number;
    primaryText: string;
    secondaryText?: string;
    iconUrl?: string | null;
    [key: string]: unknown;
}
/**
 * Props
 */
type __VLS_Props = {
    modelValue: DsgIconItem | DsgIconItem[] | null;
    options?: DsgIconItem[];
    endpoint?: string;
    queryParam?: string;
    extraParams?: Record<string, string | number | boolean>;
    method?: "GET" | "POST";
    minChars?: number;
    delay?: number;
    multiple?: boolean;
    trackBy?: keyof DsgIconItem | string;
    labelKey?: keyof DsgIconItem | string;
    secondaryTextKey?: keyof DsgIconItem | string;
    iconKey?: keyof DsgIconItem | string;
    placeholder?: string;
    clearOnSelect?: boolean;
    disabled?: boolean;
    selectLabel?: string;
    selectedLabel?: string;
    hideSelectedLabel?: boolean;
};
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    search: (query: string) => any;
    error: (err: unknown) => any;
    "update:modelValue": (value: DsgIconItem | DsgIconItem[] | null) => any;
    change: (value: DsgIconItem | DsgIconItem[] | null) => any;
    loaded: (items: DsgIconItem[]) => any;
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
    onSearch?: ((query: string) => any) | undefined;
    onError?: ((err: unknown) => any) | undefined;
    "onUpdate:modelValue"?: ((value: DsgIconItem | DsgIconItem[] | null) => any) | undefined;
    onChange?: ((value: DsgIconItem | DsgIconItem[] | null) => any) | undefined;
    onLoaded?: ((items: DsgIconItem[]) => any) | undefined;
}>, {
    placeholder: string;
    queryParam: string;
    method: "GET" | "POST";
    minChars: number;
    delay: number;
    multiple: boolean;
    trackBy: keyof DsgIconItem | string;
    labelKey: keyof DsgIconItem | string;
    secondaryTextKey: keyof DsgIconItem | string;
    iconKey: keyof DsgIconItem | string;
    clearOnSelect: boolean;
    disabled: boolean;
    selectLabel: string;
    selectedLabel: string;
    hideSelectedLabel: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
export default _default;
