using Roadie.Library; using Roadie.Library.Models.Pagination; using Roadie.Library.Models.Playlists; using Roadie.Library.Models.Users; using System; using System.Collections.Generic; using System.Threading.Tasks; using data = Roadie.Library.Data; namespace Roadie.Api.Services { public interface IPlaylistService { Task> AddNewPlaylistAsync(User user, Playlist model); Task> AddTracksToPlaylistAsync(data.Playlist playlist, IEnumerable trackIds); Task> ByIdAsync(User roadieUser, Guid id, IEnumerable includes = null); Task> DeletePlaylistAsync(User user, Guid id); Task> ListAsync(PagedRequest request, User roadieUser = null); Task> ReorderPlaylistAsync(data.Playlist playlist); Task> UpdatePlaylistAsync(User user, Playlist label); Task> UpdatePlaylistTracksAsync(User user, PlaylistTrackModifyRequest request); } }