/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; 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"; export type ResponseSleepCallInProgressEventArgs = { durationSeconds?: number | undefined; wakeAt?: string | undefined; reason?: string | undefined; }; export type ResponseSleepCallInProgressEvent = { type: "response.sleep_call.in_progress"; sequenceNumber: number; itemId: string; outputIndex: number; args?: ResponseSleepCallInProgressEventArgs | undefined; }; /** @internal */ export const ResponseSleepCallInProgressEventArgs$inboundSchema: z.ZodType< ResponseSleepCallInProgressEventArgs, z.ZodTypeDef, unknown > = z.object({ duration_seconds: z.number().int().optional(), wake_at: z.string().optional(), reason: z.string().optional(), }).transform((v) => { return remap$(v, { "duration_seconds": "durationSeconds", "wake_at": "wakeAt", }); }); /** @internal */ export type ResponseSleepCallInProgressEventArgs$Outbound = { duration_seconds?: number | undefined; wake_at?: string | undefined; reason?: string | undefined; }; /** @internal */ export const ResponseSleepCallInProgressEventArgs$outboundSchema: z.ZodType< ResponseSleepCallInProgressEventArgs$Outbound, z.ZodTypeDef, ResponseSleepCallInProgressEventArgs > = z.object({ durationSeconds: z.number().int().optional(), wakeAt: z.string().optional(), reason: z.string().optional(), }).transform((v) => { return remap$(v, { durationSeconds: "duration_seconds", wakeAt: "wake_at", }); }); export function responseSleepCallInProgressEventArgsToJSON( responseSleepCallInProgressEventArgs: ResponseSleepCallInProgressEventArgs, ): string { return JSON.stringify( ResponseSleepCallInProgressEventArgs$outboundSchema.parse( responseSleepCallInProgressEventArgs, ), ); } export function responseSleepCallInProgressEventArgsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ResponseSleepCallInProgressEventArgs$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ResponseSleepCallInProgressEventArgs' from JSON`, ); } /** @internal */ export const ResponseSleepCallInProgressEvent$inboundSchema: z.ZodType< ResponseSleepCallInProgressEvent, z.ZodTypeDef, unknown > = z.object({ type: z.literal("response.sleep_call.in_progress"), sequence_number: z.number().int(), item_id: z.string(), output_index: z.number().int(), args: z.lazy(() => ResponseSleepCallInProgressEventArgs$inboundSchema) .optional(), }).transform((v) => { return remap$(v, { "sequence_number": "sequenceNumber", "item_id": "itemId", "output_index": "outputIndex", }); }); /** @internal */ export type ResponseSleepCallInProgressEvent$Outbound = { type: "response.sleep_call.in_progress"; sequence_number: number; item_id: string; output_index: number; args?: ResponseSleepCallInProgressEventArgs$Outbound | undefined; }; /** @internal */ export const ResponseSleepCallInProgressEvent$outboundSchema: z.ZodType< ResponseSleepCallInProgressEvent$Outbound, z.ZodTypeDef, ResponseSleepCallInProgressEvent > = z.object({ type: z.literal("response.sleep_call.in_progress"), sequenceNumber: z.number().int(), itemId: z.string(), outputIndex: z.number().int(), args: z.lazy(() => ResponseSleepCallInProgressEventArgs$outboundSchema) .optional(), }).transform((v) => { return remap$(v, { sequenceNumber: "sequence_number", itemId: "item_id", outputIndex: "output_index", }); }); export function responseSleepCallInProgressEventToJSON( responseSleepCallInProgressEvent: ResponseSleepCallInProgressEvent, ): string { return JSON.stringify( ResponseSleepCallInProgressEvent$outboundSchema.parse( responseSleepCallInProgressEvent, ), ); } export function responseSleepCallInProgressEventFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ResponseSleepCallInProgressEvent$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ResponseSleepCallInProgressEvent' from JSON`, ); }