import { BelongsTo, Column, DataType, ForeignKey, Index, Model, Table } from 'sequelize-typescript'; import { Address } from './address'; import { Tx } from './tx'; @Table({ timestamps: true }) export class Check extends Model { @Index({ name: 'check-txId-index', using: 'HASH', }) @ForeignKey(() => Tx) @Column(DataType.INTEGER) txId: number; @BelongsTo(() => Tx) tx: Tx; @Index({ name: 'check-issuer-index', using: 'HASH', }) @ForeignKey(() => Address) @Column(DataType.INTEGER) issuerId: number; @BelongsTo(() => Address, 'issuerId') issuer: Address; @Index({ name: 'check-recipient-index', using: 'HASH', }) @ForeignKey(() => Address) @Column(DataType.INTEGER) recipientId: number; @BelongsTo(() => Address, 'recipientId') recipient: Address; @Index({ name: 'check-coin-index', using: 'BTREE', }) @Column(DataType.STRING) coin: string; @Column(DataType.STRING) amount: string; @Column(DataType.TEXT) check: string; @Column(DataType.STRING) proof: string; @Column(DataType.STRING) due_block: string; @Column(DataType.STRING) nonce: string; }