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; namespace Ombi.Core.Engine.Interfaces { public interface IRequestEngine { //Task> GetApprovedRequests(); //Task> GetNewRequests(); //Task> GetAvailableRequests(); RequestCountModel RequestCount(); Task> GetRequests(int count, int position, OrderFilterModel model); Task> GetRequests(); Task UserHasRequest(string userId); Task MarkUnavailable(int modelId); Task MarkAvailable(int modelId); Task GetTotal(); Task UnSubscribeRequest(int requestId, RequestType type); Task SubscribeToRequest(int requestId, RequestType type); Task GetRemainingRequests(OmbiUser user = null); } }