/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: f3cdc62104da */ import * as z from "zod/v4"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { MCPUIToolMeta, MCPUIToolMeta$inboundSchema } from "./mcpuitoolmeta.js"; import { TurbineToolMeta, TurbineToolMeta$inboundSchema, } from "./turbinetoolmeta.js"; /** * Typed _meta for MCP tools. * * @remarks * * Only the 'ui' field is typed. Other fields are allowed via extra="allow". */ export type MCPToolMeta = { ui?: MCPUIToolMeta | null | undefined; aiMistralTurbine?: TurbineToolMeta | null | undefined; [additionalProperties: string]: unknown; }; /** @internal */ export const MCPToolMeta$inboundSchema: z.ZodType = z .object({ ui: z.nullable(MCPUIToolMeta$inboundSchema).optional(), "ai.mistral/turbine": z.nullable(TurbineToolMeta$inboundSchema).optional(), }).catchall(z.any()).transform((v) => { return remap$(v, { "ai.mistral/turbine": "aiMistralTurbine", }); }); export function mcpToolMetaFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => MCPToolMeta$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'MCPToolMeta' from JSON`, ); }