import { StructuredTool } from "@langchain/core/tools";
import { BaseMessage } from "@langchain/core/messages";
import { ToolExecutor } from "./tool_executor.js";
import { CompiledStateGraph } from "../graph/state.js";
import { START } from "../index.js";
export type FunctionCallingExecutorState = {
    messages: Array<BaseMessage>;
};
export declare function createFunctionCallingExecutor<Model extends object>({ model, tools, }: {
    model: Model;
    tools: Array<StructuredTool> | ToolExecutor;
}): CompiledStateGraph<FunctionCallingExecutorState, Partial<FunctionCallingExecutorState>, typeof START | "agent" | "action">;
