import type { SubscriptionProductComponent } from './SubscriptionProductComponent'; import type { PersistableCurrencyAmount } from './PersistableCurrencyAmount'; import type { ProductFeeType } from './ProductFeeType'; /** * * @export * @interface ProductPeriodFee */ export interface ProductPeriodFee { /** * The amount charged to the customer for each billing cycle during the term of a subscription. * @type {Set} * @memberof ProductPeriodFee */ readonly periodFee?: Set; /** * The ID of the space this object belongs to. * @type {number} * @memberof ProductPeriodFee */ readonly linkedSpaceId?: number; /** * * @type {SubscriptionProductComponent} * @memberof ProductPeriodFee */ component?: SubscriptionProductComponent; /** * The number of subscription billing cycles that count as a trial phase and during which no fees are charged. * @type {number} * @memberof ProductPeriodFee */ readonly numberOfFreeTrialPeriods?: number; /** * The localized name of the fee that is displayed to the customer. * @type {{ [key: string]: string; }} * @memberof ProductPeriodFee */ readonly name?: { [key: string]: string; }; /** * The localized description of the fee that is displayed to the customer. * @type {{ [key: string]: string; }} * @memberof ProductPeriodFee */ readonly description?: { [key: string]: string; }; /** * A unique identifier for the object. * @type {number} * @memberof ProductPeriodFee */ readonly id?: number; /** * * @type {ProductFeeType} * @memberof ProductPeriodFee */ type?: ProductFeeType; /** * The version is used for optimistic locking and incremented whenever the object is updated. * @type {number} * @memberof ProductPeriodFee */ readonly version?: number; /** * The localized title that be used on ledger entries and invoices. * @type {{ [key: string]: string; }} * @memberof ProductPeriodFee */ readonly ledgerEntryTitle?: { [key: string]: string; }; } /** * Check if a given object implements the ProductPeriodFee interface. */ export declare function instanceOfProductPeriodFee(value: object): value is ProductPeriodFee; export declare function ProductPeriodFeeFromJSON(json: any): ProductPeriodFee; export declare function ProductPeriodFeeFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProductPeriodFee; export declare function ProductPeriodFeeToJSON(json: any): ProductPeriodFee; export declare function ProductPeriodFeeToJSONTyped(value?: Omit | null, ignoreDiscriminator?: boolean): any;