Files
protocol/packages/pipeline/src/entities/SraOrder.ts
2018-12-04 14:24:06 -08:00

42 lines
1.5 KiB
TypeScript

import { BaseEntity, Column, Entity, PrimaryColumn } from 'typeorm';
import { AssetType } from '../types';
@Entity()
export class SraOrder extends BaseEntity {
@PrimaryColumn() public exchangeAddress!: string;
@PrimaryColumn() public orderHashHex!: string;
@Column() public sourceUrl!: string;
@Column() public lastUpdatedTimestamp!: number;
@Column() public firstSeenTimestamp!: number;
@Column() public makerAddress!: string;
@Column() public takerAddress!: string;
@Column() public feeRecipientAddress!: string;
@Column() public senderAddress!: string;
@Column() public makerAssetAmount!: string;
@Column() public takerAssetAmount!: string;
@Column() public makerFee!: string;
@Column() public takerFee!: string;
@Column() public expirationTimeSeconds!: string;
@Column() public salt!: string;
@Column() public signature!: string;
@Column() public rawMakerAssetData!: string;
@Column() public makerAssetType!: AssetType;
@Column() public makerAssetProxyId!: string;
@Column() public makerTokenAddress!: string;
@Column({ nullable: true, type: String })
public makerTokenId!: string | null;
@Column() public rawTakerAssetData!: string;
@Column() public takerAssetType!: AssetType;
@Column() public takerAssetProxyId!: string;
@Column() public takerTokenAddress!: string;
@Column({ nullable: true, type: String })
public takerTokenId!: string | null;
// TODO(albrow): Make this optional?
@Column() public metaDataJson!: string;
}