using System.Threading.Tasks;
using EstusShots.Shared.Models;
using EstusShots.Shared.Models.Parameters;
namespace EstusShots.Shared.Interfaces
{
///
/// Access to episodes
///
public interface IEpisodesController
{
///
/// Load all episodes for a season
///
/// The parameter object
/// The GetEpisodes response object
Task> GetEpisodes(GetEpisodesParameter parameter);
///
/// Load a single episode
///
/// Parameter object for loading a single episode
/// The GetEpisode response object
Task> GetEpisode(GetEpisodeParameter parameter);
///
/// Creates or updates an episode object
///
/// The parameter object
/// The response object
Task> SaveEpisode(SaveEpisodeParameter parameter);
}
}