import { type SelectionStrategy } from "../common-hooks"; import type { DropdownHookProps, DropdownHookResult } from "../dropdown"; import type { InputLegacyProps as InputProps } from "../input-legacy"; import { type ListHookProps, type ListHookResult } from "../list"; 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, onBlur, onFocus, onChange, onSelect, id, isOpen: isOpenProp, itemToString, onOpenChange, onSelectionChange, selectionStrategy, stringToItem, value: valueProp, InputProps: inputProps, }: ComboboxHookProps) => ComboboxHookResult;