import { type CompactNowInput, type CompactionResult } from '../../compaction/manual.js'; import type { SessionId } from '../../types/ids/index.js'; import { type SessionLocatorOptions } from './abandon-turn.js'; /** A compaction a host asks for between turns. */ export interface CompactSessionParams extends Omit { readonly sessionId: SessionId; /** Where to find the session's log, and the lease to append under. */ readonly locator?: SessionLocatorOptions; } /** * Compact a session outside any turn. Reads the session's context from its * log, compacts it, and appends a `compaction{ trigger: 'manual' }` record * with no `turnId`: the messages the pass kept are named by id, the summary * is recorded in full, and the shed messages stay in the log for audit. * * Refused while a turn is active (`TurnInProgressError`). `null` when there * was nothing to compact; nothing is appended then. */ export declare function compactSession(params: CompactSessionParams): Promise; //# sourceMappingURL=compact-session.d.ts.map