/* * 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"; export type SubscriptionCouponInput = { couponCode: string; endDate?: Date | undefined; priceId?: string | undefined; startDate?: Date | undefined; }; /** @internal */ export type SubscriptionCouponInput$Outbound = { coupon_code: string; end_date?: string | undefined; price_id?: string | undefined; start_date?: string | undefined; }; /** @internal */ export const SubscriptionCouponInput$outboundSchema: z.ZodMiniType< SubscriptionCouponInput$Outbound, SubscriptionCouponInput > = z.pipe( z.object({ couponCode: z.string(), endDate: z.optional(z.pipe(z.date(), z.transform(v => v.toISOString()))), priceId: z.optional(z.string()), startDate: z.optional(z.pipe(z.date(), z.transform(v => v.toISOString()))), }), z.transform((v) => { return remap$(v, { couponCode: "coupon_code", endDate: "end_date", priceId: "price_id", startDate: "start_date", }); }), ); export function subscriptionCouponInputToJSON( subscriptionCouponInput: SubscriptionCouponInput, ): string { return JSON.stringify( SubscriptionCouponInput$outboundSchema.parse(subscriptionCouponInput), ); }