/*
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 BaseballRosterEntry struct {
	RequestingUserRole        *Role                  `json:"requestingUserRole,omitempty"`
	Person                    *BaseballPerson        `json:"person,omitempty"`
	JerseyNumber              string                 `json:"jerseyNumber,omitempty"`
	Position                  *BaseballPosition      `json:"position,omitempty"`
	Stats                     *BaseballStats         `json:"stats,omitempty"`
	SeasonStats               *BaseballStats         `json:"seasonStats,omitempty"`
	Captain                   bool                   `json:"captain,omitempty"`
	AlternateCaptain          bool                   `json:"alternateCaptain,omitempty"`
	Note                      string                 `json:"note,omitempty"`
	Status                    *DynamicLookupEnum     `json:"status,omitempty"`
	Job                       string                 `json:"job,omitempty"`
	JobId                     string                 `json:"jobId,omitempty"`
	Title                     string                 `json:"title,omitempty"`
	ParentTeamId              int32                  `json:"parentTeamId,omitempty"`
	Team                      *BaseballTeam          `json:"team,omitempty"`
	IsActive                  bool                   `json:"isActive,omitempty"`
	IsActiveFortyMan          bool                   `json:"isActiveFortyMan,omitempty"`
	StartDate                 string                 `json:"startDate,omitempty"`
	EndDate                   string                 `json:"endDate,omitempty"`
	StatusDate                string                 `json:"statusDate,omitempty"`
	AllPositions              []BaseballPosition     `json:"allPositions,omitempty"`
	BattingOrder              string                 `json:"battingOrder,omitempty"`
	PitchingOrder             int32                  `json:"pitchingOrder,omitempty"`
	IsCurrentBatter           bool                   `json:"isCurrentBatter,omitempty"`
	IsCurrentPitcher          bool                   `json:"isCurrentPitcher,omitempty"`
	IsOnBench                 bool                   `json:"isOnBench,omitempty"`
	IsSubstitute              bool                   `json:"isSubstitute,omitempty"`
	ClassId                   int32                  `json:"classId,omitempty"`
	SportId                   int32                  `json:"sportId,omitempty"`
	Season                    string                 `json:"season,omitempty"`
	QualifiedForGamePitched   bool                   `json:"qualifiedForGamePitched,omitempty"`
	StatContainer             []StatContainer        `json:"statContainer,omitempty"`
	HydratedRosterEntriesTeam map[string]interface{} `json:"hydratedRosterEntriesTeam,omitempty"`
	UserPrivileges            []Privilege            `json:"userPrivileges,omitempty"`
}
