import type { BillingDayCustomization } from './BillingDayCustomization'; import type { BillingCycleType } from './BillingCycleType'; import type { DisplayableDayOfWeek } from './DisplayableDayOfWeek'; import type { DisplayableMonth } from './DisplayableMonth'; /** * * @export * @interface BillingCycleModel */ export interface BillingCycleModel { /** * * @type {DisplayableMonth} * @memberof BillingCycleModel */ month?: DisplayableMonth; /** * * @type {BillingDayCustomization} * @memberof BillingCycleModel */ customization?: BillingDayCustomization; /** * * @type {number} * @memberof BillingCycleModel */ dayOfMonth?: number; /** * * @type {DisplayableDayOfWeek} * @memberof BillingCycleModel */ weeklyDay?: DisplayableDayOfWeek; /** * Billing Cycle type multiplied by Number of Periods defines billing cycle duration, e.g. 3 months. Monthly types require 1-12; weekly and yearly types require 1-9 periods; and daily types require 1-30. * @type {number} * @memberof BillingCycleModel */ numberOfPeriods: number; /** * * @type {BillingCycleType} * @memberof BillingCycleModel */ billingCycleType: BillingCycleType; } /** * Check if a given object implements the BillingCycleModel interface. */ export declare function instanceOfBillingCycleModel(value: object): value is BillingCycleModel; export declare function BillingCycleModelFromJSON(json: any): BillingCycleModel; export declare function BillingCycleModelFromJSONTyped(json: any, ignoreDiscriminator: boolean): BillingCycleModel; export declare function BillingCycleModelToJSON(json: any): BillingCycleModel; export declare function BillingCycleModelToJSONTyped(value?: BillingCycleModel | null, ignoreDiscriminator?: boolean): any;