import * as z from "zod/v4-mini"; import { CancelImmediatelyInvoicePolicy } from "./cancel-immediately-invoice-policy.js"; import { CancellationType } from "./cancellation-type.js"; import { ProrationBehavior } from "./proration-behavior.js"; export type CancelSubscriptionRequest = { /** * CancelAt is the exact date/time when the subscription should be cancelled. * * @remarks * Required for cancellation_type "scheduled_date"; optional for "immediate" (past dates only — backdated cancellation). * For "scheduled_date", accepts both future dates (deferred cancellation) and past dates (backdated cancellation). * For "immediate", accepts past/current dates only; use "scheduled_date" for future dates. */ cancelAt?: Date | undefined; cancelImmediatelyInovicePolicy?: CancelImmediatelyInvoicePolicy | undefined; cancellationType: CancellationType; prorationBehavior?: ProrationBehavior | undefined; /** * Reason for cancellation (for audit and business intelligence) */ reason?: string | undefined; }; /** @internal */ export type CancelSubscriptionRequest$Outbound = { cancel_at?: string | undefined; cancel_immediately_inovice_policy?: string | undefined; cancellation_type: string; proration_behavior?: string | undefined; reason?: string | undefined; }; /** @internal */ export declare const CancelSubscriptionRequest$outboundSchema: z.ZodMiniType; export declare function cancelSubscriptionRequestToJSON(cancelSubscriptionRequest: CancelSubscriptionRequest): string; //# sourceMappingURL=cancel-subscription-request.d.ts.map