import type { Provider } from "../providers/ProviderTypes.js"; import type { RelevanceJudge } from "../tools/docdex/DocdexTools.js"; /** * Reduces a result payload to a short list of titles. The judge needs to know * *what* was found, not the contents — sending snippets would cost more than * the web call being avoided. */ export declare const summarizeResultTitles: (results: unknown) => string[]; export interface RelevanceJudgeOptions { provider: Provider; maxTokens?: number; } /** * Whether any result title shares a distinctive word with the question. * * A cheap pre-check that exists because the judge was answering obvious cases * wrongly and expensively: asked whether `LocalGatewayTaskRunner.ts` could * answer "what does LocalGatewayTaskRunner do", a small model said no, which * forced a 45-second web search for a local class. Lexical overlap settles * that case without a model call, leaving the judge for genuinely ambiguous * results — which is where it earns its keep. */ export declare const titlesShareTermsWithQuery: (query: string, titles: readonly string[]) => boolean; export declare const createRelevanceJudge: (options: RelevanceJudgeOptions) => RelevanceJudge; //# sourceMappingURL=RelevanceJudge.d.ts.map