import { type DropdownGroupOption } from "../Dropdown.types";
import { type BaseListItemData } from "../../../BaseListItem";
declare function useDropdownMultiCombobox<T extends BaseListItemData<Record<string, unknown>>>(options: DropdownGroupOption<T>, selectedItems: T[], setSelectedItems: (items: T[]) => void, isMenuOpen: boolean, autoFocus?: boolean, defaultValue?: T[], value?: T[], inputValueProp?: string, onChange?: (options: T[]) => void, onInputChange?: (value: string | null) => void, onMenuOpen?: () => void, onMenuClose?: () => void, onOptionSelect?: (option: T) => void, filterOption?: (option: T, inputValue: string) => boolean, showSelectedOptions?: boolean, id?: string): {
    isOpen: boolean;
    inputValue: string;
    highlightedIndex: number;
    selectedItems: T[];
    getSelectedItemProps: <Options>(options: import("downshift").UseMultipleSelectionGetSelectedItemPropsOptions<T> & Options) => Omit<import("downshift").Overwrite<import("downshift").UseMultipleSelectionGetSelectedItemReturnValue, Options>, "index" | "selectedItem">;
    getDropdownProps: <Options_1>(options?: import("downshift").UseMultipleSelectionGetDropdownPropsOptions & Options_1, extraOptions?: import("downshift").GetPropsCommonOptions) => Omit<import("downshift").Overwrite<import("downshift").UseMultipleSelectionGetDropdownReturnValue, Options_1>, "preventKeyAction">;
    addSelectedItem: (item: T) => void;
    getToggleButtonProps: <Options_2>(options?: import("downshift").UseComboboxGetToggleButtonPropsOptions & Options_2) => import("downshift").Overwrite<import("downshift").UseComboboxGetToggleButtonPropsReturnValue, Options_2>;
    getLabelProps: <Options_3>(options?: import("downshift").UseComboboxGetLabelPropsOptions & Options_3) => import("downshift").Overwrite<import("downshift").UseComboboxGetLabelPropsReturnValue, Options_3>;
    getMenuProps: <Options_4>(options?: import("downshift").UseComboboxGetMenuPropsOptions & Options_4, otherOptions?: import("downshift").GetPropsCommonOptions) => import("downshift").Overwrite<import("downshift").UseComboboxGetMenuPropsReturnValue, Options_4>;
    getInputProps: <Options_5>(options?: import("downshift").UseComboboxGetInputPropsOptions & Options_5, otherOptions?: import("downshift").GetPropsCommonOptions) => import("downshift").Overwrite<import("downshift").UseComboboxGetInputPropsReturnValue, Options_5>;
    getItemProps: <Options_6>(options: import("downshift").UseComboboxGetItemPropsOptions<T> & Options_6) => Omit<import("downshift").Overwrite<import("downshift").UseComboboxGetItemPropsReturnValue, Options_6>, "index" | "item">;
    reset: () => void;
    removeSelectedItem: (item: T) => void;
    filteredOptions: import("../../../BaseList").ListGroup<T>[];
    openMenu: () => void;
    toggleMenu: () => void;
    closeMenu: () => void;
};
export default useDropdownMultiCombobox;
