@maxio-com/advanced-billing-sdk
Version:
Ultimate billing and pricing flexibility for B2B SaaS. Maxio integrates directly into your product, so you can seamlessly manage your product catalog, bill customers, and collect payments.
40 lines • 1.98 kB
JavaScript
/**
* AdvancedBilling
*
* This file was automatically generated for Maxio by APIMATIC v3.0 ( https://www.apimatic.io ).
*/
import { array, boolean, expandoObject, lazy, nullable, number, optional, string, } from '../schema';
import { componentPricePointItemSchema, } from './componentPricePointItem';
import { quantityBasedComponentUnitPriceSchema, } from './containers/quantityBasedComponentUnitPrice';
import { creditTypeSchema } from './creditType';
import { intervalUnitSchema } from './intervalUnit';
import { priceSchema } from './price';
import { pricingSchemeSchema } from './pricingScheme';
export const quantityBasedComponentSchema = expandoObject({
name: ['name', string()],
unitName: ['unit_name', string()],
description: ['description', optional(string())],
handle: ['handle', optional(string())],
taxable: ['taxable', optional(boolean())],
pricingScheme: ['pricing_scheme', pricingSchemeSchema],
prices: ['prices', optional(array(lazy(() => priceSchema)))],
upgradeCharge: ['upgrade_charge', optional(nullable(creditTypeSchema))],
downgradeCredit: ['downgrade_credit', optional(nullable(creditTypeSchema))],
pricePoints: [
'price_points',
optional(array(lazy(() => componentPricePointItemSchema))),
],
unitPrice: ['unit_price', optional(quantityBasedComponentUnitPriceSchema)],
taxCode: ['tax_code', optional(string())],
hideDateRangeOnInvoice: ['hide_date_range_on_invoice', optional(boolean())],
recurring: ['recurring', optional(boolean())],
displayOnHostedPage: ['display_on_hosted_page', optional(boolean())],
allowFractionalQuantities: [
'allow_fractional_quantities',
optional(boolean()),
],
publicSignupPageIds: ['public_signup_page_ids', optional(array(number()))],
interval: ['interval', optional(number())],
intervalUnit: ['interval_unit', optional(nullable(intervalUnitSchema))],
});
//# sourceMappingURL=quantityBasedComponent.js.map