@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.
36 lines • 1.69 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 { meteredComponentUnitPriceSchema, } from './containers/meteredComponentUnitPrice';
import { intervalUnitSchema } from './intervalUnit';
import { priceSchema } from './price';
import { pricingSchemeSchema } from './pricingScheme';
export const meteredComponentSchema = 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)))],
pricePoints: [
'price_points',
optional(array(lazy(() => componentPricePointItemSchema))),
],
unitPrice: ['unit_price', optional(meteredComponentUnitPriceSchema)],
taxCode: ['tax_code', optional(string())],
hideDateRangeOnInvoice: ['hide_date_range_on_invoice', 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=meteredComponent.js.map