/** * Search engine adapter interface for abstracting the search implementation */ import { SearchableDocument, SearchResult, SearchOptions } from '../types'; import { SearchEngineOptions, SerializedIndexData } from './types'; export interface SearchEngineAdapter { /** * Initialize the search engine */ initialize(options?: SearchEngineOptions): Promise; /** * Add documents to the search index */ addDocuments(documents: SearchableDocument[]): Promise; /** * Remove documents from the search index */ removeDocuments(ids: string[]): Promise; /** * Search the index with the given query */ search(query: string, options?: SearchOptions): Promise; /** * Export the index for persistence */ exportIndex(): Promise; /** * Import index from persisted data */ importIndex(data: SerializedIndexData): Promise; /** * Clear all data from the index */ clear(): Promise; /** * Start a new indexing session (optional method) * Resets internal state to prepare for a new batch of document additions */ startNewIndexingSession?(): void; } //# sourceMappingURL=SearchEngineAdapter.d.ts.map