Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 5x 5x 5x 5x 5x | import { ApiProperty } from '@nestjs/swagger'
import { IsEnum } from 'class-validator'
export class PaymentDTO {
@IsEnum(['single', 'family'])
@ApiProperty({
enum: ['single', 'family'],
description: 'Payment plan',
example: 'single',
})
plan: PaymentOptions
}
export type PaymentOptions = 'single' | 'family'
type CheckoutStatus = 'free' | 'pending' | 'paid' | 'failed'
export type CheckoutInformation = {
status: CheckoutStatus
lastInformationTime: number
}
type Plans = {
[key in PaymentOptions & 'free']: number
}
// Level of cost, used to determine if a user wants to falsly downgrade (yes could be an Enum but we don't want those due to TS shenanigans)
export const paymentPlans: Plans = {
free: -1,
single: 1,
family: 5,
}
|