/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { MoneyTransferPullFromCard, MoneyTransferPullFromCard$inboundSchema, MoneyTransferPullFromCard$Outbound, MoneyTransferPullFromCard$outboundSchema, } from "./moneytransferpullfromcard.js"; import { MoneyTransferPushToCard, MoneyTransferPushToCard$inboundSchema, MoneyTransferPushToCard$Outbound, MoneyTransferPushToCard$outboundSchema, } from "./moneytransferpushtocard.js"; export type MoneyTransfer = { pullFromCard?: MoneyTransferPullFromCard | undefined; pushToCard?: MoneyTransferPushToCard | undefined; }; /** @internal */ export const MoneyTransfer$inboundSchema: z.ZodType< MoneyTransfer, z.ZodTypeDef, unknown > = z.object({ pullFromCard: MoneyTransferPullFromCard$inboundSchema.optional(), pushToCard: MoneyTransferPushToCard$inboundSchema.optional(), }); /** @internal */ export type MoneyTransfer$Outbound = { pullFromCard?: MoneyTransferPullFromCard$Outbound | undefined; pushToCard?: MoneyTransferPushToCard$Outbound | undefined; }; /** @internal */ export const MoneyTransfer$outboundSchema: z.ZodType< MoneyTransfer$Outbound, z.ZodTypeDef, MoneyTransfer > = z.object({ pullFromCard: MoneyTransferPullFromCard$outboundSchema.optional(), pushToCard: MoneyTransferPushToCard$outboundSchema.optional(), }); export function moneyTransferToJSON(moneyTransfer: MoneyTransfer): string { return JSON.stringify(MoneyTransfer$outboundSchema.parse(moneyTransfer)); } export function moneyTransferFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => MoneyTransfer$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'MoneyTransfer' from JSON`, ); }