import type { PersistableCurrencyAmountUpdate } from './PersistableCurrencyAmountUpdate'; /** * * @export * @interface ProductSetupFeeUpdate */ export interface ProductSetupFeeUpdate { /** * The product component that the fee belongs to. * @type {number} * @memberof ProductSetupFeeUpdate */ component?: number; /** * The localized name of the fee that is displayed to the customer. * @type {{ [key: string]: string; }} * @memberof ProductSetupFeeUpdate */ name?: { [key: string]: string; }; /** * The localized description of the fee that is displayed to the customer. * @type {{ [key: string]: string; }} * @memberof ProductSetupFeeUpdate */ description?: { [key: string]: string; }; /** * The amount charged to the customer once when they subscribe to a subscription. * @type {Set} * @memberof ProductSetupFeeUpdate */ setupFee?: Set; /** * The amount charged to the customer when a subscription is downgraded. * @type {Set} * @memberof ProductSetupFeeUpdate */ onDowngradeCreditedAmount?: Set; /** * The version number indicates the version of the entity. The version is incremented whenever the entity is changed. * @type {number} * @memberof ProductSetupFeeUpdate */ version: number; /** * The amount charged to the customer when a subscription is upgraded. * @type {Set} * @memberof ProductSetupFeeUpdate */ onUpgradeCreditedAmount?: Set; } /** * Check if a given object implements the ProductSetupFeeUpdate interface. */ export declare function instanceOfProductSetupFeeUpdate(value: object): value is ProductSetupFeeUpdate; export declare function ProductSetupFeeUpdateFromJSON(json: any): ProductSetupFeeUpdate; export declare function ProductSetupFeeUpdateFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProductSetupFeeUpdate; export declare function ProductSetupFeeUpdateToJSON(json: any): ProductSetupFeeUpdate; export declare function ProductSetupFeeUpdateToJSONTyped(value?: ProductSetupFeeUpdate | null, ignoreDiscriminator?: boolean): any;