import type { MemoryClass, MemoryRecord, MemoryReviewState, MemoryScope } from './memory-store.js'; import { MemoryEmbeddingProviderRegistry } from './memory-embeddings.js'; export { resolveSqliteVecPath } from './sqlite-vec-loader.js'; export declare const MEMORY_VECTOR_DIMS = 384; /** Target `PRAGMA user_version` for the memory vector index. */ export declare const MEMORY_VECTOR_SCHEMA_VERSION = 1; export { embedMemoryText } from './memory-embeddings.js'; export interface MemoryVectorSearchFilter { scope?: MemoryScope | undefined; cls?: MemoryClass | undefined; since?: number | undefined; reviewState?: MemoryReviewState | MemoryReviewState[] | undefined; minConfidence?: number | undefined; staleOnly?: boolean | undefined; limit?: number | undefined; } export interface MemoryVectorCandidate { id: string; distance: number; similarity: number; } export interface MemoryVectorStats { backend: 'sqlite-vec'; enabled: boolean; available: boolean; path: string; dimensions: number; indexedRecords: number; embeddingProviderId: string; embeddingProviderLabel: string; error?: string | undefined; /** * Set when the vector index is unavailable because the RUNTIME PLATFORM * cannot load SQLite extensions (a permanent capability limit, e.g. a * macOS-compiled binary on Apple's system SQLite). Deliberately NOT the * `error` field: a capability limit is not a fault, and fault monitors * must not fire on it. Semantic search degrades to literal matching. */ platformLimitReason?: string | undefined; } export declare function resolveMemoryVectorDbPath(dbPath?: string): string; export declare function memoryVectorSourceHash(record: MemoryRecord): string; export declare function buildMemoryEmbeddingText(record: MemoryRecord): string; export declare class SqliteVecMemoryIndex { private readonly dbPath; private readonly dimensions; private readonly embeddingRegistry; private db; private enabled; private available; private error; private platformLimitReason; private static readonly rebuildBatchSize; constructor(dbPath: string, dimensions: number | undefined, embeddingRegistry: MemoryEmbeddingProviderRegistry); init(): void; stats(): MemoryVectorStats; upsert(record: MemoryRecord): void; upsertAsync(record: MemoryRecord): Promise; delete(recordId: string): void; sync(records: readonly MemoryRecord[]): void; syncAsync(records: readonly MemoryRecord[], options?: { force?: boolean; }): Promise; search(query: string, filter?: MemoryVectorSearchFilter): MemoryVectorCandidate[]; close(): void; private createSchema; private ensureRowId; private countIndexedRecords; private embedText; private markEmbeddingUnavailable; private writePendingRebuildBatch; private writeRecord; } //# sourceMappingURL=memory-vector-store.d.ts.map