Files
admin/src/models/resources.ts
2026-04-22 13:26:44 +08:00

58 lines
1.0 KiB
TypeScript

import type { ProductSku } from "./product_sku"
import type { User } from "./user"
type ResourceBase = {
id: number
user_id: number
resource_no: string
active: boolean
created_at: Date
updated_at: Date
deleted_at: Date | null
user: User
checkip:boolean
}
type ResourceShort = {
id: number
resource_id: number
type: number
live: number
quota: number
used: number
daily: number
last_at: Date | null
expire_at: Date
sku?: ProductSku
}
type ResourceLong = {
id: number
resource_id: number
type: number
live: number
quota: number
used: number
daily: number
last_at: Date | null
expire_at: Date
sku?: ProductSku
}
export type Resource<T extends 1 | 2 = 1 | 2> = ResourceBase &
(T extends 1
? {
type: 1
short: ResourceShort
}
: T extends 2
? {
type: 2
long: ResourceLong
}
: {})
export type Resources = Resource<1> | Resource<2>
export type ResourcesShort = ResourceShort
export type ResourcesLong = ResourceLong