'use strict'; module.exports = { up: async (queryInterface, Sequelize) => { await queryInterface.dropTable('Admins', { cascade: true }); await queryInterface.createTable('Admins', { id: { type: Sequelize.INTEGER, autoIncrement: true, primaryKey: true, allowNull: false, }, email: { type: Sequelize.STRING, allowNull: false, unique: true, }, password: { type: Sequelize.STRING, allowNull: false, }, role: { type: Sequelize.STRING, defaultValue: 'admin', }, firstName: { type: Sequelize.STRING, allowNull: false, }, lastName: { type: Sequelize.STRING, allowNull: false, }, username: { type: Sequelize.STRING, allowNull: false, unique: true, }, phoneNumber: { type: Sequelize.STRING, allowNull: false, unique: true, }, refreshToken: { type: Sequelize.STRING, allowNull: true, }, gender: { type: Sequelize.ENUM('male', 'female'), allowNull: false, }, createdAt: { type: Sequelize.DATE, allowNull: false, defaultValue: Sequelize.fn('NOW'), }, updatedAt: { type: Sequelize.DATE, allowNull: false, defaultValue: Sequelize.fn('NOW'), }, }); }, down: async (queryInterface, Sequelize) => { await queryInterface.dropTable('Admins'); }, };