using System; using System.Collections.Generic; using System.Threading.Tasks; using ErsatzTV.Core.Domain; using LanguageExt; namespace ErsatzTV.Core.Interfaces.Repositories { public interface IPlayoutRepository { public Task Add(Playout playout); public Task> Get(int id); public Task> GetFull(int id); public Task> GetPlayoutItem(int channelId, DateTimeOffset now); public Task> GetPlayoutItems(int playoutId); public Task> GetPlayoutIdsForMediaItems(Seq mediaItems); public Task> GetAll(); public Task Update(Playout playout); public Task Delete(int playoutId); } }