import { BuildOptions , DataTypes , Model , Sequelize , UUIDV4 } from 'sequelize' ; export interface BidAttributes { id ? : string ; listingId : string ; userId : string ; amount : number ; createdAt ? : Date ; version ? : number ; } export interface BidModel extends Model < BidAttributes > , BidAttributes { } export class Bid extends Model < BidModel , BidAttributes > { } export type BidStatic = typeof Model & { new ( values ? , options ? ) : BidModel ; } ; const BidFactory = ( sequelize ) : BidStatic => { return < BidStatic > sequelize . define ( 'bids' , { id : { type : DataTypes . UUID , defaultValue : UUIDV4 , unique : true , primaryKey : true , } , listingId : { type : DataTypes . UUID , } , userId : { type : DataTypes . UUID , } , amount : { type : DataTypes . INTEGER , allowNull : false , } , createdAt : { type : DataTypes . DATE , allowNull : false , } , } , { version : true , } ) ; } ; export { BidFactory } ;