/** * Hybrid Memory Repository - Infrastructure Layer * * Implements IMemoryRepository using SQLite + AgentDB hybrid backend. * Per ADR-009, this is the default memory backend. * * @module v3/memory/infrastructure/repositories */ import { MemoryEntry, MemoryType, MemoryStatus } from '../../domain/entities/memory-entry.js'; import { IMemoryRepository, MemoryQueryOptions, VectorSearchOptions, VectorSearchResult, BulkOperationResult, MemoryStatistics } from '../../domain/repositories/memory-repository.interface.js'; /** * Repository configuration */ export interface HybridRepositoryConfig { sqlitePath: string; agentDbPath?: string; enableVectorSearch?: boolean; cacheSize?: number; verbose?: boolean; } /** * Hybrid Memory Repository * * Uses SQLite for metadata and AgentDB for vectors. * Implements hot caching for frequently accessed entries. */ export declare class HybridMemoryRepository implements IMemoryRepository { private readonly config; private entries; private namespaceIndex; private vectorIndex; private cache; private initialized; constructor(config: HybridRepositoryConfig); initialize(): Promise; shutdown(): Promise; clear(): Promise; save(entry: MemoryEntry): Promise; findById(id: string): Promise; findByKey(namespace: string, key: string): Promise; findByCompositeKey(compositeKey: string): Promise; delete(id: string): Promise; exists(id: string): Promise; saveMany(entries: MemoryEntry[]): Promise; findByIds(ids: string[]): Promise; deleteMany(ids: string[]): Promise; findAll(options?: MemoryQueryOptions): Promise; findByNamespace(namespace: string, options?: Omit): Promise; findByType(type: MemoryType, options?: Omit): Promise; findByStatus(status: MemoryStatus, options?: Omit): Promise; searchByVector(options: VectorSearchOptions): Promise; findSimilar(entryId: string, limit?: number): Promise; findExpired(): Promise; deleteExpired(): Promise; findCold(milliseconds: number): Promise; archiveCold(milliseconds: number): Promise; getStatistics(): Promise; count(options?: MemoryQueryOptions): Promise; listNamespaces(): Promise; deleteNamespace(namespace: string): Promise; getNamespaceSize(namespace: string): Promise; private ensureInitialized; private updateCache; private cosineSimilarity; } //# sourceMappingURL=hybrid-memory-repository.d.ts.map