{
  "version": "5",
  "dialect": "mysql",
  "id": "749090f9-ea8b-43d8-a6a7-9d9295097cc9",
  "prevId": "855b17c2-0ce1-431a-8d1f-446ec3ec545e",
  "tables": {
    "achievements": {
      "name": "achievements",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "icon": {
          "name": "icon",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "category": {
          "name": "category",
          "type": "enum('gameplay','social','spending','milestone','special')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "condition": {
          "name": "condition",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "rewardSc": {
          "name": "rewardSc",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "rewardGc": {
          "name": "rewardGc",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "achievements_id": {
          "name": "achievements_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "ai_generated_games": {
      "name": "ai_generated_games",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "originalGameId": {
          "name": "originalGameId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "originalGameUrl": {
          "name": "originalGameUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "gameName": {
          "name": "gameName",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameSlug": {
          "name": "gameSlug",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "aiAnalysis": {
          "name": "aiAnalysis",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "reelSymbols": {
          "name": "reelSymbols",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "bonusFeatures": {
          "name": "bonusFeatures",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "thumbnailUrl": {
          "name": "thumbnailUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "reelGraphicsUrl": {
          "name": "reelGraphicsUrl",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "symbolGraphicsUrl": {
          "name": "symbolGraphicsUrl",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "rtp": {
          "name": "rtp",
          "type": "decimal(5,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'96.00'"
        },
        "volatility": {
          "name": "volatility",
          "type": "enum('low','medium','high')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'medium'"
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_ai_games_slug": {
          "name": "idx_ai_games_slug",
          "columns": [
            "gameSlug"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "ai_generated_games_id": {
          "name": "ai_generated_games_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "ai_generated_games_gameSlug_unique": {
          "name": "ai_generated_games_gameSlug_unique",
          "columns": [
            "gameSlug"
          ]
        }
      },
      "checkConstraint": {}
    },
    "ai_social_content": {
      "name": "ai_social_content",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "createdBy": {
          "name": "createdBy",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "platform": {
          "name": "platform",
          "type": "enum('facebook','instagram','twitter','tiktok')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "prompt": {
          "name": "prompt",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "imageUrl": {
          "name": "imageUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "caption": {
          "name": "caption",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "hashtags": {
          "name": "hashtags",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isPublished": {
          "name": "isPublished",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "publishedAt": {
          "name": "publishedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "impressions": {
          "name": "impressions",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "clicks": {
          "name": "clicks",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_social_content_platform": {
          "name": "idx_social_content_platform",
          "columns": [
            "platform"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "ai_social_content_id": {
          "name": "ai_social_content_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "audit_logs": {
      "name": "audit_logs",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "actorId": {
          "name": "actorId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "actorRole": {
          "name": "actorRole",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "targetUserId": {
          "name": "targetUserId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "action": {
          "name": "action",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "category": {
          "name": "category",
          "type": "enum('auth','wallet','game','admin','kyc','staff','system','fraud')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "details": {
          "name": "details",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "ipAddress": {
          "name": "ipAddress",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "userAgent": {
          "name": "userAgent",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_audit_actorId": {
          "name": "idx_audit_actorId",
          "columns": [
            "actorId"
          ],
          "isUnique": false
        },
        "idx_audit_createdAt": {
          "name": "idx_audit_createdAt",
          "columns": [
            "createdAt"
          ],
          "isUnique": false
        },
        "idx_audit_category": {
          "name": "idx_audit_category",
          "columns": [
            "category"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "audit_logs_id": {
          "name": "audit_logs_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "bingo_cards": {
      "name": "bingo_cards",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "sessionId": {
          "name": "sessionId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "roomId": {
          "name": "roomId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "numbers": {
          "name": "numbers",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "daubed": {
          "name": "daubed",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "hasBingo": {
          "name": "hasBingo",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "winAmount": {
          "name": "winAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "purchasedAt": {
          "name": "purchasedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_cards_sessionId": {
          "name": "idx_cards_sessionId",
          "columns": [
            "sessionId"
          ],
          "isUnique": false
        },
        "idx_cards_userId": {
          "name": "idx_cards_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "bingo_cards_id": {
          "name": "bingo_cards_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "bingo_rooms": {
      "name": "bingo_rooms",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "ticketPrice": {
          "name": "ticketPrice",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "maxCards": {
          "name": "maxCards",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 4
        },
        "jackpot": {
          "name": "jackpot",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "jackpotBallLimit": {
          "name": "jackpotBallLimit",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 76
        },
        "status": {
          "name": "status",
          "type": "enum('open','calling','finished','paused')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'open'"
        },
        "currentSession": {
          "name": "currentSession",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "bingo_rooms_id": {
          "name": "bingo_rooms_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "bingo_sessions": {
      "name": "bingo_sessions",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "roomId": {
          "name": "roomId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "calledBalls": {
          "name": "calledBalls",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "ballCount": {
          "name": "ballCount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "prizePool": {
          "name": "prizePool",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "jackpotWon": {
          "name": "jackpotWon",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "winners": {
          "name": "winners",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('active','finished')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'active'"
        },
        "startedAt": {
          "name": "startedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "finishedAt": {
          "name": "finishedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "bingo_sessions_id": {
          "name": "bingo_sessions_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "casino_games": {
      "name": "casino_games",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "slug": {
          "name": "slug",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "title": {
          "name": "title",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "provider": {
          "name": "provider",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "category": {
          "name": "category",
          "type": "enum('slots','table','live','jackpot','new','popular','crash','instant')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "tags": {
          "name": "tags",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "thumbnailUrl": {
          "name": "thumbnailUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "bannerUrl": {
          "name": "bannerUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "rtp": {
          "name": "rtp",
          "type": "float",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 96
        },
        "volatility": {
          "name": "volatility",
          "type": "enum('low','medium','high','very_high')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'medium'"
        },
        "minBetGc": {
          "name": "minBetGc",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'1.00'"
        },
        "maxBetGc": {
          "name": "maxBetGc",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'1000.00'"
        },
        "minBetSc": {
          "name": "minBetSc",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.10'"
        },
        "maxBetSc": {
          "name": "maxBetSc",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'100.00'"
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "isFeatured": {
          "name": "isFeatured",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "isNew": {
          "name": "isNew",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "playCount": {
          "name": "playCount",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "features": {
          "name": "features",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "paylines": {
          "name": "paylines",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "reels": {
          "name": "reels",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_games_provider": {
          "name": "idx_games_provider",
          "columns": [
            "provider"
          ],
          "isUnique": false
        },
        "idx_games_category": {
          "name": "idx_games_category",
          "columns": [
            "category"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "casino_games_id": {
          "name": "casino_games_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "casino_games_slug_unique": {
          "name": "casino_games_slug_unique",
          "columns": [
            "slug"
          ]
        }
      },
      "checkConstraint": {}
    },
    "chat_messages": {
      "name": "chat_messages",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "channel": {
          "name": "channel",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'global'"
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "isDeleted": {
          "name": "isDeleted",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_chat_channel": {
          "name": "idx_chat_channel",
          "columns": [
            "channel"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "chat_messages_id": {
          "name": "chat_messages_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "coin_packages": {
      "name": "coin_packages",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gcAmount": {
          "name": "gcAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "scBonusAmount": {
          "name": "scBonusAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "priceUsd": {
          "name": "priceUsd",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "isPopular": {
          "name": "isPopular",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "isBestValue": {
          "name": "isBestValue",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "sortOrder": {
          "name": "sortOrder",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "coin_packages_id": {
          "name": "coin_packages_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "daily_bonuses": {
      "name": "daily_bonuses",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gcAmount": {
          "name": "gcAmount",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "scAmount": {
          "name": "scAmount",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "spinResult": {
          "name": "spinResult",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "claimedAt": {
          "name": "claimedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_daily_userId": {
          "name": "idx_daily_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "daily_bonuses_id": {
          "name": "daily_bonuses_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "event_participation": {
      "name": "event_participation",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "eventId": {
          "name": "eventId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "score": {
          "name": "score",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "rewardClaimed": {
          "name": "rewardClaimed",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "claimedAt": {
          "name": "claimedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "joinedAt": {
          "name": "joinedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_event_participation_eventId": {
          "name": "idx_event_participation_eventId",
          "columns": [
            "eventId"
          ],
          "isUnique": false
        },
        "idx_event_participation_userId": {
          "name": "idx_event_participation_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "event_participation_id": {
          "name": "event_participation_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "fraud_alerts": {
      "name": "fraud_alerts",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "alertType": {
          "name": "alertType",
          "type": "enum('abnormal_rtp','rapid_betting','multi_account','bonus_abuse','unusual_withdrawal','velocity','pattern')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "severity": {
          "name": "severity",
          "type": "enum('low','medium','high','critical')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'medium'"
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "details": {
          "name": "details",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('open','investigating','resolved','dismissed')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'open'"
        },
        "resolvedBy": {
          "name": "resolvedBy",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "resolvedAt": {
          "name": "resolvedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_fraud_userId": {
          "name": "idx_fraud_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_fraud_status": {
          "name": "idx_fraud_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "fraud_alerts_id": {
          "name": "fraud_alerts_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "friends": {
      "name": "friends",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "friendId": {
          "name": "friendId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('pending','accepted','blocked')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'pending'"
        },
        "requestedAt": {
          "name": "requestedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "acceptedAt": {
          "name": "acceptedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_friends_userId": {
          "name": "idx_friends_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_friends_friendId": {
          "name": "idx_friends_friendId",
          "columns": [
            "friendId"
          ],
          "isUnique": false
        },
        "idx_friends_unique": {
          "name": "idx_friends_unique",
          "columns": [
            "userId",
            "friendId"
          ],
          "isUnique": true
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "friends_id": {
          "name": "friends_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "game_analytics": {
      "name": "game_analytics",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "totalSpins": {
          "name": "totalSpins",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "totalWagered": {
          "name": "totalWagered",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "totalWon": {
          "name": "totalWon",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "totalRevenue": {
          "name": "totalRevenue",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "uniquePlayers": {
          "name": "uniquePlayers",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "avgBetSize": {
          "name": "avgBetSize",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "rtp": {
          "name": "rtp",
          "type": "decimal(5,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'96.00'"
        },
        "lastUpdated": {
          "name": "lastUpdated",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_game_analytics_gameId": {
          "name": "idx_game_analytics_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "game_analytics_id": {
          "name": "game_analytics_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "game_chat": {
      "name": "game_chat",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "isPublic": {
          "name": "isPublic",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "recipientId": {
          "name": "recipientId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isPinned": {
          "name": "isPinned",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "isModerated": {
          "name": "isModerated",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_game_chat_gameId": {
          "name": "idx_game_chat_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        },
        "idx_game_chat_userId": {
          "name": "idx_game_chat_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_game_chat_createdAt": {
          "name": "idx_game_chat_createdAt",
          "columns": [
            "createdAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "game_chat_id": {
          "name": "game_chat_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "game_sessions": {
      "name": "game_sessions",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "betAmount": {
          "name": "betAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "winAmount": {
          "name": "winAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "multiplier": {
          "name": "multiplier",
          "type": "float",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "outcome": {
          "name": "outcome",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "rtpApplied": {
          "name": "rtpApplied",
          "type": "float",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_sessions_userId": {
          "name": "idx_sessions_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_sessions_gameId": {
          "name": "idx_sessions_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "game_sessions_id": {
          "name": "game_sessions_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "kyc_documents": {
      "name": "kyc_documents",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "docType": {
          "name": "docType",
          "type": "enum('passport','drivers_license','national_id','utility_bill','bank_statement','selfie')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "fileUrl": {
          "name": "fileUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "fileKey": {
          "name": "fileKey",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('pending','approved','rejected')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'pending'"
        },
        "reviewedBy": {
          "name": "reviewedBy",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "reviewNote": {
          "name": "reviewNote",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "submittedAt": {
          "name": "submittedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "reviewedAt": {
          "name": "reviewedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "kyc_documents_id": {
          "name": "kyc_documents_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "leaderboards": {
      "name": "leaderboards",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "leaderboardType": {
          "name": "leaderboardType",
          "type": "enum('global','weekly','daily','game_specific')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "totalWinnings": {
          "name": "totalWinnings",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "totalBets": {
          "name": "totalBets",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "winCount": {
          "name": "winCount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "rank": {
          "name": "rank",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "period": {
          "name": "period",
          "type": "varchar(20)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_leaderboard_type": {
          "name": "idx_leaderboard_type",
          "columns": [
            "leaderboardType"
          ],
          "isUnique": false
        },
        "idx_leaderboard_userId": {
          "name": "idx_leaderboard_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_leaderboard_gameId": {
          "name": "idx_leaderboard_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "leaderboards_id": {
          "name": "leaderboards_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "mini_game_rounds": {
      "name": "mini_game_rounds",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameType": {
          "name": "gameType",
          "type": "enum('plinko','mines','dice','crash','wheel')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "betAmount": {
          "name": "betAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "winAmount": {
          "name": "winAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "multiplier": {
          "name": "multiplier",
          "type": "float",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "serverSeed": {
          "name": "serverSeed",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "clientSeed": {
          "name": "clientSeed",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "nonce": {
          "name": "nonce",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "outcome": {
          "name": "outcome",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "isVerified": {
          "name": "isVerified",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_minigame_userId": {
          "name": "idx_minigame_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "mini_game_rounds_id": {
          "name": "mini_game_rounds_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "multiplier_boosts": {
      "name": "multiplier_boosts",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "multiplier": {
          "name": "multiplier",
          "type": "decimal(3,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "reason": {
          "name": "reason",
          "type": "enum('event','achievement','vip_tier','promotional','referral')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "startAt": {
          "name": "startAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "endAt": {
          "name": "endAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "appliedGames": {
          "name": "appliedGames",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_multiplier_userId": {
          "name": "idx_multiplier_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_multiplier_isActive": {
          "name": "idx_multiplier_isActive",
          "columns": [
            "isActive"
          ],
          "isUnique": false
        },
        "idx_multiplier_endAt": {
          "name": "idx_multiplier_endAt",
          "columns": [
            "endAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "multiplier_boosts_id": {
          "name": "multiplier_boosts_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "notification_preferences": {
      "name": "notification_preferences",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "emailNotifications": {
          "name": "emailNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "pushNotifications": {
          "name": "pushNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "inAppNotifications": {
          "name": "inAppNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "paymentNotifications": {
          "name": "paymentNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "gameNotifications": {
          "name": "gameNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "promotionalNotifications": {
          "name": "promotionalNotifications",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "systemAlerts": {
          "name": "systemAlerts",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "emailFrequency": {
          "name": "emailFrequency",
          "type": "enum('instant','daily','weekly','never')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'instant'"
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_notif_prefs_userId": {
          "name": "idx_notif_prefs_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "notification_preferences_id": {
          "name": "notification_preferences_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "notification_preferences_userId_unique": {
          "name": "notification_preferences_userId_unique",
          "columns": [
            "userId"
          ]
        }
      },
      "checkConstraint": {}
    },
    "notifications": {
      "name": "notifications",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "type": {
          "name": "type",
          "type": "enum('payment_success','payment_failed','bonus_credited','game_win','game_loss','bet_placed','bet_settled','odds_changed','poker_table_joined','poker_hand_result','poker_tournament_update','bingo_card_purchased','bingo_number_called','bingo_win','kyc_approved','kyc_rejected','kyc_pending','account_suspended','account_restored','withdrawal_approved','withdrawal_rejected','system_alert','promotional','admin_broadcast')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "title": {
          "name": "title",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "channels": {
          "name": "channels",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "data": {
          "name": "data",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isRead": {
          "name": "isRead",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "readAt": {
          "name": "readAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "emailSent": {
          "name": "emailSent",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "pushSent": {
          "name": "pushSent",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "expiresAt": {
          "name": "expiresAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_notifications_userId": {
          "name": "idx_notifications_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_notifications_createdAt": {
          "name": "idx_notifications_createdAt",
          "columns": [
            "createdAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "notifications_id": {
          "name": "notifications_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "platform_settings": {
      "name": "platform_settings",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "setting_key": {
          "name": "setting_key",
          "type": "varchar(100)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "setting_value": {
          "name": "setting_value",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "updated_at": {
          "name": "updated_at",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "updated_by": {
          "name": "updated_by",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "platform_settings_id": {
          "name": "platform_settings_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "platform_settings_setting_key_unique": {
          "name": "platform_settings_setting_key_unique",
          "columns": [
            "setting_key"
          ]
        }
      },
      "checkConstraint": {}
    },
    "player_profiles": {
      "name": "player_profiles",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "bio": {
          "name": "bio",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "avatarUrl": {
          "name": "avatarUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "bannerUrl": {
          "name": "bannerUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "totalSpins": {
          "name": "totalSpins",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "totalWins": {
          "name": "totalWins",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "favoriteGame": {
          "name": "favoriteGame",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "level": {
          "name": "level",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 1
        },
        "experience": {
          "name": "experience",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "isPublic": {
          "name": "isPublic",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "facebookId": {
          "name": "facebookId",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "instagramHandle": {
          "name": "instagramHandle",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "twitterHandle": {
          "name": "twitterHandle",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_player_profiles_userId": {
          "name": "idx_player_profiles_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "player_profiles_id": {
          "name": "player_profiles_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "player_profiles_userId_unique": {
          "name": "player_profiles_userId_unique",
          "columns": [
            "userId"
          ]
        }
      },
      "checkConstraint": {}
    },
    "poker_hands": {
      "name": "poker_hands",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "tableId": {
          "name": "tableId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "handNumber": {
          "name": "handNumber",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "players": {
          "name": "players",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "communityCards": {
          "name": "communityCards",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "pot": {
          "name": "pot",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "winners": {
          "name": "winners",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "actions": {
          "name": "actions",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_hands_tableId": {
          "name": "idx_hands_tableId",
          "columns": [
            "tableId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "poker_hands_id": {
          "name": "poker_hands_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "poker_tables": {
      "name": "poker_tables",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameType": {
          "name": "gameType",
          "type": "enum('holdem','omaha')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'holdem'"
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "smallBlind": {
          "name": "smallBlind",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "bigBlind": {
          "name": "bigBlind",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "minBuyIn": {
          "name": "minBuyIn",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "maxBuyIn": {
          "name": "maxBuyIn",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "maxPlayers": {
          "name": "maxPlayers",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 9
        },
        "currentPlayers": {
          "name": "currentPlayers",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "status": {
          "name": "status",
          "type": "enum('waiting','active','paused','closed')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'waiting'"
        },
        "tournamentId": {
          "name": "tournamentId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "poker_tables_id": {
          "name": "poker_tables_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "poker_tournaments": {
      "name": "poker_tournaments",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "buyIn": {
          "name": "buyIn",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "prizePool": {
          "name": "prizePool",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "maxPlayers": {
          "name": "maxPlayers",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "registeredPlayers": {
          "name": "registeredPlayers",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "startTime": {
          "name": "startTime",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('registering','running','finished','cancelled')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'registering'"
        },
        "structure": {
          "name": "structure",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "payoutStructure": {
          "name": "payoutStructure",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "poker_tournaments_id": {
          "name": "poker_tournaments_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "promo_banners": {
      "name": "promo_banners",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "title": {
          "name": "title",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "subtitle": {
          "name": "subtitle",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "imageUrl": {
          "name": "imageUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "linkUrl": {
          "name": "linkUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "linkText": {
          "name": "linkText",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "bgGradientFrom": {
          "name": "bgGradientFrom",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'#f59e0b'"
        },
        "bgGradientTo": {
          "name": "bgGradientTo",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'#d97706'"
        },
        "textColor": {
          "name": "textColor",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'#ffffff'"
        },
        "sortOrder": {
          "name": "sortOrder",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "startAt": {
          "name": "startAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "endAt": {
          "name": "endAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdByAdminId": {
          "name": "createdByAdminId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_promo_banners_isActive": {
          "name": "idx_promo_banners_isActive",
          "columns": [
            "isActive"
          ],
          "isUnique": false
        },
        "idx_promo_banners_sortOrder": {
          "name": "idx_promo_banners_sortOrder",
          "columns": [
            "sortOrder"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "promo_banners_id": {
          "name": "promo_banners_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "recently_played": {
      "name": "recently_played",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "playedAt": {
          "name": "playedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_recent_userId": {
          "name": "idx_recent_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "recently_played_id": {
          "name": "recently_played_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "referrals": {
      "name": "referrals",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "referrerId": {
          "name": "referrerId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "refereeId": {
          "name": "refereeId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "referralCode": {
          "name": "referralCode",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "referralLink": {
          "name": "referralLink",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "source": {
          "name": "source",
          "type": "enum('facebook','messenger','sms','twitter','instagram','email','other')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('pending','completed','expired')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'pending'"
        },
        "referrerRewardGiven": {
          "name": "referrerRewardGiven",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "refereeRewardGiven": {
          "name": "refereeRewardGiven",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "rewardAmount": {
          "name": "rewardAmount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 1
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "completedAt": {
          "name": "completedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_referrals_referrerId": {
          "name": "idx_referrals_referrerId",
          "columns": [
            "referrerId"
          ],
          "isUnique": false
        },
        "idx_referrals_refereeId": {
          "name": "idx_referrals_refereeId",
          "columns": [
            "refereeId"
          ],
          "isUnique": false
        },
        "idx_referrals_code": {
          "name": "idx_referrals_code",
          "columns": [
            "referralCode"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "referrals_id": {
          "name": "referrals_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "referrals_referralCode_unique": {
          "name": "referrals_referralCode_unique",
          "columns": [
            "referralCode"
          ]
        }
      },
      "checkConstraint": {}
    },
    "restricted_states": {
      "name": "restricted_states",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "stateCode": {
          "name": "stateCode",
          "type": "varchar(4)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "stateName": {
          "name": "stateName",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "reason": {
          "name": "reason",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "restricted_states_id": {
          "name": "restricted_states_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "restricted_states_stateCode_unique": {
          "name": "restricted_states_stateCode_unique",
          "columns": [
            "stateCode"
          ]
        }
      },
      "checkConstraint": {}
    },
    "rtp_overrides": {
      "name": "rtp_overrides",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "rtpOverride": {
          "name": "rtpOverride",
          "type": "float",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "setByAdminId": {
          "name": "setByAdminId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "reason": {
          "name": "reason",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "expiresAt": {
          "name": "expiresAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "rtp_overrides_id": {
          "name": "rtp_overrides_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "sc_redemptions": {
      "name": "sc_redemptions",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "scAmount": {
          "name": "scAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "usdAmount": {
          "name": "usdAmount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "method": {
          "name": "method",
          "type": "enum('bank_transfer','check','paypal','crypto')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "paymentDetails": {
          "name": "paymentDetails",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('pending','approved','processing','completed','rejected')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'pending'"
        },
        "reviewedBy": {
          "name": "reviewedBy",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "reviewNote": {
          "name": "reviewNote",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "processedAt": {
          "name": "processedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_redemptions_userId": {
          "name": "idx_redemptions_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "sc_redemptions_id": {
          "name": "sc_redemptions_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "seasonal_events": {
      "name": "seasonal_events",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "type": {
          "name": "type",
          "type": "enum('tournament','promotion','special_game','bonus_multiplier')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('upcoming','active','completed')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'upcoming'"
        },
        "startAt": {
          "name": "startAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "endAt": {
          "name": "endAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "bannerUrl": {
          "name": "bannerUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "rewardType": {
          "name": "rewardType",
          "type": "enum('gc','sc','multiplier','exclusive_access')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "rewardAmount": {
          "name": "rewardAmount",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": 0
        },
        "participantCount": {
          "name": "participantCount",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": 0
        },
        "maxParticipants": {
          "name": "maxParticipants",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "metadata": {
          "name": "metadata",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdBy": {
          "name": "createdBy",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_event_status": {
          "name": "idx_event_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        },
        "idx_event_startAt": {
          "name": "idx_event_startAt",
          "columns": [
            "startAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "seasonal_events_id": {
          "name": "seasonal_events_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "social_stream": {
      "name": "social_stream",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "activityType": {
          "name": "activityType",
          "type": "enum('win','achievement_unlocked','tournament_joined','vip_tier_upgrade','milestone_reached','friend_added')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "title": {
          "name": "title",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "metadata": {
          "name": "metadata",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "visibility": {
          "name": "visibility",
          "type": "enum('public','friends_only','private')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'public'"
        },
        "likeCount": {
          "name": "likeCount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "commentCount": {
          "name": "commentCount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_social_stream_userId": {
          "name": "idx_social_stream_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_social_stream_activityType": {
          "name": "idx_social_stream_activityType",
          "columns": [
            "activityType"
          ],
          "isUnique": false
        },
        "idx_social_stream_createdAt": {
          "name": "idx_social_stream_createdAt",
          "columns": [
            "createdAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "social_stream_id": {
          "name": "social_stream_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "sport_bets": {
      "name": "sport_bets",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "betType": {
          "name": "betType",
          "type": "enum('single','parlay','teaser')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'single'"
        },
        "totalStake": {
          "name": "totalStake",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "totalOdds": {
          "name": "totalOdds",
          "type": "float",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "potentialPayout": {
          "name": "potentialPayout",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "actualPayout": {
          "name": "actualPayout",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "status": {
          "name": "status",
          "type": "enum('pending','won','lost','cancelled','partial_win','void')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'pending'"
        },
        "selections": {
          "name": "selections",
          "type": "json",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "settledAt": {
          "name": "settledAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_bets_userId": {
          "name": "idx_bets_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_bets_status": {
          "name": "idx_bets_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "sport_bets_id": {
          "name": "sport_bets_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "sport_events": {
      "name": "sport_events",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "sport": {
          "name": "sport",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "league": {
          "name": "league",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "homeTeam": {
          "name": "homeTeam",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "awayTeam": {
          "name": "awayTeam",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "startTime": {
          "name": "startTime",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('upcoming','live','finished','cancelled','suspended')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'upcoming'"
        },
        "homeScore": {
          "name": "homeScore",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": 0
        },
        "awayScore": {
          "name": "awayScore",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": 0
        },
        "period": {
          "name": "period",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "odds": {
          "name": "odds",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "metadata": {
          "name": "metadata",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_events_sport": {
          "name": "idx_events_sport",
          "columns": [
            "sport"
          ],
          "isUnique": false
        },
        "idx_events_status": {
          "name": "idx_events_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "sport_events_id": {
          "name": "sport_events_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "staff": {
      "name": "staff",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "staffId": {
          "name": "staffId",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "pin": {
          "name": "pin",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "position": {
          "name": "position",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "department": {
          "name": "department",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "hourlyRate": {
          "name": "hourlyRate",
          "type": "decimal(10,2)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isActive": {
          "name": "isActive",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": true
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "staff_id": {
          "name": "staff_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "staff_userId_unique": {
          "name": "staff_userId_unique",
          "columns": [
            "userId"
          ]
        },
        "staff_staffId_unique": {
          "name": "staff_staffId_unique",
          "columns": [
            "staffId"
          ]
        }
      },
      "checkConstraint": {}
    },
    "stream_interactions": {
      "name": "stream_interactions",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "streamEntryId": {
          "name": "streamEntryId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "interactionType": {
          "name": "interactionType",
          "type": "enum('like','comment')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "content": {
          "name": "content",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_stream_interactions_streamEntryId": {
          "name": "idx_stream_interactions_streamEntryId",
          "columns": [
            "streamEntryId"
          ],
          "isUnique": false
        },
        "idx_stream_interactions_userId": {
          "name": "idx_stream_interactions_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "stream_interactions_id": {
          "name": "stream_interactions_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "support_tickets": {
      "name": "support_tickets",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "assignedStaffId": {
          "name": "assignedStaffId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "subject": {
          "name": "subject",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "category": {
          "name": "category",
          "type": "enum('account','payment','game','bonus','technical','kyc','other')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "priority": {
          "name": "priority",
          "type": "enum('low','medium','high','urgent')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'medium'"
        },
        "status": {
          "name": "status",
          "type": "enum('open','in_progress','waiting_user','resolved','closed')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'open'"
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "resolvedAt": {
          "name": "resolvedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_tickets_userId": {
          "name": "idx_tickets_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_tickets_status": {
          "name": "idx_tickets_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "support_tickets_id": {
          "name": "support_tickets_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "ticket_messages": {
      "name": "ticket_messages",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "ticketId": {
          "name": "ticketId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "senderId": {
          "name": "senderId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "senderRole": {
          "name": "senderRole",
          "type": "enum('user','staff','admin')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "attachmentUrl": {
          "name": "attachmentUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_messages_ticketId": {
          "name": "idx_messages_ticketId",
          "columns": [
            "ticketId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "ticket_messages_id": {
          "name": "ticket_messages_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "time_clock": {
      "name": "time_clock",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "staffId": {
          "name": "staffId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "clockIn": {
          "name": "clockIn",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "clockOut": {
          "name": "clockOut",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "hoursWorked": {
          "name": "hoursWorked",
          "type": "float",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "notes": {
          "name": "notes",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_timeclock_staffId": {
          "name": "idx_timeclock_staffId",
          "columns": [
            "staffId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "time_clock_id": {
          "name": "time_clock_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "tournament_participants": {
      "name": "tournament_participants",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "tournamentId": {
          "name": "tournamentId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "score": {
          "name": "score",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "finalRank": {
          "name": "finalRank",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "prizeWon": {
          "name": "prizeWon",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "joinedAt": {
          "name": "joinedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "completedAt": {
          "name": "completedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_tournament_participants_tournamentId": {
          "name": "idx_tournament_participants_tournamentId",
          "columns": [
            "tournamentId"
          ],
          "isUnique": false
        },
        "idx_tournament_participants_userId": {
          "name": "idx_tournament_participants_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "tournament_participants_id": {
          "name": "tournament_participants_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "tournament_snapshots": {
      "name": "tournament_snapshots",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "tournamentId": {
          "name": "tournamentId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "snapshotTime": {
          "name": "snapshotTime",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "topPlayers": {
          "name": "topPlayers",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        }
      },
      "indexes": {
        "idx_tournament_snapshots_tournamentId": {
          "name": "idx_tournament_snapshots_tournamentId",
          "columns": [
            "tournamentId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "tournament_snapshots_id": {
          "name": "tournament_snapshots_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "tournaments": {
      "name": "tournaments",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "status": {
          "name": "status",
          "type": "enum('upcoming','active','completed','cancelled')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'upcoming'"
        },
        "startAt": {
          "name": "startAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "endAt": {
          "name": "endAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "entryFeeGc": {
          "name": "entryFeeGc",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "maxParticipants": {
          "name": "maxParticipants",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "currentParticipants": {
          "name": "currentParticipants",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "prizePool": {
          "name": "prizePool",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "prizeDistribution": {
          "name": "prizeDistribution",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "leaderboardId": {
          "name": "leaderboardId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdBy": {
          "name": "createdBy",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_tournament_status": {
          "name": "idx_tournament_status",
          "columns": [
            "status"
          ],
          "isUnique": false
        },
        "idx_tournament_gameId": {
          "name": "idx_tournament_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        },
        "idx_tournament_startAt": {
          "name": "idx_tournament_startAt",
          "columns": [
            "startAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "tournaments_id": {
          "name": "tournaments_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "transactions": {
      "name": "transactions",
      "columns": {
        "id": {
          "name": "id",
          "type": "bigint",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "type": {
          "name": "type",
          "type": "enum('gc_purchase','gc_bonus','sc_bonus','sc_redeem','game_bet','game_win','sport_bet','sport_win','sport_refund','poker_buyin','poker_win','poker_rake','bingo_purchase','bingo_win','minigame_bet','minigame_win','daily_bonus','admin_credit','admin_debit','referral_bonus','promo_credit')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currency": {
          "name": "currency",
          "type": "enum('GC','SC')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "amount": {
          "name": "amount",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "balanceBefore": {
          "name": "balanceBefore",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "balanceAfter": {
          "name": "balanceAfter",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "referenceId": {
          "name": "referenceId",
          "type": "varchar(128)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "referenceType": {
          "name": "referenceType",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "metadata": {
          "name": "metadata",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_transactions_userId": {
          "name": "idx_transactions_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_transactions_createdAt": {
          "name": "idx_transactions_createdAt",
          "columns": [
            "createdAt"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "transactions_id": {
          "name": "transactions_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "user_achievements": {
      "name": "user_achievements",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "achievementId": {
          "name": "achievementId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "unlockedAt": {
          "name": "unlockedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "rewardClaimed": {
          "name": "rewardClaimed",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        }
      },
      "indexes": {
        "idx_user_achievements_userId": {
          "name": "idx_user_achievements_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_user_achievements_achievementId": {
          "name": "idx_user_achievements_achievementId",
          "columns": [
            "achievementId"
          ],
          "isUnique": false
        },
        "idx_user_achievements_unique": {
          "name": "idx_user_achievements_unique",
          "columns": [
            "userId",
            "achievementId"
          ],
          "isUnique": true
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "user_achievements_id": {
          "name": "user_achievements_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "user_favorites": {
      "name": "user_favorites",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_user_favorites_userId": {
          "name": "idx_user_favorites_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_user_favorites_gameId": {
          "name": "idx_user_favorites_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        },
        "idx_user_favorites_unique": {
          "name": "idx_user_favorites_unique",
          "columns": [
            "userId",
            "gameId"
          ],
          "isUnique": true
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "user_favorites_id": {
          "name": "user_favorites_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "user_vip_status": {
      "name": "user_vip_status",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "currentVipTierId": {
          "name": "currentVipTierId",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "lifetimeWinnings": {
          "name": "lifetimeWinnings",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "totalBetsPlaced": {
          "name": "totalBetsPlaced",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "weeklyBonusClaimedAt": {
          "name": "weeklyBonusClaimedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "monthlyBonusClaimedAt": {
          "name": "monthlyBonusClaimedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "lastVipUpgradeAt": {
          "name": "lastVipUpgradeAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_user_vip_userId": {
          "name": "idx_user_vip_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "user_vip_status_id": {
          "name": "user_vip_status_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "user_vip_status_userId_unique": {
          "name": "user_vip_status_userId_unique",
          "columns": [
            "userId"
          ]
        }
      },
      "checkConstraint": {}
    },
    "users": {
      "name": "users",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "openId": {
          "name": "openId",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "username": {
          "name": "username",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "email": {
          "name": "email",
          "type": "varchar(320)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "passwordHash": {
          "name": "passwordHash",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "name": {
          "name": "name",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "loginMethod": {
          "name": "loginMethod",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "role": {
          "name": "role",
          "type": "enum('user','staff','admin')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'user'"
        },
        "kycStatus": {
          "name": "kycStatus",
          "type": "enum('none','pending','approved','rejected')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'none'"
        },
        "kycLevel": {
          "name": "kycLevel",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "isBanned": {
          "name": "isBanned",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "banReason": {
          "name": "banReason",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "isAgeVerified": {
          "name": "isAgeVerified",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "dateOfBirth": {
          "name": "dateOfBirth",
          "type": "varchar(10)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "stateCode": {
          "name": "stateCode",
          "type": "varchar(4)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "country": {
          "name": "country",
          "type": "varchar(4)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false,
          "default": "'US'"
        },
        "phone": {
          "name": "phone",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "avatarUrl": {
          "name": "avatarUrl",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "lastIp": {
          "name": "lastIp",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "twoFactorEnabled": {
          "name": "twoFactorEnabled",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "twoFactorSecret": {
          "name": "twoFactorSecret",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "stripeCustomerId": {
          "name": "stripeCustomerId",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        },
        "lastSignedIn": {
          "name": "lastSignedIn",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "users_id": {
          "name": "users_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "users_openId_unique": {
          "name": "users_openId_unique",
          "columns": [
            "openId"
          ]
        },
        "users_username_unique": {
          "name": "users_username_unique",
          "columns": [
            "username"
          ]
        },
        "users_stripeCustomerId_unique": {
          "name": "users_stripeCustomerId_unique",
          "columns": [
            "stripeCustomerId"
          ]
        }
      },
      "checkConstraint": {}
    },
    "vip_tiers": {
      "name": "vip_tiers",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "name": {
          "name": "name",
          "type": "varchar(64)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "minLifetimeWinnings": {
          "name": "minLifetimeWinnings",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "bonusMultiplier": {
          "name": "bonusMultiplier",
          "type": "decimal(3,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'1.00'"
        },
        "weeklyBonusGc": {
          "name": "weeklyBonusGc",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "monthlyBonusGc": {
          "name": "monthlyBonusGc",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        },
        "exclusiveGames": {
          "name": "exclusiveGames",
          "type": "json",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "prioritySupport": {
          "name": "prioritySupport",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "customAvatarFrame": {
          "name": "customAvatarFrame",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "badgeIcon": {
          "name": "badgeIcon",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "description": {
          "name": "description",
          "type": "text",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "createdAt": {
          "name": "createdAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "idx_vip_tier_minWinnings": {
          "name": "idx_vip_tier_minWinnings",
          "columns": [
            "minLifetimeWinnings"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "vip_tiers_id": {
          "name": "vip_tiers_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "wallets": {
      "name": "wallets",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gcBalance": {
          "name": "gcBalance",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "scBalance": {
          "name": "scBalance",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "lifetimeGcEarned": {
          "name": "lifetimeGcEarned",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "lifetimeScEarned": {
          "name": "lifetimeScEarned",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "lifetimeScRedeemed": {
          "name": "lifetimeScRedeemed",
          "type": "decimal(18,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'0.00'"
        },
        "updatedAt": {
          "name": "updatedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "wallets_id": {
          "name": "wallets_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "win_share_events": {
      "name": "win_share_events",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "userId": {
          "name": "userId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "gameId": {
          "name": "gameId",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "winAmount": {
          "name": "winAmount",
          "type": "decimal(15,2)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "shareMessage": {
          "name": "shareMessage",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "platform": {
          "name": "platform",
          "type": "enum('facebook','messenger','sms','twitter')",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "referralCode": {
          "name": "referralCode",
          "type": "varchar(32)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "sharedAt": {
          "name": "sharedAt",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "clickCount": {
          "name": "clickCount",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": 0
        }
      },
      "indexes": {
        "idx_win_share_userId": {
          "name": "idx_win_share_userId",
          "columns": [
            "userId"
          ],
          "isUnique": false
        },
        "idx_win_share_gameId": {
          "name": "idx_win_share_gameId",
          "columns": [
            "gameId"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "win_share_events_id": {
          "name": "win_share_events_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    }
  },
  "views": {},
  "_meta": {
    "schemas": {},
    "tables": {},
    "columns": {}
  },
  "internal": {
    "tables": {},
    "indexes": {}
  }
}