import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Customer } from "./customer.js";
import { SubscriptionCycledMetadata } from "./subscriptioncycledmetadata.js";
/**
 * An event created by Polar when a subscription is cycled.
 */
export type SubscriptionCycledEvent = {
    /**
     * The ID of the object.
     */
    id: string;
    /**
     * The timestamp of the event.
     */
    timestamp: Date;
    /**
     * The ID of the organization owning the event.
     */
    organizationId: string;
    /**
     * ID of the customer in your Polar organization associated with the event.
     */
    customerId: string | null;
    /**
     * The customer associated with the event.
     */
    customer: Customer | null;
    /**
     * ID of the customer in your system associated with the event.
     */
    externalCustomerId: string | null;
    /**
     * ID of the member within the customer's organization who performed the action inside B2B.
     */
    memberId?: string | null | undefined;
    /**
     * ID of the member in your system within the customer's organization who performed the action inside B2B.
     */
    externalMemberId?: string | null | undefined;
    /**
     * Number of direct child events linked to this event.
     */
    childCount: number;
    /**
     * The ID of the parent event.
     */
    parentId?: string | null | undefined;
    /**
     * Human readable label of the event type.
     */
    label: string;
    /**
     * The source of the event. `system` events are created by Polar. `user` events are the one you create through our ingestion API.
     */
    source: "system";
    /**
     * The name of the event.
     */
    name: "subscription.cycled";
    metadata: SubscriptionCycledMetadata;
};
/** @internal */
export declare const SubscriptionCycledEvent$inboundSchema: z.ZodMiniType<SubscriptionCycledEvent, unknown>;
export declare function subscriptionCycledEventFromJSON(jsonString: string): SafeParseResult<SubscriptionCycledEvent, SDKValidationError>;
//# sourceMappingURL=subscriptioncycledevent.d.ts.map