import type { AgentSessionEvent } from "@sheason/pi-coding-agent";
import type { HubLogSink } from "../tui/hub-log.js";
export interface HubAgentSessionLoggerOptions {
    agentId: string;
    logs?: HubLogSink;
    now?: () => number;
}
export declare class HubAgentSessionLogger {
    private readonly agentId;
    private readonly logs;
    private readonly now;
    private runStartedAt;
    private runId;
    private runSequence;
    private nextTurnIndex;
    private activeTurn;
    private assistantMessageStartedAt;
    private assistantFirstDeltaLogged;
    private assistantMessageCount;
    private readonly toolStartedAt;
    private compactionStartedAt;
    private retryStartedAt;
    private retryDelayMs;
    constructor(options: HubAgentSessionLoggerOptions);
    handle(event: AgentSessionEvent): void;
    private handleAgentStart;
    private handleAgentEnd;
    private handleTurnStart;
    private handleTurnEnd;
    private handleMessageStart;
    private handleMessageUpdate;
    private handleMessageEnd;
    private handleToolExecutionEnd;
    private handleCompactionEnd;
    private handleRetryEnd;
    private durationSince;
    private info;
}
//# sourceMappingURL=hub-agent-session-logger.d.ts.map