import { Agent } from './agent';
import { FinalAnswerArgs } from './final-answer.tool';
import { Scratchpad } from './utils/scratchpad';
export interface MultiStepOptions {
    maxSteps?: number;
    trace?: boolean;
    onStep?: (pad: Scratchpad) => void;
    systemPrompt?: string;
    systemPromptFile?: string;
}
export declare class MultiStepAgent<I = string> extends Agent<I> {
    private scratchpad;
    private maxSteps;
    private trace;
    private onStep?;
    constructor(options?: MultiStepOptions);
    private log;
    run(task: I, opts?: Partial<MultiStepOptions>): Promise<FinalAnswerArgs>;
}
