const { DataTypes } = require('sequelize'); module.exports = sequelize => { const User = sequelize.define( 'User', { id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true, }, username: { type: DataTypes.STRING(50), allowNull: false, unique: true, }, email: { type: DataTypes.STRING(100), allowNull: false, unique: true, validate: { isEmail: true }, }, passwordHash: { type: DataTypes.STRING(255), allowNull: false, }, isActive: { type: DataTypes.BOOLEAN, defaultValue: true, }, isVerified: { type: DataTypes.BOOLEAN, defaultValue: false, }, role: { type: DataTypes.ENUM('admin', 'developer', 'user'), defaultValue: 'user', }, }, { tableName: 'users', timestamps: true, } ); return User; };