#nullable disable #pragma warning disable CS1591 using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Channels; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Channels { public interface IChannelManager { /// /// Gets the channel features. /// /// The identifier. /// ChannelFeatures. ChannelFeatures GetChannelFeatures(Guid? id); /// /// Gets all channel features. /// /// IEnumerable{ChannelFeatures}. ChannelFeatures[] GetAllChannelFeatures(); bool EnableMediaSourceDisplay(BaseItem item); bool CanDelete(BaseItem item); Task DeleteItem(BaseItem item); /// /// Gets the channel. /// /// The identifier. /// Channel. Channel GetChannel(string id); /// /// Gets the channels internal. /// /// The query. /// The channels. Task> GetChannelsInternalAsync(ChannelQuery query); /// /// Gets the channels. /// /// The query. /// The channels. Task> GetChannelsAsync(ChannelQuery query); /// /// Gets the latest channel items. /// /// The item query. /// The cancellation token. /// The latest channels. Task> GetLatestChannelItems(InternalItemsQuery query, CancellationToken cancellationToken); /// /// Gets the latest channel items. /// /// The item query. /// The cancellation token. /// The latest channels. Task> GetLatestChannelItemsInternal(InternalItemsQuery query, CancellationToken cancellationToken); /// /// Gets the channel items. /// /// The query. /// The cancellation token. /// The channel items. Task> GetChannelItems(InternalItemsQuery query, CancellationToken cancellationToken); /// /// Gets the channel items. /// /// The query. /// The progress to report to. /// The cancellation token. /// The channel items. Task> GetChannelItemsInternal(InternalItemsQuery query, IProgress progress, CancellationToken cancellationToken); /// /// Gets the channel item media sources. /// /// The item. /// The cancellation token. /// The item media sources. IEnumerable GetStaticMediaSources(BaseItem item, CancellationToken cancellationToken); } }