/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: e089da49cde8 */ import * as z from "zod/v4"; import { remap as remap$ } from "../../lib/primitives.js"; import { ClosedEnum } from "../../types/enums.js"; import { CompletionArgs, CompletionArgs$Outbound, CompletionArgs$outboundSchema, } from "./completionargs.js"; import { ConversationInputs, ConversationInputs$Outbound, ConversationInputs$outboundSchema, } from "./conversationinputs.js"; import { ToolCallConfirmation, ToolCallConfirmation$Outbound, ToolCallConfirmation$outboundSchema, } from "./toolcallconfirmation.js"; export const ConversationAppendStreamRequestHandoffExecution = { Client: "client", Server: "server", } as const; export type ConversationAppendStreamRequestHandoffExecution = ClosedEnum< typeof ConversationAppendStreamRequestHandoffExecution >; export type ConversationAppendStreamRequest = { inputs?: ConversationInputs | undefined; stream?: true | undefined; /** * Whether to store the results into our servers or not. */ store?: boolean | undefined; handoffExecution?: | ConversationAppendStreamRequestHandoffExecution | undefined; /** * White-listed arguments from the completion API */ completionArgs?: CompletionArgs | undefined; toolConfirmations?: Array | null | undefined; }; /** @internal */ export const ConversationAppendStreamRequestHandoffExecution$outboundSchema: z.ZodEnum = z.enum( ConversationAppendStreamRequestHandoffExecution, ); /** @internal */ export type ConversationAppendStreamRequest$Outbound = { inputs?: ConversationInputs$Outbound | undefined; stream: true; store: boolean; handoff_execution: string; completion_args?: CompletionArgs$Outbound | undefined; tool_confirmations?: Array | null | undefined; }; /** @internal */ export const ConversationAppendStreamRequest$outboundSchema: z.ZodType< ConversationAppendStreamRequest$Outbound, ConversationAppendStreamRequest > = z.object({ inputs: ConversationInputs$outboundSchema.optional(), stream: z.literal(true).default(true as const), store: z.boolean().default(true), handoffExecution: ConversationAppendStreamRequestHandoffExecution$outboundSchema.default( "server", ), completionArgs: CompletionArgs$outboundSchema.optional(), toolConfirmations: z.nullable(z.array(ToolCallConfirmation$outboundSchema)) .optional(), }).transform((v) => { return remap$(v, { handoffExecution: "handoff_execution", completionArgs: "completion_args", toolConfirmations: "tool_confirmations", }); }); export function conversationAppendStreamRequestToJSON( conversationAppendStreamRequest: ConversationAppendStreamRequest, ): string { return JSON.stringify( ConversationAppendStreamRequest$outboundSchema.parse( conversationAppendStreamRequest, ), ); }