import { BaseEntity } from './base.entity';
import { UserSubscription } from './user-subscription.entity';
export declare enum UserSubscriptionTransactionTypeEnum {
    SUBSCRIPTION_INITIATED = "SUBSCRIPTION_INITIATED",
    CHECKOUT_SESSION_CREATED = "CHECKOUT_SESSION_CREATED",
    WEBHOOK_SUBSCRIPTION_SYNC = "WEBHOOK_SUBSCRIPTION_SYNC",
    SUBSCRIPTION_CANCELLED = "SUBSCRIPTION_CANCELLED"
}
export declare enum UserSubscriptionTransactionStatusEnum {
    PENDING = "PENDING",
    COMPLETED = "COMPLETED",
    FAILED = "FAILED",
    INFO = "INFO"
}
export declare class UserSubscriptionTransaction extends BaseEntity {
    userSubscriptionId: number;
    userSubscription: UserSubscription;
    userId: number;
    type: UserSubscriptionTransactionTypeEnum;
    status: UserSubscriptionTransactionStatusEnum;
    planName: string | null;
    amountMinor: number | null;
    currency: string | null;
    stripeEventId: string | null;
    stripeEventType: string | null;
    stripeSubscriptionId: string | null;
    stripeInvoiceId: string | null;
    description: string | null;
    invoiceUrl: string | null;
    checkoutRequestPayload: Record<string, unknown> | null;
    checkoutResponsePayload: Record<string, unknown> | null;
    webhookPayload: Record<string, unknown> | null;
    metadata: Record<string, unknown> | null;
}
