/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { ClosedEnum } from "../types/enums.js"; import { smartUnion } from "../types/smart-union.js"; export const ResponsesMessageInputItemRole = { System: "system", Developer: "developer", User: "user", Assistant: "assistant", } as const; export type ResponsesMessageInputItemRole = ClosedEnum< typeof ResponsesMessageInputItemRole >; export type Content = string | Array<{ [k: string]: any }>; export type ResponsesMessageInputItem = { type?: "message" | undefined; role: ResponsesMessageInputItemRole; content: string | Array<{ [k: string]: any }>; [additionalProperties: string]: unknown; }; /** @internal */ export const ResponsesMessageInputItemRole$outboundSchema: z.ZodMiniEnum< typeof ResponsesMessageInputItemRole > = z.enum(ResponsesMessageInputItemRole); /** @internal */ export type Content$Outbound = string | Array<{ [k: string]: any }>; /** @internal */ export const Content$outboundSchema: z.ZodMiniType = smartUnion([z.string(), z.array(z.record(z.string(), z.any()))]); export function contentToJSON(content: Content): string { return JSON.stringify(Content$outboundSchema.parse(content)); } /** @internal */ export type ResponsesMessageInputItem$Outbound = { type?: "message" | undefined; role: string; content: string | Array<{ [k: string]: any }>; [additionalProperties: string]: unknown; }; /** @internal */ export const ResponsesMessageInputItem$outboundSchema: z.ZodMiniType< ResponsesMessageInputItem$Outbound, ResponsesMessageInputItem > = z.catchall( z.object({ type: z.optional(z.literal("message")), role: ResponsesMessageInputItemRole$outboundSchema, content: smartUnion([z.string(), z.array(z.record(z.string(), z.any()))]), }), z.any(), ); export function responsesMessageInputItemToJSON( responsesMessageInputItem: ResponsesMessageInputItem, ): string { return JSON.stringify( ResponsesMessageInputItem$outboundSchema.parse(responsesMessageInputItem), ); }