import type { ConfigManager } from '../config/manager.js'; import type { SessionDomainState } from './store/domains/session.js'; export type GuidanceMode = 'off' | 'minimal' | 'guided'; export type SessionMaintenanceLevel = 'stable' | 'watch' | 'suggest-compact' | 'compacting' | 'needs-repair' | 'unknown'; export interface SessionMaintenanceStatus { readonly level: SessionMaintenanceLevel; readonly guidanceMode: GuidanceMode; readonly usagePct: number; readonly remainingTokens: number; readonly thresholdPct: number; readonly autoCompactEnabled: boolean; readonly compactRecommended: boolean; readonly sessionMemoryCount: number; readonly compactionCount: number; readonly lastCompactedAt?: number | undefined; readonly summary: string; readonly reasons: readonly string[]; readonly nextSteps: readonly string[]; } export interface SessionMaintenanceInput { readonly configManager: Pick; readonly currentTokens: number; readonly contextWindow: number; readonly messageCount?: number | undefined; readonly sessionMemoryCount?: number | undefined; readonly session?: Partial | undefined; } export declare function getGuidanceMode(configManager: Pick): GuidanceMode; export declare function evaluateSessionMaintenance(input: SessionMaintenanceInput): SessionMaintenanceStatus; export declare function formatSessionMaintenanceLines(status: SessionMaintenanceStatus, detail?: 'minimal' | 'guided'): string[]; //# sourceMappingURL=session-maintenance.d.ts.map