UNPKG

chargebee

Version:

A library for integrating with Chargebee.

270 lines (269 loc) 13.7 kB
"use strict"; // Generated Zod schemas: Addon // Actions: create, update, list, copy // Do not edit manually – regenerate via sdk-generator Object.defineProperty(exports, "__esModule", { value: true }); exports.CopyAddonBodySchema = exports.ListAddonBodySchema = exports.UpdateAddonBodySchema = exports.CreateAddonBodySchema = void 0; const zod_1 = require("zod"); //Addon.create const CreateAddonMetaDataSchema = zod_1.z.looseObject({}); const CreateAddonTiersSchema = zod_1.z.object({ 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(), }); const CreateAddonTaxProvidersFieldsSchema = zod_1.z.object({ provider_name: zod_1.z.array(zod_1.z.string().max(50).optional()), field_id: zod_1.z.array(zod_1.z.string().max(50).optional()), field_value: zod_1.z.array(zod_1.z.string().max(50).optional()), }); const CreateAddonBodySchema = zod_1.z.looseObject({ id: zod_1.z.string().max(100), name: zod_1.z.string().max(100), invoice_name: zod_1.z.string().max(100).optional(), description: zod_1.z.string().max(2000).optional(), charge_type: zod_1.z.enum(['recurring', 'non_recurring']), price: zod_1.z.number().int().min(0).optional(), currency_code: zod_1.z.string().max(3).optional(), period: zod_1.z.number().int().min(1).optional(), period_unit: zod_1.z .enum(['day', 'week', 'month', 'year', 'not_applicable']) .optional(), pricing_model: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), type: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), unit: zod_1.z.string().max(30).optional(), enabled_in_portal: zod_1.z.boolean().default(true).optional(), taxable: zod_1.z.boolean().default(true).optional(), tax_profile_id: zod_1.z.string().max(50).optional(), avalara_sale_type: zod_1.z .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) .optional(), avalara_transaction_type: zod_1.z.number().int().optional(), avalara_service_type: zod_1.z.number().int().optional(), tax_code: zod_1.z.string().max(50).optional(), hsn_code: zod_1.z.string().max(50).optional(), taxjar_product_code: zod_1.z.string().max(50).optional(), invoice_notes: zod_1.z.string().max(2000).optional(), meta_data: CreateAddonMetaDataSchema.optional(), sku: zod_1.z.string().max(100).optional(), accounting_code: zod_1.z.string().max(100).optional(), accounting_category1: zod_1.z.string().max(100).optional(), accounting_category2: zod_1.z.string().max(100).optional(), accounting_category3: zod_1.z.string().max(100).optional(), accounting_category4: zod_1.z.string().max(100).optional(), is_shippable: zod_1.z.boolean().default(false).optional(), shipping_frequency_period: zod_1.z.number().int().min(1).optional(), shipping_frequency_period_unit: zod_1.z .enum(['year', 'month', 'week', 'day']) .optional(), included_in_mrr: zod_1.z.boolean().optional(), show_description_in_invoices: zod_1.z.boolean().default(false).optional(), show_description_in_quotes: zod_1.z.boolean().default(false).optional(), price_in_decimal: zod_1.z.string().max(39).optional(), proration_type: zod_1.z .enum(['site_default', 'partial_term', 'full_term']) .optional(), status: zod_1.z.enum(['active', 'archived']).optional(), tiers: CreateAddonTiersSchema.optional(), tax_providers_fields: CreateAddonTaxProvidersFieldsSchema.optional(), }); exports.CreateAddonBodySchema = CreateAddonBodySchema; //Addon.update const UpdateAddonMetaDataSchema = zod_1.z.looseObject({}); const UpdateAddonTiersSchema = zod_1.z.object({ 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(), }); const UpdateAddonTaxProvidersFieldsSchema = zod_1.z.object({ provider_name: zod_1.z.array(zod_1.z.string().max(50).optional()), field_id: zod_1.z.array(zod_1.z.string().max(50).optional()), field_value: zod_1.z.array(zod_1.z.string().max(50).optional()), }); const UpdateAddonBodySchema = zod_1.z.looseObject({ name: zod_1.z.string().max(100).optional(), invoice_name: zod_1.z.string().max(100).optional(), description: zod_1.z.string().max(2000).optional(), charge_type: zod_1.z.enum(['recurring', 'non_recurring']).optional(), price: zod_1.z.number().int().min(0).optional(), currency_code: zod_1.z.string().max(3).optional(), period: zod_1.z.number().int().min(1).optional(), period_unit: zod_1.z .enum(['day', 'week', 'month', 'year', 'not_applicable']) .optional(), pricing_model: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), type: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), unit: zod_1.z.string().max(30).optional(), enabled_in_portal: zod_1.z.boolean().default(true).optional(), taxable: zod_1.z.boolean().default(true).optional(), tax_profile_id: zod_1.z.string().max(50).optional(), avalara_sale_type: zod_1.z .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) .optional(), avalara_transaction_type: zod_1.z.number().int().optional(), avalara_service_type: zod_1.z.number().int().optional(), tax_code: zod_1.z.string().max(50).optional(), hsn_code: zod_1.z.string().max(50).optional(), taxjar_product_code: zod_1.z.string().max(50).optional(), invoice_notes: zod_1.z.string().max(2000).optional(), meta_data: UpdateAddonMetaDataSchema.optional(), sku: zod_1.z.string().max(100).optional(), accounting_code: zod_1.z.string().max(100).optional(), accounting_category1: zod_1.z.string().max(100).optional(), accounting_category2: zod_1.z.string().max(100).optional(), accounting_category3: zod_1.z.string().max(100).optional(), accounting_category4: zod_1.z.string().max(100).optional(), is_shippable: zod_1.z.boolean().default(false).optional(), shipping_frequency_period: zod_1.z.number().int().min(1).optional(), shipping_frequency_period_unit: zod_1.z .enum(['year', 'month', 'week', 'day']) .optional(), included_in_mrr: zod_1.z.boolean().optional(), show_description_in_invoices: zod_1.z.boolean().default(false).optional(), show_description_in_quotes: zod_1.z.boolean().default(false).optional(), price_in_decimal: zod_1.z.string().max(39).optional(), proration_type: zod_1.z .enum(['site_default', 'partial_term', 'full_term']) .optional(), tiers: UpdateAddonTiersSchema.optional(), tax_providers_fields: UpdateAddonTaxProvidersFieldsSchema.optional(), }); exports.UpdateAddonBodySchema = UpdateAddonBodySchema; //Addon.list const ListAddonIdSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListAddonNameSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListAddonPricingModelSchema = zod_1.z.object({ is: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), is_not: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), in: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), not_in: zod_1.z .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) .optional(), }); const ListAddonTypeSchema = zod_1.z.object({ is: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), is_not: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), in: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), not_in: zod_1.z .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) .optional(), }); const ListAddonChargeTypeSchema = zod_1.z.object({ is: zod_1.z.enum(['recurring', 'non_recurring']).optional(), is_not: zod_1.z.enum(['recurring', 'non_recurring']).optional(), in: zod_1.z.enum(['recurring', 'non_recurring']).optional(), not_in: zod_1.z.enum(['recurring', 'non_recurring']).optional(), }); const ListAddonPriceSchema = zod_1.z.object({ is: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), lt: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), lte: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), gt: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), gte: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), between: zod_1.z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListAddonPeriodSchema = zod_1.z.object({ is: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), is_not: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), lt: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), lte: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), gt: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), gte: zod_1.z.string().regex(RegExp('^-?\\d+$')).optional(), between: zod_1.z.string().regex(RegExp('^\\[-?\\d+,-?\\d+\\]$')).optional(), }); const ListAddonPeriodUnitSchema = zod_1.z.object({ is: zod_1.z.enum(['day', 'week', 'month', 'year', 'not_applicable']).optional(), is_not: zod_1.z.enum(['day', 'week', 'month', 'year', 'not_applicable']).optional(), in: zod_1.z.enum(['day', 'week', 'month', 'year', 'not_applicable']).optional(), not_in: zod_1.z.enum(['day', 'week', 'month', 'year', 'not_applicable']).optional(), }); const ListAddonStatusSchema = zod_1.z.object({ is: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), is_not: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), in: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), not_in: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), }); const ListAddonUpdatedAtSchema = zod_1.z.object({ after: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), before: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), on: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), between: zod_1.z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(), }); const ListAddonCurrencyCodeSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListAddonChannelSchema = zod_1.z.object({ is: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), is_not: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), in: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), not_in: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), }); const ListAddonBodySchema = zod_1.z.looseObject({ limit: zod_1.z.number().int().min(1).max(100).optional(), offset: zod_1.z.string().max(1000).optional(), id: ListAddonIdSchema.optional(), name: ListAddonNameSchema.optional(), pricing_model: ListAddonPricingModelSchema.optional(), type: ListAddonTypeSchema.optional(), charge_type: ListAddonChargeTypeSchema.optional(), price: ListAddonPriceSchema.optional(), period: ListAddonPeriodSchema.optional(), period_unit: ListAddonPeriodUnitSchema.optional(), status: ListAddonStatusSchema.optional(), updated_at: ListAddonUpdatedAtSchema.optional(), currency_code: ListAddonCurrencyCodeSchema.optional(), channel: ListAddonChannelSchema.optional(), include_deleted: zod_1.z.boolean().default(false).optional(), }); exports.ListAddonBodySchema = ListAddonBodySchema; //Addon.copy const CopyAddonBodySchema = zod_1.z.looseObject({ from_site: zod_1.z.string().max(50), id_at_from_site: zod_1.z.string().max(100), id: zod_1.z.string().max(100).optional(), for_site_merging: zod_1.z.boolean().default(false).optional(), }); exports.CopyAddonBodySchema = CopyAddonBodySchema;