import type { StreamFn, ThinkingLevel } from "@earendil-works/pi-agent-core";
import type { ProviderHeaders } from "@earendil-works/pi-ai";
import type { Api, Model } from "@earendil-works/pi-ai/compat";
import type { CompactedTranscript, VerbatimCompactionPreparation } from "./compaction-types.js";
export interface CompactionPlanOptions {
    streamFn: StreamFn;
    /** Absolute path of the persisted session file. Undefined for in-memory sessions. */
    sessionFilePath?: string;
}
export type CompactionRungResult = CompactedTranscript & {
    rung: "planned";
};
/** Calculate the single global line threshold directly from the prepared setting. */
export declare function targetKeepLines(preparation: VerbatimCompactionPreparation): number;
/** Execute one whole-region model plan and mechanically accept its safe deletions. */
export declare function runVerbatimCompaction(preparation: VerbatimCompactionPreparation, model: Model<Api>, apiKey: string, headers: ProviderHeaders | undefined, signal: AbortSignal | undefined, thinkingLevel: ThinkingLevel | undefined, options: CompactionPlanOptions): Promise<CompactionRungResult>;
//# sourceMappingURL=compaction-runner.d.ts.map