"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const sequelize_1=require("sequelize");class icoTokenType extends sequelize_1.Model{static initModel(e){return icoTokenType.init({id:{type:sequelize_1.DataTypes.UUID,defaultValue:sequelize_1.DataTypes.UUIDV4,primaryKey:!0,allowNull:!1},name:{type:sequelize_1.DataTypes.STRING(191),allowNull:!1,validate:{notEmpty:{msg:"name: Token type name must not be empty"}}},value:{type:sequelize_1.DataTypes.STRING(191),allowNull:!1,validate:{notEmpty:{msg:"value: Token type value must not be empty"}}},description:{type:sequelize_1.DataTypes.TEXT,allowNull:!1,validate:{notEmpty:{msg:"description: Description must not be empty"}}},status:{type:sequelize_1.DataTypes.BOOLEAN,allowNull:!1,defaultValue:!0}},{sequelize:e,modelName:"icoTokenType",tableName:"ico_token_type",timestamps:!0,paranoid:!0,indexes:[{name:"PRIMARY",unique:!0,fields:[{name:"id"}]}]})}static associate(e){icoTokenType.hasMany(e.icoTokenOffering,{foreignKey:"typeId",as:"offerings",onDelete:"CASCADE",onUpdate:"CASCADE"})}}exports.default=icoTokenType;