using System; using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNet.Identity; using Bit.Core.Domains; namespace Bit.Core.Services { public interface IUserService { Task GetUserByIdAsync(string userId); Task SaveUserAsync(User user); Task InitiateRegistrationAsync(string email); Task RegisterUserAsync(string token, User user, string masterPassword); Task SendMasterPasswordHintAsync(string email); Task InitiateEmailChangeAsync(User user, string newEmail); Task ChangeEmailAsync(User user, string masterPassword, string newEmail, string newMasterPassword, string token, IEnumerable ciphers); Task ChangePasswordAsync(User user, string currentMasterPasswordHash, string newMasterPasswordHash, IEnumerable ciphers); Task RefreshSecurityStampAsync(User user, string masterPasswordHash); Task GetTwoFactorAsync(User user, Enums.TwoFactorProvider provider); Task DeleteAsync(User user); } }