import type { AgentExecutionOptions } from '../agent/index.js';
import type { ProcessInputStepArgs, ProcessInputStepResult, Processor } from '../processors/index.js';
import type { ToolLoopAgentLike } from './utils.js';
export declare class ToolLoopAgentProcessor implements Processor<'tool-loop-agent-processor'> {
    readonly id = "tool-loop-agent-processor";
    readonly name = "ToolLoop to Mastra Agent Processor";
    private agent;
    private settings;
    private prepareCallResult?;
    constructor(agent: ToolLoopAgentLike);
    getAgentConfig(): {
        id: string | undefined;
        name: string | undefined;
        instructions: import("../llm").SystemMessage;
        model: any;
        tools: {} | undefined;
        maxRetries: number | undefined;
        defaultOptions: Omit<AgentExecutionOptions<unknown>, "abortSignal"> | undefined;
    };
    /**
     * Maps prepareCall or prepareStep result to ProcessInputStepResult.
     * Both hooks return similar structures that can override model, tools, activeTools, etc.
     */
    private mapToProcessInputStepResult;
    private handlePrepareCall;
    private handlePrepareStep;
    processInputStep(args: ProcessInputStepArgs): Promise<ProcessInputStepResult | undefined | void>;
}
//# sourceMappingURL=tool-loop-processor.d.ts.map