import type { DaoCoreConfig } from "../../config/types.daocore.js";
import { TranscriptFileState } from "./transcript-file-state.js";
type ReadonlySessionManagerForRotation = Pick<TranscriptFileState, "buildSessionContext" | "getBranch" | "getCwd" | "getEntries" | "getHeader">;
export type CompactionTranscriptRotation = {
    rotated: boolean;
    reason?: string;
    sessionId?: string;
    sessionFile?: string;
    compactionEntryId?: string;
    leafId?: string;
    entriesWritten?: number;
};
export declare function shouldRotateCompactionTranscript(config?: DaoCoreConfig): boolean;
export declare function rotateTranscriptAfterCompaction(params: {
    sessionManager: ReadonlySessionManagerForRotation;
    sessionFile: string;
    now?: () => Date;
}): Promise<CompactionTranscriptRotation>;
export declare function rotateTranscriptFileAfterCompaction(params: {
    sessionFile: string;
    now?: () => Date;
}): Promise<CompactionTranscriptRotation>;
export {};
