import React__default from 'react';

type ID = string;
interface Item {
    name: string;
    id: ID;
}
interface TagSelectorProps<T extends Item> {
    options?: T[];
    selected?: ID[];
    placeholder?: string;
    disabled?: boolean;
    maxCount?: number;
    style?: React__default.CSSProperties;
    size?: 'large' | 'medium' | 'small';
    readOnly?: boolean;
    error?: boolean;
    onChange?: (selected: ID[]) => void;
    tagRender?: (item: T, onClickDelete?: () => void) => React__default.ReactNode;
    DropdownContainer?: DropdownContainer<T>;
    open?: boolean;
    dropdownItemRender?: (item: T) => React__default.ReactNode;
}
type DropdownContainer<T> = (props: {
    items: T[];
    children: React__default.ReactNode;
    currentItem?: T;
}) => React__default.ReactNode;
declare function TagSelector<T extends Item>(props: TagSelectorProps<T>): React__default.ReactNode;

export { TagSelector, type TagSelectorProps };
