using System.Collections.Generic; using System.Threading.Tasks; using Ombi.Core.Models; using Ombi.Core.Models.Requests; using Ombi.Core.Models.UI; using Ombi.Store.Entities; using Ombi.Store.Entities.Requests; namespace Ombi.Core.Engine { public interface IMusicRequestEngine { TaskApproveAlbum(AlbumRequest request); Task ApproveAlbumById(int requestId); Task DenyAlbumById(int modelId, string reason); Task> GetRequests(); Task> GetRequests(int count, int position, OrderFilterModel orderFilter); Task GetTotal(); Task MarkAvailable(int modelId); Task MarkUnavailable(int modelId); Task RemoveAlbumRequest(int requestId); Task RequestAlbum(MusicAlbumRequestViewModel model); Task> SearchAlbumRequest(string search); Task UserHasRequest(string userId); Task GetRemainingRequests(OmbiUser user = null); } }