import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Pending update to be applied to a subscription at the beginning of the next period.
 */
export type PendingSubscriptionUpdate = {
    /**
     * Creation timestamp of the object.
     */
    createdAt: Date;
    /**
     * Last modification timestamp of the object.
     */
    modifiedAt: Date | null;
    /**
     * The ID of the object.
     */
    id: string;
    /**
     * The date and time when the subscription update will be applied.
     */
    appliesAt: Date;
    /**
     * ID of the new product to apply to the subscription. If `null`, the product won't be changed.
     */
    productId: string | null;
    /**
     * Number of seats to apply to the subscription. If `null`, the number of seats won't be changed.
     */
    seats: number | null;
};
/** @internal */
export declare const PendingSubscriptionUpdate$inboundSchema: z.ZodMiniType<PendingSubscriptionUpdate, unknown>;
/** @internal */
export type PendingSubscriptionUpdate$Outbound = {
    created_at: string;
    modified_at: string | null;
    id: string;
    applies_at: string;
    product_id: string | null;
    seats: number | null;
};
/** @internal */
export declare const PendingSubscriptionUpdate$outboundSchema: z.ZodMiniType<PendingSubscriptionUpdate$Outbound, PendingSubscriptionUpdate>;
export declare function pendingSubscriptionUpdateToJSON(pendingSubscriptionUpdate: PendingSubscriptionUpdate): string;
export declare function pendingSubscriptionUpdateFromJSON(jsonString: string): SafeParseResult<PendingSubscriptionUpdate, SDKValidationError>;
//# sourceMappingURL=pendingsubscriptionupdate.d.ts.map