UNPKG

@codai/memorai-core

Version:

Simplified advanced memory engine - no tiers, just powerful semantic search with persistence

68 lines 2.42 kB
/** * @fileoverview Temporal memory management for time-based operations */ import type { MemoryMetadata, MemoryType } from '../types/index.js'; /** * Time-based memory decay factors */ export interface DecayParameters { /** Importance multiplier (0-1) */ importance: number; /** Access frequency multiplier (0-1) */ frequency: number; /** Emotional weight multiplier (0-1) */ emotional: number; /** Base decay rate per day */ baseDecayRate: number; } /** * Default decay parameters for different memory types */ export declare const DEFAULT_DECAY_PARAMETERS: Record<MemoryType, DecayParameters>; /** * Temporal memory engine for managing time-based memory operations */ export declare class TemporalEngine { private decayParameters; constructor(customDecayParameters?: Partial<Record<MemoryType, Partial<DecayParameters>>>); /** * Calculate time-adjusted confidence for a memory */ calculateTimeDecay(memory: MemoryMetadata, currentTime?: Date): number; /** * Determine if a memory should be archived based on its decay */ shouldArchive(memory: MemoryMetadata, archiveThreshold?: number, currentTime?: Date): boolean; /** * Determine if a memory should be forgotten based on TTL and decay */ shouldForget(memory: MemoryMetadata, forgetThreshold?: number, currentTime?: Date): boolean; /** * Calculate relevance score considering temporal factors */ calculateTemporalRelevance(memory: MemoryMetadata, baseRelevance: number, currentTime?: Date): number; /** * Update memory access statistics */ updateAccess(memory: MemoryMetadata, currentTime?: Date): MemoryMetadata; /** * Get memories that need maintenance (archiving/forgetting) */ getMemoriesForMaintenance(memories: MemoryMetadata[], archiveThreshold?: number, forgetThreshold?: number, currentTime?: Date): { toArchive: MemoryMetadata[]; toForget: MemoryMetadata[]; }; /** * Set custom decay parameters for a memory type */ setDecayParameters(type: MemoryType, parameters: Partial<DecayParameters>): void; /** * Get current decay parameters for a memory type */ getDecayParameters(type: MemoryType): DecayParameters; /** * Reset decay parameters to defaults */ resetDecayParameters(): void; } //# sourceMappingURL=TemporalEngine.d.ts.map