{
  "models": [
    {
      "name": "Tournament",
      "synchronizable": true,
      "copyable": true,
      "observable": true,
      "relationshipNames": [],
      "properties": [
        {
          "name": "id",
          "type": "String",
          "defaultValue": "Store.randomId()"
        },
        {
          "name": "event",
          "type": "String",
          "optional": true,
          "foreignKey": "Event"
        },
        {
          "name": "name",
          "type": "String",
          "optional": true
        },
        {
          "name": "startDate",
          "type": "Date"
        },
        {
          "name": "endDate",
          "type": "Date",
          "optional": true
        },
        {
          "name": "creationDate",
          "type": "Date",
          "private": true
        },
        {
          "name": "isPrivate",
          "type": "Bool"
        },
        {
          "name": "groupStageFormat",
          "type": "MatchFormat",
          "optional": true,
          "private": true
        },
        {
          "name": "roundFormat",
          "type": "MatchFormat",
          "optional": true,
          "private": true
        },
        {
          "name": "loserRoundFormat",
          "type": "MatchFormat",
          "optional": true,
          "private": true
        },
        {
          "name": "groupStageSortMode",
          "type": "GroupStageOrderingMode",
          "defaultValue": "GroupStageOrderingMode.snake"
        },
        {
          "name": "groupStageCount",
          "type": "Int"
        },
        {
          "name": "rankSourceDate",
          "type": "Date",
          "optional": true
        },
        {
          "name": "dayDuration",
          "type": "Int"
        },
        {
          "name": "teamCount",
          "type": "Int"
        },
        {
          "name": "teamSorting",
          "type": "TeamSortingType",
          "defaultValue": "TeamSortingType.inscriptionDate"
        },
        {
          "name": "federalCategory",
          "type": "TournamentCategory",
          "defaultValue": "TournamentCategory.men"
        },
        {
          "name": "federalLevelCategory",
          "type": "TournamentLevel",
          "defaultValue": "TournamentLevel.unlisted"
        },
        {
          "name": "federalAgeCategory",
          "type": "FederalTournamentAge",
          "defaultValue": "FederalTournamentAge.unlisted"
        },
        {
          "name": "closedRegistrationDate",
          "type": "Date",
          "optional": true
        },
        {
          "name": "groupStageAdditionalQualified",
          "type": "Int"
        },
        {
          "name": "courtCount",
          "type": "Int",
          "defaultValue": "2"
        },
        {
          "name": "prioritizeClubMembers",
          "type": "Bool"
        },
        {
          "name": "qualifiedPerGroupStage",
          "type": "Int"
        },
        {
          "name": "teamsPerGroupStage",
          "type": "Int"
        },
        {
          "name": "entryFee",
          "type": "Double",
          "optional": true
        },
        {
          "name": "payment",
          "type": "TournamentPayment",
          "optional": true,
          "defaultValue": "nil",
          "encryption": "tournament_payment",
          "codingKey": "globalId"
        },
        {
          "name": "additionalEstimationDuration",
          "type": "Int",
          "defaultValue": "0"
        },
        {
          "name": "isDeleted",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "isCanceled",
          "type": "Bool",
          "defaultValue": "false",
          "encryption": "tournament_iscanceled",
          "codingKey": "localId"
        },
        {
          "name": "publishTeams",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "publishSummons",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "publishGroupStages",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "publishBrackets",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "shouldVerifyGroupStage",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "shouldVerifyBracket",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "hideTeamsWeight",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "publishTournament",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "hidePointsEarned",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "publishRankings",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "loserBracketMode",
          "type": "LoserBracketMode",
          "defaultValue": ".automatic"
        },
        {
          "name": "initialSeedRound",
          "type": "Int",
          "defaultValue": "0"
        },
        {
          "name": "initialSeedCount",
          "type": "Int",
          "defaultValue": "0"
        },
        {
          "name": "enableOnlineRegistration",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "registrationDateLimit",
          "type": "Date",
          "optional": true
        },
        {
          "name": "openingRegistrationDate",
          "type": "Date",
          "optional": true
        },
        {
          "name": "waitingListLimit",
          "type": "Int",
          "optional": true
        },
        {
          "name": "accountIsRequired",
          "type": "Bool",
          "defaultValue": "true"
        },
        {
          "name": "licenseIsRequired",
          "type": "Bool",
          "defaultValue": "true"
        },
        {
          "name": "minimumPlayerPerTeam",
          "type": "Int",
          "defaultValue": 2
        },
        {
          "name": "maximumPlayerPerTeam",
          "type": "Int",
          "defaultValue": 2
        },
        {
          "name": "information",
          "type": "String",
          "optional": true
        },
        {
          "name": "umpireCustomMail",
          "type": "String",
          "optional": true
        },
        {
          "name": "umpireCustomContact",
          "type": "String",
          "optional": true
        },
        {
          "name": "umpireCustomPhone",
          "type": "String",
          "optional": true
        },
        {
          "name": "hideUmpireMail",
          "type": "Bool",
          "defaultValue": "false"
        },
        {
          "name": "hideUmpirePhone",
          "type": "Bool",
          "defaultValue": "true"
        },
        {
          "name": "disableRankingFederalRuling",
          "type": "Bool",
          "defaultValue": "false",
          "optional": false
        },
        {
          "name": "teamCountLimit",
          "type": "Bool",
          "defaultValue": "true",
          "optional": false
        }
      ]
    }
  ]
}
