using ErsatzTV.Core.Domain; using ErsatzTV.Core.Emby; namespace ErsatzTV.Core.Interfaces.Emby; public interface IEmbyApiClient { Task> GetServerInformation(string address, string apiKey); Task>> GetLibraries(string address, string apiKey); IAsyncEnumerable GetMovieLibraryItems(string address, string apiKey, EmbyLibrary library); IAsyncEnumerable GetShowLibraryItems(string address, string apiKey, EmbyLibrary library); IAsyncEnumerable GetSeasonLibraryItems( string address, string apiKey, EmbyLibrary library, string showId); IAsyncEnumerable GetEpisodeLibraryItems( string address, string apiKey, EmbyLibrary library, string showId, string seasonId); IAsyncEnumerable GetCollectionLibraryItems(string address, string apiKey); IAsyncEnumerable GetCollectionItems(string address, string apiKey, string collectionId); Task> GetLibraryItemCount( string address, string apiKey, string parentId, string includeItemTypes); Task> GetPlaybackInfo( string address, string apiKey, EmbyLibrary library, string itemId); }