#pragma warning disable CS1591 using System; using System.Collections.Generic; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Playlists; namespace MediaBrowser.Controller.Playlists { public interface IPlaylistManager { /// /// Gets the playlist. /// /// The playlist identifier. /// The user identifier. /// Playlist. Playlist GetPlaylistForUser(Guid playlistId, Guid userId); /// /// Creates the playlist. /// /// The . /// The created playlist. Task CreatePlaylist(PlaylistCreationRequest request); /// /// Updates a playlist. /// /// The . /// Task. Task UpdatePlaylist(PlaylistUpdateRequest request); /// /// Gets all playlists a user has access to. /// /// The user identifier. /// IEnumerable<Playlist>. IEnumerable GetPlaylists(Guid userId); /// /// Adds a share to the playlist. /// /// The . /// Task. Task AddUserToShares(PlaylistUserUpdateRequest request); /// /// Removes a share from the playlist. /// /// The playlist identifier. /// The user identifier. /// The share. /// Task. Task RemoveUserFromShares(Guid playlistId, Guid userId, PlaylistUserPermissions share); /// /// Adds to playlist. /// /// The playlist identifier. /// The item ids. /// The user identifier. /// Task. Task AddItemToPlaylistAsync(Guid playlistId, IReadOnlyCollection itemIds, Guid userId); /// /// Removes from playlist. /// /// The playlist identifier. /// The entry ids. /// Task. Task RemoveItemFromPlaylistAsync(string playlistId, IEnumerable entryIds); /// /// Gets the playlists folder. /// /// Folder. Folder GetPlaylistsFolder(); /// /// Gets the playlists folder for a user. /// /// The user identifier. /// Folder. Folder GetPlaylistsFolder(Guid userId); /// /// Moves the item. /// /// The playlist identifier. /// The entry identifier. /// The new index. /// Task. Task MoveItemAsync(string playlistId, string entryId, int newIndex); /// /// Removed all playlists of a user. /// If the playlist is shared, ownership is transferred. /// /// The user id. /// Task. Task RemovePlaylistsAsync(Guid userId); /// /// Saves a playlist. /// /// The playlist. void SavePlaylistFile(Playlist item); } }