/* * 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 * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; export type SetupWhatsAppAppWebhookRequest = { /** * The agent ID. */ id: string; /** * Optional external end-user identifier forwarded by the API gateway. */ xOnBehalfOf?: string | undefined; whatsAppWebhookSetupRequest: components.WhatsAppWebhookSetupRequest; }; export type SetupWhatsAppAppWebhookResponse = { headers: { [k: string]: Array }; result: components.WhatsAppWebhookSetup; }; /** @internal */ export const SetupWhatsAppAppWebhookRequest$inboundSchema: z.ZodType< SetupWhatsAppAppWebhookRequest, z.ZodTypeDef, unknown > = z.object({ id: z.string(), "X-On-Behalf-Of": z.string().optional(), WhatsAppWebhookSetupRequest: components.WhatsAppWebhookSetupRequest$inboundSchema, }).transform((v) => { return remap$(v, { "X-On-Behalf-Of": "xOnBehalfOf", "WhatsAppWebhookSetupRequest": "whatsAppWebhookSetupRequest", }); }); /** @internal */ export type SetupWhatsAppAppWebhookRequest$Outbound = { id: string; "X-On-Behalf-Of"?: string | undefined; WhatsAppWebhookSetupRequest: components.WhatsAppWebhookSetupRequest$Outbound; }; /** @internal */ export const SetupWhatsAppAppWebhookRequest$outboundSchema: z.ZodType< SetupWhatsAppAppWebhookRequest$Outbound, z.ZodTypeDef, SetupWhatsAppAppWebhookRequest > = z.object({ id: z.string(), xOnBehalfOf: z.string().optional(), whatsAppWebhookSetupRequest: components.WhatsAppWebhookSetupRequest$outboundSchema, }).transform((v) => { return remap$(v, { xOnBehalfOf: "X-On-Behalf-Of", whatsAppWebhookSetupRequest: "WhatsAppWebhookSetupRequest", }); }); export function setupWhatsAppAppWebhookRequestToJSON( setupWhatsAppAppWebhookRequest: SetupWhatsAppAppWebhookRequest, ): string { return JSON.stringify( SetupWhatsAppAppWebhookRequest$outboundSchema.parse( setupWhatsAppAppWebhookRequest, ), ); } export function setupWhatsAppAppWebhookRequestFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => SetupWhatsAppAppWebhookRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'SetupWhatsAppAppWebhookRequest' from JSON`, ); } /** @internal */ export const SetupWhatsAppAppWebhookResponse$inboundSchema: z.ZodType< SetupWhatsAppAppWebhookResponse, z.ZodTypeDef, unknown > = z.object({ Headers: z.record(z.array(z.string())).default({}), Result: components.WhatsAppWebhookSetup$inboundSchema, }).transform((v) => { return remap$(v, { "Headers": "headers", "Result": "result", }); }); /** @internal */ export type SetupWhatsAppAppWebhookResponse$Outbound = { Headers: { [k: string]: Array }; Result: components.WhatsAppWebhookSetup$Outbound; }; /** @internal */ export const SetupWhatsAppAppWebhookResponse$outboundSchema: z.ZodType< SetupWhatsAppAppWebhookResponse$Outbound, z.ZodTypeDef, SetupWhatsAppAppWebhookResponse > = z.object({ headers: z.record(z.array(z.string())), result: components.WhatsAppWebhookSetup$outboundSchema, }).transform((v) => { return remap$(v, { headers: "Headers", result: "Result", }); }); export function setupWhatsAppAppWebhookResponseToJSON( setupWhatsAppAppWebhookResponse: SetupWhatsAppAppWebhookResponse, ): string { return JSON.stringify( SetupWhatsAppAppWebhookResponse$outboundSchema.parse( setupWhatsAppAppWebhookResponse, ), ); } export function setupWhatsAppAppWebhookResponseFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => SetupWhatsAppAppWebhookResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'SetupWhatsAppAppWebhookResponse' from JSON`, ); }