/** * The unified `SearchCodebase` tool: ranked code discovery in lexical, semantic, or * hybrid (rank-fused) mode. Replaces the old `semantic_search` tool — see * docs/hybrid-retrieval-design.md, Decision 1. It is the only dedicated * discovery tool: this tool answers "find where X lives", and exact * line-level mechanics are a shell job (rg/find/ls via bash). */ import { Type } from "typebox"; import type { EmbsearchService } from "../embsearch/embsearch-service.js"; import type { ToolDefinition } from "../extensions/types.js"; import type { ResolvedSearchMode } from "../search/types.js"; declare const searchSchema: Type.TObject<{ query: Type.TString; mode: Type.TOptional, Type.TLiteral<"lexical">, Type.TLiteral<"semantic">, Type.TLiteral<"hybrid">]>>; glob: Type.TOptional; limit: Type.TOptional; }>; export interface SearchToolDetails { resultCount?: number; resolvedMode?: ResolvedSearchMode; indexing?: { done: number; total: number; }; } export interface SearchToolOptions { /** * Provider for the per-session embsearch service. Resolved lazily at call * time because the service is created (and its index built) after tool * registration. When absent/unavailable the tool degrades to lexical mode. */ getService?: () => EmbsearchService | undefined; } export declare function createSearchToolDefinition(cwd: string, options?: SearchToolOptions): ToolDefinition; export {}; //# sourceMappingURL=search.d.ts.map