using IOL.Fagprove.Data.Models;
using IOL.Fagprove.Data.DTOs;
namespace IOL.Fagprove.Services.Interfaces
{
public interface IUserService
{
///
/// Sends welcome mail to the provided user.
///
/// User to send mail to.
/// Boolean indicating if the mail was sent or not.
bool SetTemporaryPasswordAndSendWelcomeMail(User user);
///
/// Creates and sets a new temporary password on a user.
///
/// User to work on.
/// Returns the password or default if the task was unsuccesful.
bool SetNewTemporaryPasswordAndNotifyUser(User user);
///
/// Updates the provided users password with the provided password.
///
/// User to update.
/// Unhashed new password.
/// Boolean indicating if the new password was set and saved to the database.
bool UpdatePassword(User user, string password);
}
}