/*
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

import (
	"time"
)

type GameDateBroadcast struct {
	Broadcaster                 *Broadcaster           `json:"broadcaster,omitempty"`
	Language                    *Language              `json:"language,omitempty"`
	TeamId                      int32                  `json:"teamId,omitempty"`
	IsNationalStatus            bool                   `json:"isNationalStatus,omitempty"`
	SortOrder                   int32                  `json:"sortOrder,omitempty"`
	VideoResolution             *VideoResolution       `json:"videoResolution,omitempty"`
	BroadcastAvailability       *BroadcastAvailability `json:"broadcastAvailability,omitempty"`
	BroadcastComment            string                 `json:"broadcastComment,omitempty"`
	BroadcastUrl                string                 `json:"broadcastUrl,omitempty"`
	Xrefs                       []BroadcasterXrefId    `json:"xrefs,omitempty"`
	MediaState                  *MediaState            `json:"mediaState,omitempty"`
	Site                        *Site                  `json:"site,omitempty"`
	BroadcastDate               string                 `json:"broadcastDate,omitempty"`
	GameDateBroadcastGuid       string                 `json:"gameDateBroadcastGuid,omitempty"`
	GamePk                      int32                  `json:"gamePk,omitempty"`
	HomeAway                    *TeamDesignationEnum   `json:"homeAway,omitempty"`
	PregameShowTs               time.Time              `json:"pregameShowTs,omitempty"`
	PostgameShowStatus          bool                   `json:"postgameShowStatus,omitempty"`
	StreamingAvailabilityStatus bool                   `json:"streamingAvailabilityStatus,omitempty"`
	FreeGameStatus              bool                   `json:"freeGameStatus,omitempty"`
	MvpdAuthBroadcastStatus     bool                   `json:"mvpdAuthBroadcastStatus,omitempty"`
	FreeGameOverallStatus       bool                   `json:"freeGameOverallStatus,omitempty"`
	FreeGameTypes               []FreeGameType         `json:"freeGameTypes,omitempty"`
}
