UNPKG

chargebee

Version:

A library for integrating with Chargebee.

1,020 lines 74.9 kB
"use strict"; // Generated Zod schemas: Estimate // Actions: createSubscription, createSubItemEstimate, createSubForCustomerEstimate, createSubItemForCustomerEstimate, updateSubscription, updateSubscriptionForItems, renewalEstimate, advanceInvoiceEstimate, regenerateInvoiceEstimate, upcomingInvoicesEstimate, changeTermEnd, cancelSubscription, cancelSubscriptionForItems, pauseSubscription, resumeSubscription, giftSubscription, giftSubscriptionForItems, createInvoice, createInvoiceForItems, paymentSchedules // Do not edit manually – regenerate via sdk-generator Object.defineProperty(exports, "__esModule", { value: true }); exports.PaymentSchedulesEstimateBodySchema = exports.CreateInvoiceForItemsEstimateBodySchema = exports.CreateInvoiceEstimateBodySchema = exports.GiftSubscriptionForItemsEstimateBodySchema = exports.GiftSubscriptionEstimateBodySchema = exports.ResumeSubscriptionEstimateBodySchema = exports.PauseSubscriptionEstimateBodySchema = exports.CancelSubscriptionForItemsEstimateBodySchema = exports.CancelSubscriptionEstimateBodySchema = exports.ChangeTermEndEstimateBodySchema = exports.UpcomingInvoicesEstimateEstimateBodySchema = exports.RegenerateInvoiceEstimateEstimateBodySchema = exports.AdvanceInvoiceEstimateEstimateBodySchema = exports.RenewalEstimateEstimateBodySchema = exports.UpdateSubscriptionForItemsEstimateBodySchema = exports.UpdateSubscriptionEstimateBodySchema = exports.CreateSubItemForCustomerEstimateEstimateBodySchema = exports.CreateSubForCustomerEstimateEstimateBodySchema = exports.CreateSubItemEstimateEstimateBodySchema = exports.CreateSubscriptionEstimateBodySchema = void 0; const zod_1 = require("zod"); //Estimate.createSubscription const CreateSubscriptionEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50).optional(), plan_id: zod_1.z.string().max(100), plan_quantity: zod_1.z.number().int().min(1).optional(), plan_quantity_in_decimal: zod_1.z.string().max(33).optional(), plan_unit_price: zod_1.z.number().int().min(0).optional(), plan_unit_price_in_decimal: zod_1.z.string().max(39).optional(), setup_fee: zod_1.z.number().int().min(0).optional(), trial_end: zod_1.z.number().int().optional(), start_date: zod_1.z.number().int().optional(), coupon: zod_1.z.string().max(100).optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), contract_term_billing_cycle_on_renewal: zod_1.z .number() .int() .min(1) .max(100) .optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const CreateSubscriptionEstimateBillingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubscriptionEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubscriptionEstimateCustomerSchema = zod_1.z.object({ vat_number: zod_1.z.string().max(20).optional(), vat_number_prefix: zod_1.z.string().max(10).optional(), registered_for_gst: zod_1.z.boolean().optional(), taxability: zod_1.z.enum(['taxable', 'exempt']).optional(), entity_code: zod_1.z .enum([ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'p', 'q', 'r', 'med1', 'med2', ]) .optional(), exempt_number: zod_1.z.string().max(100).optional(), exemption_details: zod_1.z.array(zod_1.z.string().optional()).optional(), customer_type: zod_1.z .enum(['residential', 'business', 'senior_citizen', 'industrial']) .optional(), }); const CreateSubscriptionEstimateContractTermSchema = zod_1.z.object({ action_at_term_end: zod_1.z.enum(['renew', 'evergreen', 'cancel']).optional(), cancellation_cutoff_period: zod_1.z.number().int().optional(), }); const CreateSubscriptionEstimateAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), }); const CreateSubscriptionEstimateEventBasedAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), service_period_in_days: zod_1.z .array(zod_1.z.number().int().min(1).max(4000).optional()) .optional(), on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().default(true).optional()).optional(), charge_on: zod_1.z.array(zod_1.z.enum(['immediately', 'on_event']).optional()).optional(), }); const CreateSubscriptionEstimateTaxProvidersFieldsSchema = zod_1.z.object({ provider_name: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), field_id: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), field_value: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), }); const CreateSubscriptionEstimateBodySchema = zod_1.z.looseObject({ billing_cycles: zod_1.z.number().int().min(0).optional(), mandatory_addons_to_remove: zod_1.z .array(zod_1.z.string().max(100).optional()) .optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), invoice_immediately: zod_1.z.boolean().optional(), invoice_date: zod_1.z.number().int().optional(), client_profile_id: zod_1.z.string().max(50).optional(), subscription: CreateSubscriptionEstimateSubscriptionSchema.optional(), billing_address: CreateSubscriptionEstimateBillingAddressSchema.optional(), shipping_address: CreateSubscriptionEstimateShippingAddressSchema.optional(), customer: CreateSubscriptionEstimateCustomerSchema.optional(), contract_term: CreateSubscriptionEstimateContractTermSchema.optional(), addons: CreateSubscriptionEstimateAddonsSchema.optional(), event_based_addons: CreateSubscriptionEstimateEventBasedAddonsSchema.optional(), tax_providers_fields: CreateSubscriptionEstimateTaxProvidersFieldsSchema.optional(), }); exports.CreateSubscriptionEstimateBodySchema = CreateSubscriptionEstimateBodySchema; //Estimate.createSubItemEstimate const CreateSubItemEstimateEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50).optional(), trial_end: zod_1.z.number().int().optional(), setup_fee: zod_1.z.number().int().min(0).optional(), start_date: zod_1.z.number().int().optional(), coupon: zod_1.z.string().max(100).optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), contract_term_billing_cycle_on_renewal: zod_1.z .number() .int() .min(1) .max(100) .optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const CreateSubItemEstimateEstimateBillingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubItemEstimateEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubItemEstimateEstimateCustomerSchema = zod_1.z.object({ vat_number: zod_1.z.string().max(20).optional(), vat_number_prefix: zod_1.z.string().max(10).optional(), registered_for_gst: zod_1.z.boolean().optional(), taxability: zod_1.z.enum(['taxable', 'exempt']).optional(), entity_code: zod_1.z .enum([ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'p', 'q', 'r', 'med1', 'med2', ]) .optional(), exempt_number: zod_1.z.string().max(100).optional(), exemption_details: zod_1.z.array(zod_1.z.string().optional()).optional(), customer_type: zod_1.z .enum(['residential', 'business', 'senior_citizen', 'industrial']) .optional(), }); const CreateSubItemEstimateEstimateContractTermSchema = zod_1.z.object({ action_at_term_end: zod_1.z.enum(['renew', 'evergreen', 'cancel']).optional(), contract_start: zod_1.z.number().int().optional(), cancellation_cutoff_period: zod_1.z.number().int().optional(), }); const CreateSubItemEstimateEstimateSubscriptionItemsSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), service_period_days: zod_1.z .array(zod_1.z.number().int().min(1).max(730).optional()) .optional(), charge_on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().optional()).optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), charge_on_option: zod_1.z .array(zod_1.z.enum(['immediately', 'on_event']).optional()) .optional(), }); const CreateSubItemEstimateEstimateDiscountsSchema = zod_1.z.object({ apply_on: zod_1.z .array(zod_1.z.enum(['invoice_amount', 'specific_item_price']).optional()) .optional(), duration_type: zod_1.z.array(zod_1.z.enum(['one_time', 'forever', 'limited_period']).optional()), percentage: zod_1.z.array(zod_1.z.number().min(0.01).max(100).optional()).optional(), amount: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), period: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), period_unit: zod_1.z .array(zod_1.z.enum(['day', 'week', 'month', 'year']).optional()) .optional(), included_in_mrr: zod_1.z.array(zod_1.z.boolean().optional()).optional(), item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), }); const CreateSubItemEstimateEstimateItemTiersSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), starting_unit: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), ending_unit: zod_1.z.array(zod_1.z.number().int().optional()).optional(), price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), starting_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), ending_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), pricing_type: zod_1.z .array(zod_1.z.enum(['per_unit', 'flat_fee', 'package']).optional()) .optional(), package_size: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), }); const CreateSubItemEstimateEstimateTaxProvidersFieldsSchema = zod_1.z.object({ provider_name: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), field_id: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), field_value: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), }); const CreateSubItemEstimateEstimateBodySchema = zod_1.z.looseObject({ billing_cycles: zod_1.z.number().int().min(0).optional(), mandatory_items_to_remove: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), invoice_immediately: zod_1.z.boolean().optional(), invoice_date: zod_1.z.number().int().optional(), client_profile_id: zod_1.z.string().max(50).optional(), subscription: CreateSubItemEstimateEstimateSubscriptionSchema.optional(), billing_address: CreateSubItemEstimateEstimateBillingAddressSchema.optional(), shipping_address: CreateSubItemEstimateEstimateShippingAddressSchema.optional(), customer: CreateSubItemEstimateEstimateCustomerSchema.optional(), contract_term: CreateSubItemEstimateEstimateContractTermSchema.optional(), subscription_items: CreateSubItemEstimateEstimateSubscriptionItemsSchema.optional(), discounts: CreateSubItemEstimateEstimateDiscountsSchema.optional(), item_tiers: CreateSubItemEstimateEstimateItemTiersSchema.optional(), tax_providers_fields: CreateSubItemEstimateEstimateTaxProvidersFieldsSchema.optional(), }); exports.CreateSubItemEstimateEstimateBodySchema = CreateSubItemEstimateEstimateBodySchema; //Estimate.createSubForCustomerEstimate const CreateSubForCustomerEstimateEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50).optional(), plan_id: zod_1.z.string().max(100), plan_quantity: zod_1.z.number().int().min(1).optional(), plan_quantity_in_decimal: zod_1.z.string().max(33).optional(), plan_unit_price: zod_1.z.number().int().min(0).optional(), plan_unit_price_in_decimal: zod_1.z.string().max(39).optional(), setup_fee: zod_1.z.number().int().min(0).optional(), trial_end: zod_1.z.number().int().optional(), start_date: zod_1.z.number().int().optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), contract_term_billing_cycle_on_renewal: zod_1.z .number() .int() .min(1) .max(100) .optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const CreateSubForCustomerEstimateEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubForCustomerEstimateEstimateContractTermSchema = zod_1.z.object({ action_at_term_end: zod_1.z.enum(['renew', 'evergreen', 'cancel']).optional(), cancellation_cutoff_period: zod_1.z.number().int().optional(), }); const CreateSubForCustomerEstimateEstimateAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), }); const CreateSubForCustomerEstimateEstimateEventBasedAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), service_period_in_days: zod_1.z .array(zod_1.z.number().int().min(1).max(4000).optional()) .optional(), on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().default(true).optional()).optional(), charge_on: zod_1.z.array(zod_1.z.enum(['immediately', 'on_event']).optional()).optional(), }); const CreateSubForCustomerEstimateEstimateBodySchema = zod_1.z.looseObject({ use_existing_balances: zod_1.z.boolean().default(true).optional(), invoice_immediately: zod_1.z.boolean().optional(), billing_cycles: zod_1.z.number().int().min(0).optional(), mandatory_addons_to_remove: zod_1.z .array(zod_1.z.string().max(100).optional()) .optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), invoice_date: zod_1.z.number().int().optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), subscription: CreateSubForCustomerEstimateEstimateSubscriptionSchema.optional(), shipping_address: CreateSubForCustomerEstimateEstimateShippingAddressSchema.optional(), contract_term: CreateSubForCustomerEstimateEstimateContractTermSchema.optional(), addons: CreateSubForCustomerEstimateEstimateAddonsSchema.optional(), event_based_addons: CreateSubForCustomerEstimateEstimateEventBasedAddonsSchema.optional(), }); exports.CreateSubForCustomerEstimateEstimateBodySchema = CreateSubForCustomerEstimateEstimateBodySchema; //Estimate.createSubItemForCustomerEstimate const CreateSubItemForCustomerEstimateEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50).optional(), trial_end: zod_1.z.number().int().optional(), setup_fee: zod_1.z.number().int().min(0).optional(), start_date: zod_1.z.number().int().optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), contract_term_billing_cycle_on_renewal: zod_1.z .number() .int() .min(1) .max(100) .optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const CreateSubItemForCustomerEstimateEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubItemForCustomerEstimateEstimateBillingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const CreateSubItemForCustomerEstimateEstimateContractTermSchema = zod_1.z.object({ action_at_term_end: zod_1.z.enum(['renew', 'evergreen', 'cancel']).optional(), contract_start: zod_1.z.number().int().optional(), cancellation_cutoff_period: zod_1.z.number().int().optional(), }); const CreateSubItemForCustomerEstimateEstimateBillingOverrideSchema = zod_1.z.object({ max_excess_payment_usage: zod_1.z.number().int().min(-1).optional(), max_refundable_credits_usage: zod_1.z.number().int().min(-1).optional(), }); const CreateSubItemForCustomerEstimateEstimateSubscriptionItemsSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), service_period_days: zod_1.z .array(zod_1.z.number().int().min(1).max(730).optional()) .optional(), charge_on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().optional()).optional(), item_type: zod_1.z .array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()) .optional(), charge_on_option: zod_1.z .array(zod_1.z.enum(['immediately', 'on_event']).optional()) .optional(), }); const CreateSubItemForCustomerEstimateEstimateDiscountsSchema = zod_1.z.object({ apply_on: zod_1.z .array(zod_1.z.enum(['invoice_amount', 'specific_item_price']).optional()) .optional(), duration_type: zod_1.z.array(zod_1.z.enum(['one_time', 'forever', 'limited_period']).optional()), percentage: zod_1.z.array(zod_1.z.number().min(0.01).max(100).optional()).optional(), amount: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), period: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), period_unit: zod_1.z .array(zod_1.z.enum(['day', 'week', 'month', 'year']).optional()) .optional(), included_in_mrr: zod_1.z.array(zod_1.z.boolean().optional()).optional(), item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), }); const CreateSubItemForCustomerEstimateEstimateItemTiersSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), starting_unit: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), ending_unit: zod_1.z.array(zod_1.z.number().int().optional()).optional(), price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), starting_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), ending_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), pricing_type: zod_1.z .array(zod_1.z.enum(['per_unit', 'flat_fee', 'package']).optional()) .optional(), package_size: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), }); const CreateSubItemForCustomerEstimateEstimateBodySchema = zod_1.z.looseObject({ use_existing_balances: zod_1.z.boolean().default(true).optional(), invoice_immediately: zod_1.z.boolean().optional(), billing_cycles: zod_1.z.number().int().min(0).optional(), mandatory_items_to_remove: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), invoice_date: zod_1.z.number().int().optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), subscription: CreateSubItemForCustomerEstimateEstimateSubscriptionSchema.optional(), shipping_address: CreateSubItemForCustomerEstimateEstimateShippingAddressSchema.optional(), billing_address: CreateSubItemForCustomerEstimateEstimateBillingAddressSchema.optional(), contract_term: CreateSubItemForCustomerEstimateEstimateContractTermSchema.optional(), billing_override: CreateSubItemForCustomerEstimateEstimateBillingOverrideSchema.optional(), subscription_items: CreateSubItemForCustomerEstimateEstimateSubscriptionItemsSchema.optional(), discounts: CreateSubItemForCustomerEstimateEstimateDiscountsSchema.optional(), item_tiers: CreateSubItemForCustomerEstimateEstimateItemTiersSchema.optional(), }); exports.CreateSubItemForCustomerEstimateEstimateBodySchema = CreateSubItemForCustomerEstimateEstimateBodySchema; //Estimate.updateSubscription const UpdateSubscriptionEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50), plan_id: zod_1.z.string().max(100).optional(), plan_quantity: zod_1.z.number().int().min(1).optional(), plan_unit_price: zod_1.z.number().int().min(0).optional(), setup_fee: zod_1.z.number().int().min(0).optional(), plan_quantity_in_decimal: zod_1.z.string().max(33).optional(), plan_unit_price_in_decimal: zod_1.z.string().max(39).optional(), start_date: zod_1.z.number().int().optional(), trial_end: zod_1.z.number().int().optional(), coupon: zod_1.z.string().max(100).optional(), auto_collection: zod_1.z.enum(['on', 'off']).optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const UpdateSubscriptionEstimateBillingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const UpdateSubscriptionEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const UpdateSubscriptionEstimateCustomerSchema = zod_1.z.object({ vat_number: zod_1.z.string().max(20).optional(), vat_number_prefix: zod_1.z.string().max(10).optional(), registered_for_gst: zod_1.z.boolean().optional(), taxability: zod_1.z.enum(['taxable', 'exempt']).optional(), }); const UpdateSubscriptionEstimateAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), proration_type: zod_1.z .array(zod_1.z.enum(['full_term', 'partial_term', 'none']).optional()) .optional(), }); const UpdateSubscriptionEstimateEventBasedAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), service_period_in_days: zod_1.z .array(zod_1.z.number().int().min(1).max(4000).optional()) .optional(), charge_on: zod_1.z.array(zod_1.z.enum(['immediately', 'on_event']).optional()).optional(), on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().default(true).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), }); const UpdateSubscriptionEstimateBodySchema = zod_1.z.looseObject({ changes_scheduled_at: zod_1.z.number().int().optional(), change_option: zod_1.z .enum(['immediately', 'end_of_term', 'specific_date']) .optional(), replace_addon_list: zod_1.z.boolean().default(false).optional(), mandatory_addons_to_remove: zod_1.z .array(zod_1.z.string().max(100).optional()) .optional(), invoice_date: zod_1.z.number().int().optional(), billing_cycles: zod_1.z.number().int().min(0).optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), reactivate_from: zod_1.z.number().int().optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), replace_coupon_list: zod_1.z.boolean().default(false).optional(), prorate: zod_1.z.boolean().optional(), end_of_term: zod_1.z.boolean().default(false).optional(), force_term_reset: zod_1.z.boolean().default(false).optional(), reactivate: zod_1.z.boolean().optional(), include_delayed_charges: zod_1.z.boolean().default(false).optional(), use_existing_balances: zod_1.z.boolean().default(true).optional(), invoice_immediately: zod_1.z.boolean().optional(), subscription: UpdateSubscriptionEstimateSubscriptionSchema.optional(), billing_address: UpdateSubscriptionEstimateBillingAddressSchema.optional(), shipping_address: UpdateSubscriptionEstimateShippingAddressSchema.optional(), customer: UpdateSubscriptionEstimateCustomerSchema.optional(), addons: UpdateSubscriptionEstimateAddonsSchema.optional(), event_based_addons: UpdateSubscriptionEstimateEventBasedAddonsSchema.optional(), }); exports.UpdateSubscriptionEstimateBodySchema = UpdateSubscriptionEstimateBodySchema; //Estimate.updateSubscriptionForItems const UpdateSubscriptionForItemsEstimateSubscriptionSchema = zod_1.z.object({ id: zod_1.z.string().max(50), setup_fee: zod_1.z.number().int().min(0).optional(), start_date: zod_1.z.number().int().optional(), trial_end: zod_1.z.number().int().optional(), coupon: zod_1.z.string().max(100).optional(), auto_collection: zod_1.z.enum(['on', 'off']).optional(), offline_payment_method: zod_1.z .enum([ 'no_preference', 'cash', 'check', 'bank_transfer', 'ach_credit', 'sepa_credit', 'boleto', 'us_automated_bank_transfer', 'eu_automated_bank_transfer', 'uk_automated_bank_transfer', 'jp_automated_bank_transfer', 'mx_automated_bank_transfer', 'custom', ]) .optional(), free_period: zod_1.z.number().int().min(1).optional(), free_period_unit: zod_1.z.enum(['day', 'week', 'month', 'year']).optional(), trial_end_action: zod_1.z .enum([ 'site_default', 'plan_default', 'activate_subscription', 'cancel_subscription', ]) .optional(), }); const UpdateSubscriptionForItemsEstimateBillingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const UpdateSubscriptionForItemsEstimateShippingAddressSchema = zod_1.z.object({ line1: zod_1.z.string().max(150).optional(), line2: zod_1.z.string().max(150).optional(), line3: zod_1.z.string().max(150).optional(), city: zod_1.z.string().max(50).optional(), state_code: zod_1.z.string().max(50).optional(), zip: zod_1.z.string().max(20).optional(), country: zod_1.z.string().max(50).optional(), validation_status: zod_1.z .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); const UpdateSubscriptionForItemsEstimateCustomerSchema = zod_1.z.object({ vat_number: zod_1.z.string().max(20).optional(), vat_number_prefix: zod_1.z.string().max(10).optional(), registered_for_gst: zod_1.z.boolean().optional(), taxability: zod_1.z.enum(['taxable', 'exempt']).optional(), }); const UpdateSubscriptionForItemsEstimateBillingOverrideSchema = zod_1.z.object({ max_excess_payment_usage: zod_1.z.number().int().min(-1).optional(), max_refundable_credits_usage: zod_1.z.number().int().min(-1).optional(), }); const UpdateSubscriptionForItemsEstimateSubscriptionItemsSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), unit_price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), billing_cycles: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), trial_end: zod_1.z.array(zod_1.z.number().int().optional()).optional(), service_period_days: zod_1.z .array(zod_1.z.number().int().min(1).max(730).optional()) .optional(), charge_on_event: zod_1.z .array(zod_1.z .enum([ 'subscription_creation', 'subscription_trial_start', 'plan_activation', 'subscription_activation', 'contract_termination', ]) .optional()) .optional(), charge_once: zod_1.z.array(zod_1.z.boolean().optional()).optional(), charge_on_option: zod_1.z .array(zod_1.z.enum(['immediately', 'on_event']).optional()) .optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), proration_type: zod_1.z .array(zod_1.z.enum(['full_term', 'partial_term', 'none']).optional()) .optional(), }); const UpdateSubscriptionForItemsEstimateDiscountsSchema = zod_1.z.object({ apply_on: zod_1.z .array(zod_1.z.enum(['invoice_amount', 'specific_item_price']).optional()) .optional(), duration_type: zod_1.z.array(zod_1.z.enum(['one_time', 'forever', 'limited_period']).optional()), percentage: zod_1.z.array(zod_1.z.number().min(0.01).max(100).optional()).optional(), amount: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), period: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), period_unit: zod_1.z .array(zod_1.z.enum(['day', 'week', 'month', 'year']).optional()) .optional(), included_in_mrr: zod_1.z.array(zod_1.z.boolean().optional()).optional(), item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), operation_type: zod_1.z.array(zod_1.z.enum(['add', 'remove']).optional()), id: zod_1.z.array(zod_1.z.string().max(50).optional()).optional(), }); const UpdateSubscriptionForItemsEstimateItemTiersSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), starting_unit: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), ending_unit: zod_1.z.array(zod_1.z.number().int().optional()).optional(), price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), starting_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), ending_unit_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), price_in_decimal: zod_1.z.array(zod_1.z.string().max(39).optional()).optional(), pricing_type: zod_1.z .array(zod_1.z.enum(['per_unit', 'flat_fee', 'package']).optional()) .optional(), package_size: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), }); const UpdateSubscriptionForItemsEstimateBodySchema = zod_1.z.looseObject({ changes_scheduled_at: zod_1.z.number().int().optional(), change_option: zod_1.z .enum(['immediately', 'end_of_term', 'specific_date']) .optional(), mandatory_items_to_remove: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), replace_items_list: zod_1.z.boolean().default(false).optional(), invoice_date: zod_1.z.number().int().optional(), billing_cycles: zod_1.z.number().int().min(0).optional(), terms_to_charge: zod_1.z.number().int().min(1).optional(), reactivate_from: zod_1.z.number().int().optional(), billing_alignment_mode: zod_1.z.enum(['immediate', 'delayed']).optional(), coupon_ids: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), replace_coupon_list: zod_1.z.boolean().default(false).optional(), prorate: zod_1.z.boolean().optional(), end_of_term: zod_1.z.boolean().default(false).optional(), force_term_reset: zod_1.z.boolean().default(false).optional(), reactivate: zod_1.z.boolean().optional(), include_delayed_charges: zod_1.z.boolean().default(false).optional(), use_existing_balances: zod_1.z.boolean().default(true).optional(), invoice_immediately: zod_1.z.boolean().optional(), invoice_usages: zod_1.z.boolean().default(false).optional(), subscription: UpdateSubscriptionForItemsEstimateSubscriptionSchema.optional(), billing_address: UpdateSubscriptionForItemsEstimateBillingAddressSchema.optional(), shipping_address: UpdateSubscriptionForItemsEstimateShippingAddressSchema.optional(), customer: UpdateSubscriptionForItemsEstimateCustomerSchema.optional(), billing_override: UpdateSubscriptionForItemsEstimateBillingOverrideSchema.optional(), subscription_items: UpdateSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), discounts: UpdateSubscriptionForItemsEstimateDiscountsSchema.optional(), item_tiers: UpdateSubscriptionForItemsEstimateItemTiersSchema.optional(), }); exports.UpdateSubscriptionForItemsEstimateBodySchema = UpdateSubscriptionForItemsEstimateBodySchema; //Estimate.renewalEstimate const RenewalEstimateEstimateBodySchema = zod_1.z.looseObject({ include_delayed_charges: zod_1.z.boolean().default(true).optional(), use_existing_balances: zod_1.z.boolean().default(true).optional(), ignore_scheduled_cancellation: zod_1.z.boolean().default(false).optional(), ignore_scheduled_changes: zod_1.z.boolean().default(false).optional(), exclude_tax_type: zod_1.z.enum(['exclusive', 'none']).optional(), }); exports.RenewalEstimateEstimateBodySchema = RenewalEstimateEstimateBodySchema; //Estimate.advanceInvoiceEstimate const AdvanceInvoiceEstimateEstimateFixedIntervalScheduleSchema = zod_1.z.object({ number_of_occurrences: zod_1.z.number().int().min(1).optional(), days_before_renewal: zod_1.z.number().int().min(1).optional(), end_schedule_on: zod_1.z .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) .optional(), end_date: zod_1.z.number().int().optional(), }); const AdvanceInvoiceEstimateEstimateSpecificDatesScheduleSchema = zod_1.z.object({ terms_to_charge: zod_1.z.array(zod_1.z.number().int().optional()).optional(), date: zod_1.z.array(zod_1.z.number().int().optional()).optional(), }); const AdvanceInvoiceEstimateEstimateBodySchema = zod_1.z.looseObject({ terms_to_charge: zod_1.z.number().int().min(1).optional(), invoice_immediately: zod_1.z.boolean().optional(), schedule_type: zod_1.z .enum(['immediate', 'specific_dates', 'fixed_intervals']) .optional(), fixed_interval_schedule: AdvanceInvoiceEstimateEstimateFixedIntervalScheduleSchema.optional(), specific_dates_schedule: AdvanceInvoiceEstimateEstimateSpecificDatesScheduleSchema.optional(), }); exports.AdvanceInvoiceEstimateEstimateBodySchema = AdvanceInvoiceEstimateEstimateBodySchema; //Estimate.regenerateInvoiceEstimate const RegenerateInvoiceEstimateEstimateBodySchema = zod_1.z.looseObject({ date_from: zod_1.z.number().int().optional(), date_to: zod_1.z.number().int().optional(), prorate: zod_1.z.boolean().optional(), invoice_immediately: zod_1.z.boolean().optional(), }); exports.RegenerateInvoiceEstimateEstimateBodySchema = RegenerateInvoiceEstimateEstimateBodySchema; //Estimate.upcomingInvoicesEstimate const UpcomingInvoicesEstimateEstimateBodySchema = zod_1.z.looseObject({ include_usage_charges: zod_1.z.boolean().default(false).optional(), }); exports.UpcomingInvoicesEstimateEstimateBodySchema = UpcomingInvoicesEstimateEstimateBodySchema; //Estimate.changeTermEnd const ChangeTermEndEstimateBodySchema = zod_1.z.looseObject({ term_ends_at: zod_1.z.number().int(), prorate: zod_1.z.boolean().optional(), invoice_immediately: zod_1.z.boolean().optional(), }); exports.ChangeTermEndEstimateBodySchema = ChangeTermEndEstimateBodySchema; //Estimate.cancelSubscription const CancelSubscriptionEstimateEventBasedAddonsSchema = zod_1.z.object({ id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().min(0).optional()).optional(), service_period_in_days: zod_1.z .array(zod_1.z.number().int().min(1).max(4000).optional()) .optional(), }); const CancelSubscriptionEstimateBodySchema = zod_1.z.looseObject({ cancel_option: zod_1.z .enum([ 'immediately', 'end_of_term', 'specific_date', 'end_of_billing_term', ]) .optional(), end_of_term: zod_1.z.boolean().default(false).optional(), cancel_at: zod_1.z.number().int().optional(), credit_option_for_current_term_charges: zod_1.z .enum(['none', 'prorate', 'full']) .optional(), unbilled_charges_option: zod_1.z.enum(['invoice', 'delete']).optional(), account_receivables_handling: zod_1.z .enum(['no_action', 'schedule_payment_collection', 'write_off']) .optional(), refundable_credits_handling: zod_1.z .enum(['no_action', 'schedule_refund']) .optional(), contract_term_cancel_option: zod_1.z .enum([ 'terminate_immediately', 'end_of_contract_term', 'specific_date', 'end_of_subscription_billing_term', ]) .optional(), invoice_date: zod_1.z.number().int().optional(), cancel_reason_code: zod_1.z.string().max(100).optional(), event_based_addons: CancelSubscriptionEstimateEventBasedAddonsSchema.optional(), }); exports.CancelSubscriptionEstimateBodySchema = CancelSubscriptionEstimateBodySchema; //Estimate.cancelSubscriptionForItems const CancelSubscriptionForItemsEstimateSubscriptionItemsSchema = zod_1.z.object({ item_price_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), quantity_in_decimal: zod_1.z.array(zod_1.z.string().max(33).optional()).optional(), unit_price: zod_1.z.array(zod_1.z.number().int().