@1771technologies/lytenyte-pro
Version:
Blazingly fast headless React data grid with 100s of features.
15 lines (14 loc) • 688 B
TypeScript
import type { CompletionItem, WordAtCursor } from "../types.js";
import type { Token } from "../../../expressions/lexer/types.js";
export declare function useCompletions(completionProvider?: (tokens: Token[], cursorPosition: number) => CompletionItem[] | Promise<CompletionItem[]>): {
selectedItem: CompletionItem | null;
fetchCompletions: (tokens: Token[], cursorPosition: number, word: WordAtCursor) => Promise<void>;
updateFilter: (prefix: string) => void;
navigate: (direction: "up" | "down") => void;
dismiss: () => void;
items: CompletionItem[];
filteredItems: CompletionItem[];
selectedIndex: number;
isOpen: boolean;
isLoading: boolean;
};