/* * 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"; export type CardPayment = { statementDescriptor?: string | undefined; }; export type AchPayment = { companyName?: string | undefined; }; export type CreateAccountSettings = { cardPayment?: CardPayment | undefined; achPayment?: AchPayment | undefined; }; /** @internal */ export const CardPayment$inboundSchema: z.ZodType< CardPayment, z.ZodTypeDef, unknown > = z.object({ statementDescriptor: z.string().optional(), }); /** @internal */ export type CardPayment$Outbound = { statementDescriptor?: string | undefined; }; /** @internal */ export const CardPayment$outboundSchema: z.ZodType< CardPayment$Outbound, z.ZodTypeDef, CardPayment > = z.object({ statementDescriptor: z.string().optional(), }); export function cardPaymentToJSON(cardPayment: CardPayment): string { return JSON.stringify(CardPayment$outboundSchema.parse(cardPayment)); } export function cardPaymentFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => CardPayment$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CardPayment' from JSON`, ); } /** @internal */ export const AchPayment$inboundSchema: z.ZodType< AchPayment, z.ZodTypeDef, unknown > = z.object({ companyName: z.string().optional(), }); /** @internal */ export type AchPayment$Outbound = { companyName?: string | undefined; }; /** @internal */ export const AchPayment$outboundSchema: z.ZodType< AchPayment$Outbound, z.ZodTypeDef, AchPayment > = z.object({ companyName: z.string().optional(), }); export function achPaymentToJSON(achPayment: AchPayment): string { return JSON.stringify(AchPayment$outboundSchema.parse(achPayment)); } export function achPaymentFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => AchPayment$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AchPayment' from JSON`, ); } /** @internal */ export const CreateAccountSettings$inboundSchema: z.ZodType< CreateAccountSettings, z.ZodTypeDef, unknown > = z.object({ cardPayment: z.lazy(() => CardPayment$inboundSchema).optional(), achPayment: z.lazy(() => AchPayment$inboundSchema).optional(), }); /** @internal */ export type CreateAccountSettings$Outbound = { cardPayment?: CardPayment$Outbound | undefined; achPayment?: AchPayment$Outbound | undefined; }; /** @internal */ export const CreateAccountSettings$outboundSchema: z.ZodType< CreateAccountSettings$Outbound, z.ZodTypeDef, CreateAccountSettings > = z.object({ cardPayment: z.lazy(() => CardPayment$outboundSchema).optional(), achPayment: z.lazy(() => AchPayment$outboundSchema).optional(), }); export function createAccountSettingsToJSON( createAccountSettings: CreateAccountSettings, ): string { return JSON.stringify( CreateAccountSettings$outboundSchema.parse(createAccountSettings), ); } export function createAccountSettingsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => CreateAccountSettings$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateAccountSettings' from JSON`, ); }