from backend.infra.auth.user_auth_handler import ( UserAuthHandler, ) from backend.models.user.constants import ( AuthType, ) from typing import Optional class UserAuthService: def __init__(self): self.user_auth_handler = UserAuthHandler() async def get_user_id_by_email(self, email: str) -> Optional[str]: return await self.user_auth_handler.get_user_id_by_email(email) async def verify_email_with_code(self, email: str, code: str) -> bool: return await self.user_auth_handler.verify_email_code(email, code) async def is_password_reset_required(self, user_id: str) -> bool: return await self.user_auth_handler.is_password_reset_required(user_id) async def is_flid_reset_required(self, user_id: str) -> bool: return await self.user_auth_handler.is_flid_reset_required(user_id) async def is_flid_available(self, user_flid: str) -> bool: return await self.user_auth_handler.is_flid_available(user_flid) async def get_user_flid(self, user_id: str) -> str: return await self.user_auth_handler.get_flid(user_id) async def update_flid(self, user_id: str, user_flid: str) -> str: return await self.user_auth_handler.update_flid(user_id, user_flid) async def generate_auth_code_for_object( self, deliver_object: str, auth_type: AuthType ) -> str: return await self.user_auth_handler.generate_auth_code( deliver_object, auth_type ) async def verify_user_with_password(self, user_id: str, password: str) -> bool: return await self.user_auth_handler.verify_user_with_password(user_id, password) async def reset_password(self, user_id: str): return await self.user_auth_handler.reset_password(user_id) async def save_password_auth_method( self, user_id: str, user_flid: str, password: str ): return await self.user_auth_handler.save_password_auth_method( user_id, user_flid, password )