/*
Copyright (C) 2025 filifa

This file is part of mlbstats.

mlbstats is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.

mlbstats is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
mlbstats. If not, see <https://www.gnu.org/licenses/>.
*/

/*
 * Stats API Documentation
 *
 * Official API for Major League Baseball.
 *
 * API version: 2.0.0
 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
 */
package models

type BaseballTeam struct {
	RequestingUserRole          *Role                        `json:"requestingUserRole,omitempty"`
	Id                          int32                        `json:"id,omitempty"`
	Name                        string                       `json:"name,omitempty"`
	Season                      int32                        `json:"season,omitempty"`
	StrSeason                   string                       `json:"strSeason,omitempty"`
	Venue                       *Venue                       `json:"venue,omitempty"`
	SpringVenue                 *Venue                       `json:"springVenue,omitempty"`
	TeamCode                    string                       `json:"teamCode,omitempty"`
	FileCode                    string                       `json:"fileCode,omitempty"`
	Abbreviation                string                       `json:"abbreviation,omitempty"`
	FirstYearOfPlay             string                       `json:"firstYearOfPlay,omitempty"`
	TeamName                    string                       `json:"teamName,omitempty"`
	LocationName                string                       `json:"locationName,omitempty"`
	Active                      bool                         `json:"active,omitempty"`
	Placeholder                 bool                         `json:"placeholder,omitempty"`
	Roster                      *BaseballRoster              `json:"roster,omitempty"`
	NextGameSchedule            *BaseballSchedule            `json:"nextGameSchedule,omitempty"`
	PreviousGameSchedule        *BaseballSchedule            `json:"previousGameSchedule,omitempty"`
	NextSchedule                *BaseballSchedule            `json:"nextSchedule,omitempty"`
	PreviousSchedule            *BaseballSchedule            `json:"previousSchedule,omitempty"`
	Content                     *TeamContentCms              `json:"content,omitempty"`
	DeviceProperties            *JsonNode                    `json:"deviceProperties,omitempty"`
	Tickets                     []BaseballTicket             `json:"tickets,omitempty"`
	PlayoffInfo                 *TeamPlayoffs                `json:"playoffInfo,omitempty"`
	HomeAway                    string                       `json:"homeAway,omitempty"`
	Record                      *BaseballTeamStandingsRecord `json:"record,omitempty"`
	TeamStats                   []StatContainer              `json:"teamStats,omitempty"`
	TeamLeaders                 []Leaders                    `json:"teamLeaders,omitempty"`
	OtherTeamNames              *OtherTeamNames              `json:"otherTeamNames,omitempty"`
	SocialMediaInfo             *SocialMediaInfo             `json:"socialMediaInfo,omitempty"`
	Twitter                     string                       `json:"twitter,omitempty"`
	LeagueId                    int32                        `json:"leagueId,omitempty"`
	TeamDesignation             *TeamDesignationEnum         `json:"teamDesignation,omitempty"`
	ParentOrgId                 int32                        `json:"parentOrgId,omitempty"`
	ParentOrgName               string                       `json:"parentOrgName,omitempty"`
	SeedNumber                  int32                        `json:"seedNumber,omitempty"`
	FranchiseName               string                       `json:"franchiseName,omitempty"`
	ClubName                    string                       `json:"clubName,omitempty"`
	Location                    *Location                    `json:"location,omitempty"`
	SpringLeague                *League                      `json:"springLeague,omitempty"`
	XrefIds                     []XrefId                     `json:"xrefIds,omitempty"`
	AllStarStatus               *AllStarEnum                 `json:"allStarStatus,omitempty"`
	TeamSeq                     int32                        `json:"teamSeq,omitempty"`
	NameLanguageHistoryStart    string                       `json:"nameLanguageHistoryStart,omitempty"`
	NameLanguageHistoryEnd      string                       `json:"nameLanguageHistoryEnd,omitempty"`
	CacheKey                    string                       `json:"cacheKey,omitempty"`
	ShortName                   string                       `json:"shortName,omitempty"`
	League                      *League                      `json:"league,omitempty"`
	Sport                       *Sport                       `json:"sport,omitempty"`
	Division                    *Division                    `json:"division,omitempty"`
	Conference                  *Conference                  `json:"conference,omitempty"`
	HydratedSocial              map[string]interface{}       `json:"hydratedSocial,omitempty"`
	HydratedDeviceProperties    map[string]interface{}       `json:"hydratedDeviceProperties,omitempty"`
	HydratedGamePromotionsAtBat map[string]interface{}       `json:"hydratedGamePromotionsAtBat,omitempty"`
	HydratedGamePromotions      map[string]interface{}       `json:"hydratedGamePromotions,omitempty"`
	HydratedGameSponsorships    map[string]interface{}       `json:"hydratedGameSponsorships,omitempty"`
	HydratedGameTickets         map[string]interface{}       `json:"hydratedGameTickets,omitempty"`
	HydratedGameTicketsAtBat    map[string]interface{}       `json:"hydratedGameTicketsAtBat,omitempty"`
	Franchise                   *Franchise                   `json:"franchise,omitempty"`
	UserPrivileges              []Privilege                  `json:"userPrivileges,omitempty"`
}
