using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
namespace Emby.Server.Implementations.LiveTv.Listings.SchedulesDirectDtos
{
    /// 
    /// Station dto.
    /// 
    public class StationDto
    {
        /// 
        /// Gets or sets the station id.
        /// 
        [JsonPropertyName("stationID")]
        public string? StationId { get; set; }
        /// 
        /// Gets or sets the name.
        /// 
        [JsonPropertyName("name")]
        public string? Name { get; set; }
        /// 
        /// Gets or sets the callsign.
        /// 
        [JsonPropertyName("callsign")]
        public string? Callsign { get; set; }
        /// 
        /// Gets or sets the broadcast language.
        /// 
        [JsonPropertyName("broadcastLanguage")]
        public IReadOnlyList BroadcastLanguage { get; set; } = Array.Empty();
        /// 
        /// Gets or sets the description language.
        /// 
        [JsonPropertyName("descriptionLanguage")]
        public IReadOnlyList DescriptionLanguage { get; set; } = Array.Empty();
        /// 
        /// Gets or sets the broadcaster.
        /// 
        [JsonPropertyName("broadcaster")]
        public BroadcasterDto? Broadcaster { get; set; }
        /// 
        /// Gets or sets the affiliate.
        /// 
        [JsonPropertyName("affiliate")]
        public string? Affiliate { get; set; }
        /// 
        /// Gets or sets the logo.
        /// 
        [JsonPropertyName("logo")]
        public LogoDto? Logo { get; set; }
        /// 
        /// Gets or sets a value indicating whether it is commercial free.
        /// 
        [JsonPropertyName("isCommercialFree")]
        public bool? IsCommercialFree { get; set; }
    }
}