import { InputProps } from "@jpmorganchase/uitk-core"; import { ListHookProps, ListHookResult } from "../list"; import { DropdownHookResult, DropdownHookProps } from "../dropdown"; import { SelectionStrategy } from "../common-hooks"; export interface ComboboxHookProps extends Partial>, Pick, Omit, "containerRef" | "defaultSelected" | "selected" | "onSelect"> { InputProps?: InputProps; allowFreeText?: boolean; ariaLabel?: string; defaultValue?: string; id: string; itemToString?: (item: Item) => string; stringToItem?: (value?: string) => Item | null | undefined; value?: string; } export interface ComboboxHookResult extends Pick, "focusVisible" | "highlightedIndex" | "listControlProps" | "listHandlers" | "selected">, Partial { inputProps: InputProps; onOpenChange: (isOpen: boolean) => void; } export declare const useCombobox: ({ allowFreeText, ariaLabel, collectionHook, defaultIsOpen, defaultValue, disabled, onBlur, onFocus, onChange, onSelect, id, isOpen: isOpenProp, itemToString, onOpenChange, onSelectionChange, selectionStrategy, stringToItem, value: valueProp, InputProps: inputProps, }: ComboboxHookProps) => ComboboxHookResult;