import { MemoryEvent, IMemoryEventHandler } from './events'; import { IMemoryMonitor } from './monitors'; /** * Memory Transition Manager * Manages system signals and invokes monitors based on their configurations */ export declare class MemoryTransitionManager { private eventsSubject$; private readonly events$; private handlers; private monitors; private isMonitoring; private turnCount; private lastUserTurn; private lastAssistantTurn; private timeIntervalSubscriptions; private logger; /** * Register an event handler */ registerHandler(handler: IMemoryEventHandler): void; /** * Unregister an event handler */ unregisterHandler(handler: IMemoryEventHandler): void; /** * Emit a memory event */ emitEvent(event: MemoryEvent): void; /** * Register a memory monitor and set up its signal handling */ registerMonitor(monitor: IMemoryMonitor): void; /** * Unregister a memory monitor */ unregisterMonitor(monitorId: string): void; /** * Start all registered monitors */ startMonitoring(): void; /** * Stop all registered monitors */ stopMonitoring(): void; /** * Get all registered monitors */ getMonitors(): Map; /** * Handle a user turn completion */ onUserTurnEnd(): void; /** * Handle an assistant turn completion */ onAssistantTurnEnd(): void; /** * Process a system signal */ private processSignal; /** * Set up signal handling for a monitor based on its configuration */ private setupMonitorSignals; /** * Stop and clean up signal handling for a monitor */ private stopMonitorSignals; /** * Check turn counts for monitors using TURN_COUNT trigger */ private checkTurnCounts; /** * Check capacity thresholds for monitors using CAPACITY_THRESHOLD trigger */ private checkCapacityThresholds; }