import type { SubscriptionAffiliate } from './SubscriptionAffiliate'; import type { Subscriber } from './Subscriber'; import type { SubscriptionState } from './SubscriptionState'; import type { Token } from './Token'; import type { SubscriptionProductVersion } from './SubscriptionProductVersion'; /** * * @export * @interface Subscription */ export interface Subscription { /** * * @type {Subscriber} * @memberof Subscription */ subscriber?: Subscriber; /** * The date and time when the object is planned to be permanently removed. If the value is empty, the object will not be removed. * @type {Date} * @memberof Subscription */ readonly plannedPurgeDate?: Date; /** * The ID of the user the subscription was terminated by. * @type {number} * @memberof Subscription */ readonly terminatedBy?: number; /** * A description used to identify the subscription. * @type {string} * @memberof Subscription */ readonly description?: string; /** * The language that is linked to the object. * @type {string} * @memberof Subscription */ readonly language?: string; /** * The date and time when the subscription was initialized. * @type {Date} * @memberof Subscription */ readonly initializedOn?: Date; /** * The date and time when the subscription was created. * @type {Date} * @memberof Subscription */ readonly createdOn?: Date; /** * The version is used for optimistic locking and incremented whenever the object is updated. * @type {number} * @memberof Subscription */ readonly version?: number; /** * * @type {Token} * @memberof Subscription */ token?: Token; /** * The merchant's reference used to identify the subscription. * @type {string} * @memberof Subscription */ readonly reference?: string; /** * The date and time when the subscription was terminated. * @type {Date} * @memberof Subscription */ readonly terminatedOn?: Date; /** * The ID of the space this object belongs to. * @type {number} * @memberof Subscription */ readonly linkedSpaceId?: number; /** * The date and time when the subscription was activate. * @type {Date} * @memberof Subscription */ readonly activatedOn?: Date; /** * The date and time when the termination of the subscription started. * @type {Date} * @memberof Subscription */ readonly terminatingOn?: Date; /** * * @type {SubscriptionProductVersion} * @memberof Subscription */ currentProductVersion?: SubscriptionProductVersion; /** * The date and time when the subscription is planned to be terminated. * @type {Date} * @memberof Subscription */ readonly plannedTerminationDate?: Date; /** * A unique identifier for the object. * @type {number} * @memberof Subscription */ readonly id?: number; /** * * @type {SubscriptionState} * @memberof Subscription */ state?: SubscriptionState; /** * * @type {SubscriptionAffiliate} * @memberof Subscription */ affiliate?: SubscriptionAffiliate; /** * The date and time when the subscription was scheduled to be terminated. * @type {Date} * @memberof Subscription */ readonly terminationScheduledOn?: Date; } /** * Check if a given object implements the Subscription interface. */ export declare function instanceOfSubscription(value: object): value is Subscription; export declare function SubscriptionFromJSON(json: any): Subscription; export declare function SubscriptionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Subscription; export declare function SubscriptionToJSON(json: any): Subscription; export declare function SubscriptionToJSONTyped(value?: Omit | null, ignoreDiscriminator?: boolean): any;