'use strict'; module.exports = { async up(queryInterface, Sequelize) { await queryInterface.createTable('plan_policies', { policy_id: { type: Sequelize.BIGINT, primaryKey: true, autoIncrement: true }, plan_id: { type: Sequelize.BIGINT, allowNull: false, unique: true, references: { model: 'tier_plans', key: 'plan_id' }, onUpdate: 'CASCADE', onDelete: 'CASCADE' }, badge_asset_id: { type: Sequelize.BIGINT, allowNull: true, references: { model: 'assets', key: 'asset_id' }, onUpdate: 'CASCADE', onDelete: 'SET NULL' }, badge_label: { type: Sequelize.STRING(100), allowNull: false, defaultValue: '' }, badge_description: { type: Sequelize.TEXT, allowNull: true }, badge_information: { type: Sequelize.TEXT, allowNull: true }, access_rules: { type: Sequelize.JSONB, allowNull: false, defaultValue: [] }, createdAt: { type: Sequelize.DATE, allowNull: false }, updatedAt: { type: Sequelize.DATE, allowNull: false }, }); }, async down(queryInterface) { await queryInterface.dropTable('plan_policies'); }, };