using Microsoft.AspNetCore.Http; using Roadie.Library; using Roadie.Library.Models; using Roadie.Library.Models.Pagination; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace Roadie.Api.Services { public interface ILabelService { Task> ByIdAsync(Library.Models.Users.User roadieUser, Guid id, IEnumerable includes = null); Task> DeleteAsync(Library.Identity.User user, Guid id); Task> ListAsync(Library.Models.Users.User roadieUser, PagedRequest request, bool? doRandomize = false); Task> MergeLabelsIntoLabelAsync(Library.Identity.User user, Guid intoLabelId, IEnumerable labelIdsToMerge); Task> SetLabelImageByUrlAsync(Library.Models.Users.User user, Guid id, string imageUrl); Task> UpdateLabelAsync(Library.Models.Users.User user, Label label); Task> UploadLabelImageAsync(Library.Models.Users.User user, Guid id, IFormFile file); } }