/** * Search Index * * Maintains an inverted index for fast full-text search. * * @since v1.68.0 */ import type { IndexableDocument, SearchIndexStats, SearchResultType } from './search-types.js'; /** * Search index for fast full-text search */ export declare class SearchIndex { /** Documents stored by ID */ private documents; /** Inverted index: term -> documents containing term */ private invertedIndex; /** Document count by type */ private typeCounts; /** Last update timestamp */ private lastUpdated; /** * Add a document to the index */ addDocument(doc: IndexableDocument): void; /** * Index tokens for a document */ private indexTokens; /** * Remove a document from the index */ removeDocument(id: string): boolean; /** * Get a document by ID */ getDocument(id: string): IndexableDocument | undefined; /** * Check if a document exists */ hasDocument(id: string): boolean; /** * Search for documents matching terms */ search(terms: string[], options?: { types?: SearchResultType[]; limit?: number; }): Array<{ docId: string; score: number; doc: IndexableDocument; }>; /** * Get suggestions for a prefix */ suggest(prefix: string, limit?: number): string[]; /** * Get all documents of a type */ getDocumentsByType(type: SearchResultType): IndexableDocument[]; /** * Get index statistics */ getStats(): SearchIndexStats; /** * Clear the entire index */ clear(): void; /** * Rebuild index from stored documents */ rebuild(): void; } /** * Create a new search index */ export declare function createSearchIndex(): SearchIndex; //# sourceMappingURL=search-index.d.ts.map