import { ChangeEvent, KeyboardEvent, ReactNode } from 'react'; export interface ComboboxProps extends React.InputHTMLAttributes { onSearchInputChange: (event: ChangeEvent) => void; options: OptionListItemType[]; value: string; isLoading: boolean; noResult: boolean; onFocus?: (event: ChangeEvent) => void; onBlur?: (event: ChangeEvent) => void; onSearchResultsChange?: (model: (string | number)[]) => void; onSearchInputKeyUp?: (event: KeyboardEvent) => void; searchMinLength?: number; placeholder?: string; variant?: 'outline' | 'ghost'; renderInputGroup?: ReactNode; renderList?: (items: OptionListItemType[]) => ReactNode; renderListItem?: (item: OptionListItemType) => ReactNode; renderSelectedItems?: ReactNode; renderNoResult?: ReactNode; hasDefault?: boolean; } export interface ComboboxRef { focus: () => void; } export interface OptionListItemType { /** * Value */ value: string | number; /** * Label */ label?: string; /** * Add an icon */ icon?: any; /** * Display Separator or not */ withSeparator?: boolean; /** * Disable option */ disabled?: boolean; } declare const Combobox: import('react').ForwardRefExoticComponent> & { Trigger: ({ placeholder, value, searchMinLength, onFocus, onBlur, handleSearchInputChange, handleSearchInputKeyUp, renderInputGroup, variant, renderSelectedItems, hasDefault, inputRef, }: import('./ComboboxTrigger').ComboboxTriggerProps) => import("react/jsx-runtime").JSX.Element; }; export default Combobox;