package com.hepl.tunefortwo.service;

import org.springframework.http.ResponseEntity;

import com.hepl.tunefortwo.dto.ResetPasswordDto;
import com.hepl.tunefortwo.dto.UserDTO;
import com.hepl.tunefortwo.entity.Users;

import jakarta.mail.MessagingException;

public interface UserService {

    Users saveUser(UserDTO users);
    
    Users findUserForEmail (String email);
    
    String generateResetToken();
    
    Users setResetToken(Users user, String token) throws MessagingException;
    
    Users findUserByToken (String token);
    
    boolean isResetTokenExpired(Users user);
    
    ResponseEntity<String> updateNewPassword(ResetPasswordDto newPass);

}