using System.Collections.Generic; using System.Threading.Tasks; using ErsatzTV.Core.Domain; using LanguageExt; namespace ErsatzTV.Core.Interfaces.Repositories { public interface IMediaItemRepository { Task Add(MediaItem mediaItem); Task> Get(int id); Task> GetAll(); Task> Search(string searchString); // Task> GetPageByType(AggregateMediaItemType itemType, int pageNumber, int pageSize); // Task GetCountByType(AggregateMediaItemType itemType); Task> GetAllByMediaSourceId(int mediaSourceId); Task Update(MediaItem mediaItem); Task Delete(int mediaItemId); } }