using Roadie.Library; using Roadie.Library.Models.Pagination; using Roadie.Library.Models.Users; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace Roadie.Api.Services { public interface IUserService { Task> ById(User user, Guid id, IEnumerable includes); Task> List(PagedRequest request); Task> SetArtistBookmark(Guid artistId, User roadieUser, bool isBookmarked); Task> SetArtistDisliked(Guid artistId, User roadieUser, bool isDisliked); Task> SetArtistFavorite(Guid artistId, User roadieUser, bool isFavorite); Task> SetArtistRating(Guid artistId, User roadieUser, short rating); Task> SetCollectionBookmark(Guid collectionId, User roadieUser, bool isBookmarked); Task> SetLabelBookmark(Guid labelId, User roadieUser, bool isBookmarked); Task> SetPlaylistBookmark(Guid playlistId, User roadieUser, bool isBookmarked); Task> SetReleaseBookmark(Guid releaseid, User roadieUser, bool isBookmarked); Task> SetReleaseDisliked(Guid releaseId, User roadieUser, bool isDisliked); Task> SetReleaseFavorite(Guid releaseId, User roadieUser, bool isFavorite); Task> SetReleaseRating(Guid releaseId, User roadieUser, short rating); Task> SetTrackBookmark(Guid trackId, User roadieUser, bool isBookmarked); Task> SetTrackDisliked(Guid trackId, User roadieUser, bool isDisliked); Task> SetTrackFavorite(Guid releaseId, User roadieUser, bool isFavorite); Task> SetTrackRating(Guid trackId, User roadieUser, short rating); Task> UpdateIntegrationGrant(Guid userId, string integrationName, string token); Task> UpdateProfile(User userPerformingUpdate, User userBeingUpdatedModel); } }