import { default as Fuse } from 'fuse.js'; import { FocusEventHandler } from 'react'; import { DefaultTheme } from '../config/config'; export declare const DEFAULT_INPUT_DEBOUNCE = 200; export declare const MAX_RESULTS = 10; export interface ReactSearchAutocompleteProps { items: T[]; fuseOptions?: Fuse.IFuseOptions; inputDebounce?: number; onSearch?: (keyword: string, results: T[]) => void; onHover?: (result: T) => void; onSelect?: (result: T) => void; onFocus?: FocusEventHandler; onClear?: Function; showIcon?: boolean; showResultIcon?: boolean; showClear?: boolean; maxResults?: number; placeholder?: string; autoFocus?: boolean; styling?: DefaultTheme; resultStringKeyName?: string; inputSearchString?: string; formatResult?: Function; CustomSearchIcon?: Function; CustomClearIcon?: Function; } export default function ReactSearchAutocomplete({ items, fuseOptions, inputDebounce, onSearch, onHover, onSelect, onFocus, onClear, showIcon, showResultIcon, showClear, maxResults, placeholder, autoFocus, styling, resultStringKeyName, inputSearchString, formatResult, CustomSearchIcon, CustomClearIcon }: ReactSearchAutocompleteProps): JSX.Element;