import { type Message } from './session-jsonl-types.js'; export declare class SessionManager { private baseDir; private states; private static readonly MAX_CACHED_SESSIONS; private static readonly MAX_CACHED_SESSIONS_BYTES; private sessionLastAccess; private sessionApproxBytes; private loadingPromises; constructor(baseDir?: string); private estimateStateBytes; private touchSessionKey; private evictSessionCacheIfNeeded; private getPath; private getLegacyPath; private createHeader; load(sessionKey: string): Promise; append(sessionKey: string, message: Message): Promise; truncateTrailingAssistant(sessionKey: string): Promise; truncateForRegenerate(sessionKey: string, anchorProcessedUserContent: string): Promise; appendCompaction(sessionKey: string, summary: string, firstKeptEntryId: string, tokensBefore: number): Promise; resolveMessageEntryId(sessionKey: string, message: Message): string | undefined; get(sessionKey: string): Message[]; clear(sessionKey: string): Promise; list(): Promise; private ensureState; private loadAndCacheState; private persistEntry; } //# sourceMappingURL=session-manager.d.ts.map