import { z } from "zod/v3"; import { Command } from "@langchain/langgraph"; import { ContentBlock, ToolMessage } from "@langchain/core/messages"; import { RunnableConfig } from "@langchain/core/runnables"; //#region src/hooks.d.ts /** * state messages * * Note: this may not be defined in cases you don't use LangGraph or a LangGraph implementation like `createAgent`. * Also state can be defined arbitrarily by the user. */ type State = Record; declare const toolHooksSchema: z.ZodObject<{ /** * Called before a tool call is made. * Allows you to modify the tool call arguments or return a different tool call. * * @param toolCallRequest - The tool call request * @param toolCallRequest.name - The tool name * @param toolCallRequest.args - The tool call arguments * @param toolCallRequest.serverName - The server name * @param config - The runnable config * @returns The tool call modification * * @example * ```ts * const interceptor = { * beforeToolCall: (toolCallRequest, state, runtime) => { * return { * args: { * ...toolCallRequest.args, * custom: "Custom Value" * }, * header: { "X-Custom-Header": "Custom Value" } * }; * }, * }; * ``` */ beforeToolCall: z.ZodOptional, z.ZodType, z.ZodType>, z.ZodTypeDef, RunnableConfig>>], z.ZodUnknown>, z.ZodUnion<[z.ZodPromise>; args: z.ZodOptional; }, "strip", z.ZodTypeAny, { headers?: Record | undefined; args?: unknown; }, { headers?: Record | undefined; args?: unknown; }>>, z.ZodObject<{ headers: z.ZodOptional>; args: z.ZodOptional; }, "strip", z.ZodTypeAny, { headers?: Record | undefined; args?: unknown; }, { headers?: Record | undefined; args?: unknown; }>, z.ZodVoid, z.ZodPromise]>>>; /** * Called after a tool call is made. * Allows you to modify the tool call result or return a different tool call result. * * @param toolCallResult - The tool call result * @param toolCallResult.args - The tool call arguments * @param toolCallResult.serverName - The server name * @param toolCallResult.name - The tool name * @param toolCallResult.result - The tool call result * @param config - The runnable config * @returns The tool call modification * @example * ```ts * const interceptor = { * afterToolCall: (toolCallResult, state, runtime) => { * if (toolCallResult.name === "calculator") { * return ["Custom Value", []]; * } * return toolCallResult.result; * }, * }; * ``` */ afterToolCall: z.ZodOptional, z.ZodArray, z.ZodType]>, "many">], null>; }, "strip", z.ZodTypeAny, { serverName: string; name: string; args?: unknown; result: [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }, { serverName: string; name: string; args?: unknown; result: [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }>, z.ZodType, z.ZodType>, z.ZodTypeDef, RunnableConfig>>], z.ZodUnknown>, z.ZodUnion<[z.ZodPromise, string>, z.ZodTypeDef, Command, string>>, z.ZodTuple<[z.ZodType, z.ZodArray, z.ZodType]>, "many">], null>, z.ZodType>, z.ZodTypeDef, ToolMessage>>]>; }, "result">, "strip", z.ZodTypeAny, { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }, { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }>>, z.ZodObject, string>, z.ZodTypeDef, Command, string>>, z.ZodTuple<[z.ZodType, z.ZodArray, z.ZodType]>, "many">], null>, z.ZodType>, z.ZodTypeDef, ToolMessage>>]>; }, "result">, "strip", z.ZodTypeAny, { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }, { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }>, z.ZodVoid, z.ZodPromise]>>>; }, "strip", z.ZodTypeAny, { beforeToolCall?: ((args_0: { serverName: string; name: string; args?: unknown; }, args_1: State, args_2: RunnableConfig>, ...args: unknown[]) => void | Promise | Promise<{ headers?: Record | undefined; args?: unknown; }> | { headers?: Record | undefined; args?: unknown; }) | undefined; afterToolCall?: ((args_0: { serverName: string; name: string; args?: unknown; result: [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }, args_1: State, args_2: RunnableConfig>, ...args: unknown[]) => void | Promise | Promise<{ result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }> | { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }) | undefined; }, { beforeToolCall?: ((args_0: { serverName: string; name: string; args?: unknown; }, args_1: State, args_2: RunnableConfig>, ...args: unknown[]) => void | Promise | Promise<{ headers?: Record | undefined; args?: unknown; }> | { headers?: Record | undefined; args?: unknown; }) | undefined; afterToolCall?: ((args_0: { serverName: string; name: string; args?: unknown; result: [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }, args_1: State, args_2: RunnableConfig>, ...args: unknown[]) => void | Promise | Promise<{ result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }> | { result: string | Command, string> | ToolMessage> | [string | (ContentBlock | ContentBlock.Data.DataContentBlock)[], ({ type: "resource"; resource: { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; text: string; } | { uri: string; mimeType?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; blob: string; }; annotations?: { audience?: ("assistant" | "user")[] | undefined; priority?: number | undefined; lastModified?: string | undefined; } | undefined; _meta?: { [x: string]: unknown; } | undefined; } | ContentBlock.Multimodal.Standard)[]]; }) | undefined; }>; type ToolHooks = z.input; //#endregion export { State, ToolHooks, toolHooksSchema }; //# sourceMappingURL=hooks.d.cts.map