import type { SubscriptionProductState } from './SubscriptionProductState'; /** * A subscription product represents a product to which a subscriber can subscribe to. A product defines how much the subscription costs and in what cycles the subscribe is charged. * @export * @interface SubscriptionProductCreate */ export interface SubscriptionProductCreate { /** * When listing products, they can be sorted by this number. * @type {number} * @memberof SubscriptionProductCreate */ sortOrder?: number; /** * The name used to identify the product. * @type {string} * @memberof SubscriptionProductCreate */ name?: string; /** * Whether subscriptions can be switched to or from this product, or whether they are locked in. * @type {boolean} * @memberof SubscriptionProductCreate */ productLocked?: boolean; /** * * @type {SubscriptionProductState} * @memberof SubscriptionProductCreate */ state?: SubscriptionProductState; /** * The period after which a subscription that has been suspended due to a failed payment is terminated. * @type {string} * @memberof SubscriptionProductCreate */ failedPaymentSuspensionPeriod?: string; /** * The payment methods that can be used to subscribe to this product. If none are selected, no restriction is applied. * @type {Array} * @memberof SubscriptionProductCreate */ allowedPaymentMethodConfigurations?: Array; /** * The merchant's reference used to identify the product, e.g. the SKU. * @type {string} * @memberof SubscriptionProductCreate */ reference: string; } /** * Check if a given object implements the SubscriptionProductCreate interface. */ export declare function instanceOfSubscriptionProductCreate(value: object): value is SubscriptionProductCreate; export declare function SubscriptionProductCreateFromJSON(json: any): SubscriptionProductCreate; export declare function SubscriptionProductCreateFromJSONTyped(json: any, ignoreDiscriminator: boolean): SubscriptionProductCreate; export declare function SubscriptionProductCreateToJSON(json: any): SubscriptionProductCreate; export declare function SubscriptionProductCreateToJSONTyped(value?: SubscriptionProductCreate | null, ignoreDiscriminator?: boolean): any;