using System; using System.Threading.Tasks; using DevHive.Services.Models.ProfilePicture; namespace DevHive.Services.Interfaces { public interface IProfilePictureService { /// /// Inserts a user's profile picture in the database and cloud /// /// User's Guid and his/hers profile picture as file /// The new profile picture's URL in the cloud Task InsertProfilePicture(ProfilePictureServiceModel profilePictureServiceModel); /// /// Get a profile picture by it's Guid /// /// Profile picture's Guid /// The profile picture's URL in the cloud Task GetProfilePictureById(Guid id); /// /// Uploads the given picture and assigns it's link to the user in the database /// /// Contains User's Guid and the new picture to be updated /// The new profile picture's URL in the cloud Task UpdateProfilePicture(ProfilePictureServiceModel profilePictureServiceModel); /// /// Delete a profile picture from the cloud and the database /// /// The profile picture's Guid /// True if the picture is deleted, false otherwise Task DeleteProfilePicture(Guid id); } }