import React from 'react'; import { CompletionItem, CompletionItemGroup } from '../types'; import '../styles/typeahead.css'; interface Props { origin: string; groupedItems: CompletionItemGroup[]; prefix?: string; menuRef?: (el: Typeahead) => void; onSelectSuggestion?: (suggestion: CompletionItem) => void; isOpen?: boolean; } export interface State { allItems: CompletionItem[]; listWidth: number; listHeight: number; hoveredItem: number | null; typeaheadIndex: number | null; } export declare class Typeahead extends React.PureComponent { static contextType: React.Context; listRef: React.RefObject; state: State; componentDidMount: () => void; componentWillUnmount: () => void; handleSelectionChange: () => void; componentDidUpdate: (prevProps: Readonly, prevState: Readonly) => void; onMouseEnter: (index: number) => void; onMouseLeave: () => void; moveMenuIndex: (moveAmount: number) => void; insertSuggestion: () => void; get menuPosition(): string; render(): JSX.Element; } export {};