import { Column, DataType, Model, Table, } from 'sequelize-typescript'; import { LegacyTxTypes, TxStatus } from '../utils/enums'; import { TxFee } from './txFee'; @Table export class Tx extends Model { @Column({ primaryKey: true, type: DataType.INTEGER }) id: number; @Column({ type: DataType.STRING }) hash: string; @Column(DataType.DATE) timestamp: Date; @Column(DataType.ENUM({ values: Object.values(TxStatus) })) status: TxStatus; @Column(DataType.ENUM({ values: Object.values(LegacyTxTypes) })) type: LegacyTxTypes; @Column(DataType.JSONB) fee: TxFee; @Column(DataType.JSONB) data: object; @Column({ type: DataType.INTEGER }) nonce: number; @Column({ type: DataType.INTEGER }) code: number; @Column({ type: DataType.TEXT }) message: string; @Column(DataType.INTEGER) blockId: number; @Column(DataType.STRING) from: string; @Column({ type: DataType.STRING, defaultValue: null }) to: string; @Column(DataType.DATE) createdAt: Date; @Column(DataType.DATE) updatedAt: Date; }