using WatchIt.Common.Model.Genres; using WatchIt.Common.Model.Media; namespace WatchIt.Website.Services.WebAPI.Media; public interface IMediaWebAPIService { Task Get(long mediaId, Action successAction = null, Action? notFoundAction = null); Task GetGenres(long mediaId, Action>? successAction = null, Action? notFoundAction = null); Task PostGenre(long mediaId, long genreId, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null, Action? notFoundAction = null); Task GetPhotoRandomBackground(Action? successAction = null, Action? notFoundAction = null); Task GetPoster(long mediaId, Action? successAction = null, Action>? badRequestAction = null, Action? notFoundAction = null); Task PutPoster(long mediaId, MediaPosterRequest data, Action? successAction = null, Action>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null); Task DeletePoster(long mediaId, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null); }