import type * as lancedb from '@lancedb/lancedb'; import type { ContentType } from '../config-schema.js'; import type { Embedder } from '../embedders/embedder.js'; import type { SearchResult, SourceContext } from '../types.js'; /** Pure vector search (original behavior). */ export declare function runVectorSearch(table: lancedb.Table, embedder: Embedder, onWarn: (msg: string) => void, query: string, typeFilter: ContentType | undefined, maxResults: number, sourceContext: SourceContext, boundary?: string | string[]): Promise; /** * Hybrid search: runs vector + FTS in parallel, merges with RRF. * Each leg fetches `maxResults * HYBRID_OVERFETCH_FACTOR` candidates * to give RRF enough diversity to produce `maxResults` fused results. */ export declare function runHybridSearch(table: lancedb.Table, embedder: Embedder, onWarn: (msg: string) => void, query: string, typeFilter: ContentType | undefined, maxResults: number, sourceContext: SourceContext, boundary?: string | string[]): Promise; /** FTS-only search — no embedder required. For use when embedding is unavailable (offline, no API key). */ export declare function runFtsSearch(table: lancedb.Table, onWarn: (msg: string) => void, query: string, typeFilter: ContentType | undefined, maxResults: number, sourceContext: SourceContext, boundary?: string | string[]): Promise; //# sourceMappingURL=lance-search.d.ts.map