import SequelizeDbConnector from "../../frameworks/sequelize"; import createGenericExtrModel from "../../frameworks/sequelize/models/generic-extr"; export default class Db { private _sequelizeDbConnector: SequelizeDbConnector; constructor(noInit = false) { if (!noInit) { this.initSequelizeDbConnector(); } } private async initSequelizeDbConnector() { await new Promise((resolve, reject) => { SequelizeDbConnector.instance.ready.subscribe({ complete: () => { this._sequelizeDbConnector = SequelizeDbConnector.instance; resolve(true); }, error: (err) => { reject(err); } }); }); }; public models() { return this._sequelizeDbConnector.sequelize.models; } public async defineModel(modelName: string) { await createGenericExtrModel(this._sequelizeDbConnector.sequelize, modelName); } }