import { BaseEntity, Column, Entity, Generated, PrimaryGeneratedColumn } from "typeorm";
@Entity({ name: "Subscription" })
export class Subscription extends BaseEntity {

    @PrimaryGeneratedColumn({ name: "id" })
    @Generated("uuid")
    id: string;

    @Column({name: "userId"})
    userId: String;

    @Column({name: "email"})
    email: String;

    @Column({ name: "stripePaymentId" })
    stripePaymentId: string;
    
    @Column("decimal", { name: "amount", precision: 10, scale: 2 })
    amount: number;

    @Column({ name: "currency" })
    currency: string;

    @Column({ name: "status" })
    status: string;
        
    @Column({ name: "paymentMethod", nullable: true})
    paymentMethod: string;

    @Column({ name: "isOneTimePayment" })
    isOneTimePayment: boolean;

    @Column({ name: "created_at", type: "timestamp", default: () => "CURRENT_TIMESTAMP", })
    created_at: Date;
        
    @Column({ name: "updated_at", type: "timestamp", default: () => "CURRENT_TIMESTAMP", })
    updated_at: Date;
}