import type * as Square from "../../../../index"; /** * @example * { * subscriptionId: "subscription_id" * } */ export interface PauseSubscriptionRequest { /** The ID of the subscription to pause. */ subscriptionId: string; /** * The `YYYY-MM-DD`-formatted date when the scheduled `PAUSE` action takes place on the subscription. * * When this date is unspecified or falls within the current billing cycle, the subscription is paused * on the starting date of the next billing cycle. */ pauseEffectiveDate?: string | null; /** * The number of billing cycles the subscription will be paused before it is reactivated. * * When this is set, a `RESUME` action is also scheduled to take place on the subscription at * the end of the specified pause cycle duration. In this case, neither `resume_effective_date` * nor `resume_change_timing` may be specified. */ pauseCycleDuration?: bigint | null; /** * The date when the subscription is reactivated by a scheduled `RESUME` action. * This date must be at least one billing cycle ahead of `pause_effective_date`. */ resumeEffectiveDate?: string | null; /** * The timing whether the subscription is reactivated immediately or at the end of the billing cycle, relative to * `resume_effective_date`. * See [ChangeTiming](#type-changetiming) for possible values */ resumeChangeTiming?: Square.ChangeTiming; /** The user-provided reason to pause the subscription. */ pauseReason?: string | null; }