/* * 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 WalletAvailableBalance = { /** * A 3-letter ISO 4217 currency code. */ currency: string; /** * Quantity in the smallest unit of the specified currency. * * @remarks * * In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99. */ value: number; valueDecimal: string; }; /** @internal */ export const WalletAvailableBalance$inboundSchema: z.ZodType< WalletAvailableBalance, z.ZodTypeDef, unknown > = z.object({ currency: z.string(), value: z.number().int(), valueDecimal: z.string(), }); /** @internal */ export type WalletAvailableBalance$Outbound = { currency: string; value: number; valueDecimal: string; }; /** @internal */ export const WalletAvailableBalance$outboundSchema: z.ZodType< WalletAvailableBalance$Outbound, z.ZodTypeDef, WalletAvailableBalance > = z.object({ currency: z.string(), value: z.number().int(), valueDecimal: z.string(), }); export function walletAvailableBalanceToJSON( walletAvailableBalance: WalletAvailableBalance, ): string { return JSON.stringify( WalletAvailableBalance$outboundSchema.parse(walletAvailableBalance), ); } export function walletAvailableBalanceFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => WalletAvailableBalance$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WalletAvailableBalance' from JSON`, ); }