/** * Trace Search Engine — full-text search with scoring across traces. * @module search-engine */ import type { AgentTrace, TraceStep } from './types'; export interface SearchEngineOptions { /** Search query (natural language or keywords) */ query: string; /** Directory containing trace JSON files */ tracesDir: string; /** Max results to return */ limit?: number; /** Minimum relevance score (0-1) */ minScore?: number; } export interface SearchHit { file: string; score: number; preview: string; matchedSteps: number[]; trace: AgentTrace; } export interface SearchEngineResult { hits: SearchHit[]; totalSearched: number; queryTerms: string[]; elapsed_ms: number; } /** * Tokenize a query into search terms (lowercased, deduplicated). */ export declare function tokenize(query: string): string[]; /** * Score a single trace step against query terms using TF-based relevance. */ export declare function scoreStep(step: TraceStep, terms: string[]): number; /** * Score and rank a trace against the query. */ export declare function scoreTrace(trace: AgentTrace, terms: string[]): { score: number; matchedSteps: number[]; preview: string; }; /** * Extract a short preview string from a step. */ export declare function extractPreview(step: TraceStep): string; /** * Find trace files recursively. */ export declare function findTraceFiles(dir: string): string[]; /** * Full-text search across trace files. */ export declare function searchEngine(options: SearchEngineOptions): SearchEngineResult; /** * Format search engine results for console output. */ export declare function formatSearchEngineResult(result: SearchEngineResult): string; //# sourceMappingURL=search-engine.d.ts.map