import type { emitAgentEvent } from "../../infra/agent-events.js";
export type AgentCommandRunEvent = {
    stream: string;
    data?: Record<string, unknown>;
};
export type AgentCommandLifecycleTracker = {
    readonly ended: boolean;
    observe(event: AgentCommandRunEvent): void;
    emitEnd(data?: Record<string, unknown>): void;
    emitError(error: unknown): void;
};
export declare function isTerminalLifecycleEvent(event: AgentCommandRunEvent): boolean;
export declare function createAgentCommandLifecycleTracker(params: {
    runId: string;
    startedAt: number;
    emit: typeof emitAgentEvent;
}): AgentCommandLifecycleTracker;
