import{Model,FindOptions,STRING,BelongsTo,BelongsToGetAssociationMixin,BelongsToSetAssociationMixin,BelongsToCreateAssociationMixin,}from'sequelize'import{sequelize}from'../connection'exportclassUserextendsModel{staticassociations: {group: BelongsTo}id: numberusername: stringfirstName: stringlastName: stringcreatedAt: DateupdatedAt: Date// mixins for association (optional)groupId: numbergroup: UserGroupgetGroup: BelongsToGetAssociationMixin<UserGroup>setGroup: BelongsToSetAssociationMixin<UserGroup,number>createGroup: BelongsToCreateAssociationMixin<UserGroup>}User.init({username: STRING,firstName: STRING,lastName: STRING,},{ sequelize })// associate// it is important to import _after_ the model above is already exported so the circular reference works.import{UserGroup}from'./UserGroup'User.belongsTo(UserGroup,{as: 'group',foreignKey: 'groupId'})