export interface MemoryContextDetail { id: string; kind: string; text: string; score: number; /** * The relation gate's own value. `score` alone cannot explain an injection * because metadata boosts can carry a weak relation over the score bar — * this is the number the `relationFloor` gate actually tested. */ relationStrength: number; confidence: number; freshness: number; importance: number; persistence: string; anchors: string[]; tags: string[]; activationReasons: string[]; state: 'injected' | 'active' | 'exited'; trigger: string; enteredAt: string; lastSeenAt: string; exitedAt?: string | undefined; /** True when created by placeholder() — the detail fields are zero-value defaults. */ isPlaceholder?: boolean | undefined; } export interface MemoryContextTransition { id: string; at: string; memoryId: string; action: 'injected' | 'entered' | 'exited'; reason: string; } export interface MemoryInjectorSummary { at: string; trigger: string; matched: number; injected: number; filtered: number; contextPressure: number; injectedChars: number; outcome?: 'injected' | 'empty' | 'error' | undefined; error?: string | undefined; } export interface MemoryContextMonitorState { latest?: MemoryInjectorSummary | undefined; memories: Record; transitions: MemoryContextTransition[]; } export declare function emptyMemoryContextMonitor(): MemoryContextMonitorState; /** * UI-only text budget for memory detail cards. Full text lives in SAGE * SQLite; the TUI only needs a short preview for the context panel. */ export declare const MAX_MEMORY_DETAIL_TEXT_CHARS = 300; /** Count only memories confirmed present in the latest provider-bound request. */ export declare function activeMemoryContextCount(state: MemoryContextMonitorState): number; /** Keep leader telemetry isolated from subagent sessions sharing the same EventBus. */ export declare function memoryEventMatchesSession(payload: unknown, currentSessionId: string): boolean; /** Read the all-status SAGE record total without requiring that backend at the type boundary. */ export declare function readMemoryRecordTotal(store: unknown): Promise; export declare function applyMemoryInjectorRun(state: MemoryContextMonitorState, payload: Record): MemoryContextMonitorState; export declare function applyMemoryContextSnapshot(state: MemoryContextMonitorState, payload: Record): MemoryContextMonitorState; //# sourceMappingURL=memory-context-monitor.d.ts.map