import { type OpenAssistantTool } from "./tool"; import { z } from 'zod'; /** * Converts an OpenAssistantTool to a LangChain-compatible tool configuration. * * @param tool - The OpenAssistantTool object to convert * @returns A tool configuration object that can be used with the `tool()` function from LangChain * * @example * ```typescript * import { tool } from '@langchain/core/tools'; * import { convertToLangchainTool } from '@openassistant/utils'; * * const myTool: OpenAssistantTool = { * name: 'my-tool', * description: 'My tool description', * parameters: z.object({ input: z.string() }), * context: {}, * execute: async (params) => ({ llmResult: 'result' }) * }; * const langchainTool = tool(convertToLangchainTool(myTool)); * * // Use with LangChain * const result = await langchainTool.invoke({ input: 'test' }); * ``` */ export declare function convertToLangchainTool(tool: OpenAssistantTool): { name: string; description: string; schema: z.ZodTypeAny; func: (args: unknown) => Promise; };