import type Database from 'better-sqlite3'; import type { EmbeddingProvider } from '../../../shared/types/embedding.types.js'; import type { MemoryType } from '../../../shared/types/index.js'; export interface EmbeddingReindexOptions { provider: EmbeddingProvider; ownerId?: string; batchSize?: number; dryRun?: boolean; } export interface EmbeddingHealthDiagnostics { provider: EmbeddingProvider; expectedDimensions: number; memoryCount: number; providerEmbeddingCount: number; missingEmbeddingCount: number; dimensionMismatchCount: number; providerDriftCount: number; } export interface EmbeddingReindexResult extends EmbeddingHealthDiagnostics { dryRun: boolean; processedCount: number; storedCount: number; failedCount: number; } type ReindexEmbeddingService = { isAvailable(): boolean; createAndStoreEmbedding(db: Database.Database, memoryId: string, content: string, type: MemoryType, preferredProvider?: EmbeddingProvider): Promise<{ embedding: number[]; provider?: EmbeddingProvider; } | null>; }; export declare class EmbeddingReindexService { private readonly db; private readonly embeddingService; constructor(db: Database.Database, embeddingService: ReindexEmbeddingService); diagnose(options: Pick): EmbeddingHealthDiagnostics; reindex(options: EmbeddingReindexOptions): Promise; } export {}; //# sourceMappingURL=embedding-reindex-service.d.ts.map