/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import * as types from "../../types/primitives.js"; import { AttributedToCustomerResult, AttributedToCustomerResult$inboundSchema, } from "./attributed-to-customer-result.js"; import { CustomerLookupResult, CustomerLookupResult$inboundSchema, } from "./customer-lookup-result.js"; import { FailurePoint, FailurePoint$inboundSchema } from "./failure-point.js"; import { MeterMatchingResult, MeterMatchingResult$inboundSchema, } from "./meter-matching-result.js"; import { PriceLookupResult, PriceLookupResult$inboundSchema, } from "./price-lookup-result.js"; import { SDKValidationError } from "./sdk-validation-error.js"; import { SubscriptionLineItemLookupResult, SubscriptionLineItemLookupResult$inboundSchema, } from "./subscription-line-item-lookup-result.js"; export type DebugTracker = { attributedToCustomer?: AttributedToCustomerResult | undefined; customerLookup?: CustomerLookupResult | undefined; failurePoint?: FailurePoint | undefined; meterMatching?: MeterMatchingResult | undefined; priceLookup?: PriceLookupResult | undefined; subscriptionLineItemLookup?: SubscriptionLineItemLookupResult | undefined; }; /** @internal */ export const DebugTracker$inboundSchema: z.ZodMiniType = z.pipe( z.object({ attributed_to_customer: types.optional( AttributedToCustomerResult$inboundSchema, ), customer_lookup: types.optional(CustomerLookupResult$inboundSchema), failure_point: types.optional(FailurePoint$inboundSchema), meter_matching: types.optional(MeterMatchingResult$inboundSchema), price_lookup: types.optional(PriceLookupResult$inboundSchema), subscription_line_item_lookup: types.optional( SubscriptionLineItemLookupResult$inboundSchema, ), }), z.transform((v) => { return remap$(v, { "attributed_to_customer": "attributedToCustomer", "customer_lookup": "customerLookup", "failure_point": "failurePoint", "meter_matching": "meterMatching", "price_lookup": "priceLookup", "subscription_line_item_lookup": "subscriptionLineItemLookup", }); }), ); export function debugTrackerFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => DebugTracker$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DebugTracker' from JSON`, ); }