const Sequelize = require('sequelize'); const seqConn = new Sequelize({ dialect: 'sqlite', storage: `ndm.db`, pool: { max: 5, min: 0, acquire: 30000, idle: 10000, }, logging: console.log, }); // User const User = seqConn.define('User', { username: { type: Sequelize.TEXT, unique: true, allowNull: false, collate: 'NOCASE', }, password: { type: Sequelize.TEXT, allowNull: false }, power: { type: Sequelize.SMALLINT, allowNull: false, defaultValue: 0 } }); // RegisteredDomain const RegisteredDomain = seqConn.define('RegisteredDomain', { domain: { type: Sequelize.TEXT, allowNull: false }, tld: { type: Sequelize.TEXT, allowNull: false }, owner: { type: Sequelize.BIGINT.UNSIGNED, allowNull: false }, }, { indexes: [ { unique: true, fields: [ { name: 'domain', collate: 'NOCASE' }, { name: 'tld', collate: 'NOCASE' } ], }, ], }); ////// Exports ////// module.exports = { db: seqConn, models: { User, RegisteredDomain } }