import type { RunEvent, RunObserver, RunSnapshot, RunnerLogChunk, StepDetailSnapshot, WorkflowDefinition } from "./types.js";
interface CliRunRendererOptions {
    workflow: WorkflowDefinition;
    verbose: boolean;
    stream?: NodeJS.WriteStream;
    heartbeatMs?: number;
}
export declare class CliRunRenderer implements RunObserver {
    private readonly verbose;
    private readonly stream;
    private readonly heartbeatMs;
    private readonly steps;
    private readonly lineBuffers;
    private lastSnapshot;
    private lastStepDetails;
    private heartbeat;
    private promptPauseCount;
    private started;
    private closed;
    constructor(options: CliRunRendererOptions);
    onSnapshot(snapshot: RunSnapshot, stepDetails: StepDetailSnapshot[]): void;
    onEvent(event: RunEvent): void;
    onLog(log: RunnerLogChunk): void;
    close(): void;
    pauseHeartbeat(): void;
    resumeHeartbeat(): void;
    private renderStepStatus;
    private stepSummary;
    private remainingText;
    private syncHeartbeat;
    private stopHeartbeat;
    private renderHeartbeat;
    private flushBuffers;
    private write;
}
export {};
