import { MilvusClient } from '@zilliz/milvus2-sdk-node'; import type { Chunk } from './chunker.js'; export declare function getMilvusClient(): MilvusClient; export declare function ensureCollection(): Promise; /** Pair chunks with their embeddings, dropping any chunk whose embedding failed (null). */ export declare function pairEmbedded(chunks: Chunk[], embeddings: (number[] | null)[]): { kept: [Chunk, number[]][]; skipped: Chunk[]; }; export declare function upsertChunks(chunks: Chunk[], embeddings: (number[] | null)[]): Promise; export declare function deleteByFilePaths(filePaths: string[]): Promise; export interface SearchResult { filePath: string; symbolName: string; chunkType: string; startLine: number; endLine: number; content: string; score: number; module: string; language: string; } export interface SearchFilters { module?: string; language?: string; chunkType?: string; /** Path patterns to leave out (see ignore.ts). */ ignore?: readonly string[]; } export declare function searchChunks(queryEmbedding: number[], topK?: number, filters?: SearchFilters): Promise; export declare function getCollectionStats(): Promise<{ count: number; }>; export declare function dropCollection(): Promise;