import { AgentExecutor } from '@langchain/classic/agents';
import type { BaseChatMemory } from '@langchain/classic/memory';
import type { DynamicStructuredTool, Tool } from '@langchain/classic/tools';
import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
import type { ChatPromptTemplate } from '@langchain/core/prompts';
import { type N8nOutputParser } from '../../../../../../utils/output_parsers/N8nOutputParser';
import type { IExecuteFunctions, INodeExecutionData, ISupplyDataFunctions } from 'n8n-workflow';
export declare function createAgentExecutor(model: BaseChatModel, tools: Array<DynamicStructuredTool | Tool>, prompt: ChatPromptTemplate, options: {
    maxIterations?: number;
    returnIntermediateSteps?: boolean;
}, outputParser?: N8nOutputParser, memory?: BaseChatMemory, fallbackModel?: BaseChatModel | null): AgentExecutor;
export declare function toolsAgentExecute(this: IExecuteFunctions | ISupplyDataFunctions): Promise<INodeExecutionData[][]>;
