import { type LauncherSearchField, type LauncherSearchIndex, type LauncherSynonyms } from "./engine/engine"; import type { LauncherResult } from "./match"; import type { LauncherResultGroup, LauncherSearchItem, LauncherSection } from "./NavLauncherProps"; export declare const SCOPE_ALL = "all"; export declare const SCOPE_SCREENS = "screens"; export declare const SCOPE_ACTIONS = "actions"; export type SearchGroup = { id: string; label: string; scope: string; isSection: boolean; items: LauncherResult[]; }; type Entry = { groupId: string; usageId?: string; result: LauncherResult; }; export type SpotlightIndex = { index: LauncherSearchIndex; entries: Entry[]; groups: Array>; }; export declare const itemFields: (item: LauncherSearchItem) => LauncherSearchField[]; export declare function createSpotlightIndex(sections: readonly LauncherSection[], actions: readonly LauncherSearchItem[] | undefined, actionsLabel: string): SpotlightIndex; export declare function spotlightBoosts(spot: SpotlightIndex, usage: { pinnedIds?: readonly string[]; frequentIds?: readonly string[]; recentIds?: readonly string[]; }): Record; /** Ranked groups; local rows under 25% of the best score are dropped. */ export declare function searchSpotlight(spot: SpotlightIndex, input: { query: string; extraResults?: readonly LauncherResultGroup[]; synonyms?: LauncherSynonyms; boosts?: Readonly>; }): SearchGroup[]; export declare function matchAnswers(answers: readonly LauncherSearchItem[] | undefined, query: string, synonyms?: LauncherSynonyms): LauncherResult[]; export {};