import { IMemoryUnit } from './base'; import { MemoryFilter } from './base'; /** * Interface for memory retrieval operations */ export interface IMemoryRetrieval { query(filter: MemoryFilter): Promise; exists(id: string): Promise; getAssociatedMemories(id: string): Promise; } /** * Interface for memory storage operations */ export interface IMemoryStorage { store(memory: IMemoryUnit): Promise; retrieve(id: string): Promise; retrieveByFilter(filter: MemoryFilter): Promise; update(memory: IMemoryUnit): Promise; delete(id: string): Promise; getSize(): number; getCapacity(): number; add(id: string, memory: IMemoryUnit): Promise; get(id: string): Promise; remove(id: string): Promise; clear(): Promise; getAll(): Promise; } /** * Interface for memory indexing operations */ export interface IMemoryIndex { index?: (memory: IMemoryUnit) => Promise; add(memory: IMemoryUnit): Promise; search(query: string): Promise; update(memory: IMemoryUnit): Promise; delete(id: string): Promise; remove(id: string): Promise; }