using Microsoft.Net.Http.Headers; using Roadie.Library; using Roadie.Library.Imaging; using Roadie.Library.SearchEngines.Imaging; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace Roadie.Api.Services { public interface IImageService { string Referrer { get; set; } string RequestIp { get; set; } Task> ArtistImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> ArtistSecondaryImageAsync(Guid id, int imageId, int? width, int? height, EntityTagHeaderValue etag = null); Task> CollectionImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> GenreImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> LabelImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> PlaylistImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> ReleaseImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> ReleaseSecondaryImageAsync(Guid id, int imageId, int? width, int? height, EntityTagHeaderValue etag = null); Task>> SearchAsync(string query, int resultsCount = 10); Task> TrackImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); Task> UserImageAsync(Guid id, int? width, int? height, EntityTagHeaderValue etag = null); } }