@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.
53 lines • 2.37 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 { componentCurrencyPriceSchema, } from './componentCurrencyPrice';
import { componentPriceSchema } from './componentPrice';
import { expirationIntervalUnitSchema, } from './expirationIntervalUnit';
import { intervalUnitSchema } from './intervalUnit';
import { pricePointTypeSchema } from './pricePointType';
import { pricingSchemeSchema } from './pricingScheme';
export const componentPricePointSchema = expandoObject({
id: ['id', optional(number())],
type: ['type', optional(pricePointTypeSchema)],
mDefault: ['default', optional(boolean())],
name: ['name', optional(string())],
pricingScheme: ['pricing_scheme', optional(pricingSchemeSchema)],
componentId: ['component_id', optional(number())],
handle: ['handle', optional(nullable(string()))],
archivedAt: ['archived_at', optional(nullable(string()))],
createdAt: ['created_at', optional(string())],
updatedAt: ['updated_at', optional(string())],
prices: ['prices', optional(array(lazy(() => componentPriceSchema)))],
useSiteExchangeRate: ['use_site_exchange_rate', optional(boolean())],
subscriptionId: ['subscription_id', optional(number())],
taxIncluded: ['tax_included', optional(boolean())],
interval: ['interval', optional(nullable(number()))],
intervalUnit: ['interval_unit', optional(nullable(intervalUnitSchema))],
currencyPrices: [
'currency_prices',
optional(array(lazy(() => componentCurrencyPriceSchema))),
],
overagePrices: [
'overage_prices',
optional(array(lazy(() => componentPriceSchema))),
],
overagePricingScheme: [
'overage_pricing_scheme',
optional(pricingSchemeSchema),
],
renewPrepaidAllocation: ['renew_prepaid_allocation', optional(boolean())],
rolloverPrepaidRemainder: [
'rollover_prepaid_remainder',
optional(boolean()),
],
expirationInterval: ['expiration_interval', optional(nullable(number()))],
expirationIntervalUnit: [
'expiration_interval_unit',
optional(nullable(expirationIntervalUnitSchema)),
],
});
//# sourceMappingURL=componentPricePoint.js.map