import { Workspace } from '../agent-utils/index.js';
import { Timer } from './Timer.js';
import { DebugLlmReq } from './DebugLlmReq.js';
import { ChatMessage, ChatLogs } from '../agent-core/index.js';
interface DebugGoal {
    prompt: string;
    time: Timer;
    tokens: number;
    llmReqs: number;
}
interface DebugStep {
    time: Timer;
    message?: string;
    error?: string;
    llmTime: Timer;
    llmReqs: DebugLlmReq[];
}
export declare class DebugLog {
    workspace: Workspace;
    private goal;
    private steps;
    private longestLlmReqs;
    constructor(workspace: Workspace);
    private get latestStep();
    save(): Promise<void>;
    goalStart(prompt: string): Promise<void>;
    goalEnd(): Promise<void>;
    stepStart(): Promise<void>;
    stepEnd(): Promise<void>;
    stepLog(message: string): Promise<void>;
    stepError(error: string): Promise<void>;
    stepLlmReq(time: Timer, chatLogs: ChatLogs, response?: ChatMessage): Promise<void>;
    toString(): string;
    toJSON(): {
        goal: DebugGoal;
        steps: DebugStep[];
    };
}
export {};
