/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { ProductPriceCustom, ProductPriceCustom$inboundSchema, ProductPriceCustom$Outbound, ProductPriceCustom$outboundSchema, } from "./productpricecustom.js"; import { ProductPriceFixed, ProductPriceFixed$inboundSchema, ProductPriceFixed$Outbound, ProductPriceFixed$outboundSchema, } from "./productpricefixed.js"; import { ProductPriceFree, ProductPriceFree$inboundSchema, ProductPriceFree$Outbound, ProductPriceFree$outboundSchema, } from "./productpricefree.js"; import { ProductPriceMeteredUnit, ProductPriceMeteredUnit$inboundSchema, ProductPriceMeteredUnit$Outbound, ProductPriceMeteredUnit$outboundSchema, } from "./productpricemeteredunit.js"; import { ProductPriceSeatBased, ProductPriceSeatBased$inboundSchema, ProductPriceSeatBased$Outbound, ProductPriceSeatBased$outboundSchema, } from "./productpriceseatbased.js"; export type ProductPrice = | ProductPriceCustom | ProductPriceFixed | ProductPriceFree | ProductPriceMeteredUnit | ProductPriceSeatBased; /** @internal */ export const ProductPrice$inboundSchema: z.ZodMiniType = z.union([ ProductPriceCustom$inboundSchema, ProductPriceFixed$inboundSchema, ProductPriceFree$inboundSchema, ProductPriceMeteredUnit$inboundSchema, ProductPriceSeatBased$inboundSchema, ]); /** @internal */ export type ProductPrice$Outbound = | ProductPriceCustom$Outbound | ProductPriceFixed$Outbound | ProductPriceFree$Outbound | ProductPriceMeteredUnit$Outbound | ProductPriceSeatBased$Outbound; /** @internal */ export const ProductPrice$outboundSchema: z.ZodMiniType< ProductPrice$Outbound, ProductPrice > = z.union([ ProductPriceCustom$outboundSchema, ProductPriceFixed$outboundSchema, ProductPriceFree$outboundSchema, ProductPriceMeteredUnit$outboundSchema, ProductPriceSeatBased$outboundSchema, ]); export function productPriceToJSON(productPrice: ProductPrice): string { return JSON.stringify(ProductPrice$outboundSchema.parse(productPrice)); } export function productPriceFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProductPrice$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProductPrice' from JSON`, ); }