"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const sequelize_1=require("sequelize");class icoAdminActivity extends sequelize_1.Model{static initModel(e){return icoAdminActivity.init({id:{type:sequelize_1.DataTypes.UUID,defaultValue:sequelize_1.DataTypes.UUIDV4,primaryKey:!0,allowNull:!1},type:{type:sequelize_1.DataTypes.STRING(50),allowNull:!1,validate:{notEmpty:{msg:"type: Activity type must not be empty"}}},offeringId:{type:sequelize_1.DataTypes.UUID,allowNull:!1,validate:{notNull:{msg:"offeringId: Offering ID cannot be null"},isUUID:{args:4,msg:"offeringId: Offering ID must be a valid UUID"}}},offeringName:{type:sequelize_1.DataTypes.STRING(191),allowNull:!1,validate:{notEmpty:{msg:"offeringName: Offering name must not be empty"}}},adminId:{type:sequelize_1.DataTypes.UUID,allowNull:!1,validate:{notNull:{msg:"adminId: Admin ID cannot be null"},isUUID:{args:4,msg:"adminId: Admin ID must be a valid UUID"}}},details:{type:sequelize_1.DataTypes.TEXT,allowNull:!0}},{sequelize:e,modelName:"icoAdminActivity",tableName:"ico_admin_activity",timestamps:!0,paranoid:!0,indexes:[{name:"PRIMARY",unique:!0,fields:[{name:"id"}]}]})}static associate(e){icoAdminActivity.belongsTo(e.icoTokenOffering,{as:"offering",foreignKey:"offeringId",onDelete:"CASCADE",onUpdate:"CASCADE"});icoAdminActivity.belongsTo(e.user,{as:"admin",foreignKey:"adminId",onDelete:"CASCADE",onUpdate:"CASCADE"})}}exports.default=icoAdminActivity;