import type { SearchAdapter, SearchResult, MeiliSearchClient } from './types.js'; import type { SearchDocument } from '../types.js'; /** * Meilisearch search adapter. * * Uses per-site indexes (e.g. `docs_site-abc`) with versionId as a filterable * attribute. Documents are grouped by siteId on index, and search is scoped * to a single site + version via Meilisearch filters. */ export declare class MeilisearchSearchAdapter implements SearchAdapter { private client; constructor(client: MeiliSearchClient); /** Derive the Meilisearch index UID from a siteId. */ private indexName; /** * Index documents into Meilisearch, grouped by siteId. * Configures filterable and searchable attributes on each index. */ index(documents: SearchDocument[]): Promise; /** * Search a Meilisearch index for the given site, filtering by versionId. * Returns highlighted content snippets. */ search(query: string, siteId: string, versionId: string): Promise; /** * Delete documents by pageId. * * Since the adapter uses per-site indexes and pageIds are globally unique * (UUIDs), this iterates a best-effort delete. For targeted deletion when * the siteId is known, prefer `deleteFromSite()`. */ delete(pageIds: string[]): Promise; /** Delete documents from a specific site's index. */ deleteFromSite(siteId: string, pageIds: string[]): Promise; } //# sourceMappingURL=meilisearchAdapter.d.ts.map