llmProviderToolCallSchema: ZodUnion<
    [
        ZodObject<
            {
                function: ZodObject<
                    { arguments: ZodString; name: ZodString },
                    "passthrough",
                    ZodTypeAny,
                    objectOutputType<
                        { arguments: ZodString; name: ZodString },
                        ZodTypeAny,
                        "passthrough",
                    >,
                    objectInputType<
                        { arguments: ZodString; name: ZodString },
                        ZodTypeAny,
                        "passthrough",
                    >,
                >;
                id: ZodString;
                type: ZodEffects<
                    ZodOptional<ZodLiteral<"function">>,
                    "function",
                    undefined | "function",
                >;
            },
            "strip",
            ZodTypeAny,
            {
                function: { arguments: string; name: string } & {
                    [k: string]: unknown;
                };
                id: string;
                type: "function";
            },
            {
                function: { arguments: string; name: string } & {
                    [k: string]: unknown;
                };
                id: string;
                type?: "function";
            },
        >,
        ZodObject<
            {
                id: ZodString;
                input: ZodType<JSONLiteral, ZodTypeDef, JSONLiteral>;
                name: ZodString;
                type: ZodLiteral<"tool_use">;
            },
            "strip",
            ZodTypeAny,
            { id: string; input: JSONLiteral; name: string; type: "tool_use" },
            { id: string; input: JSONLiteral; name: string; type: "tool_use" },
        >,
        ZodObject<
            {
                tool_call: ZodObject<
                    {
                        arguments: ZodString;
                        name: ZodString;
                        type: ZodLiteral<"function">;
                    },
                    "strip",
                    ZodTypeAny,
                    { arguments: string; name: string; type: "function" },
                    { arguments: string; name: string; type: "function" },
                >;
                tool_call_id: ZodString;
                type: ZodLiteral<"tool_call">;
            },
            "strip",
            ZodTypeAny,
            {
                tool_call: { arguments: string; name: string; type: "function" };
                tool_call_id: string;
                type: "tool_call";
            },
            {
                tool_call: { arguments: string; name: string; type: "function" };
                tool_call_id: string;
                type: "tool_call";
            },
        >,
        ZodObject<
            {
                args: ZodType<JSONLiteral, ZodTypeDef, JSONLiteral>;
                toolCallId: ZodString;
                toolName: ZodString;
                type: ZodLiteral<"tool-call">;
            },
            "strip",
            ZodTypeAny,
            {
                args: JSONLiteral;
                toolCallId: string;
                toolName: string;
                type: "tool-call";
            },
            {
                args: JSONLiteral;
                toolCallId: string;
                toolName: string;
                type: "tool-call";
            },
        >,
    ],
> = ...

Union of all tool call formats

This is useful for functions that need to accept any tool call format