using System; using System.Collections.Generic; using System.Threading.Tasks; using DevHive.Common.Models.Identity; using DevHive.Common.Models.Misc; using DevHive.Services.Models.Identity.User; namespace DevHive.Services.Interfaces { public interface IUserService { Task LoginUser(LoginServiceModel loginModel); Task RegisterUser(RegisterServiceModel registerModel); Task AddFriend(Guid userId, Guid friendId); Task GetUserByUsername(string username); Task GetUserById(Guid id); Task UpdateUser(UpdateUserServiceModel updateModel); Task PatchUser(Guid id, List patch); Task DeleteUser(Guid id); Task RemoveFriend(Guid userId, Guid friendId); Task ValidJWT(Guid id, string rawTokenData); } }