from pydantic import BaseModel, EmailStr from typing import Optional from datetime import datetime from uuid import UUID class RegisterRequest(BaseModel): email: EmailStr password: str class RegisterResponse(BaseModel): id: UUID email: EmailStr message: str class LoginRequest(BaseModel): email: EmailStr password: str class LoginResponse(BaseModel): access_token: str token_type: str user: RegisterResponse class ErrorResponse(BaseModel): detail: str status_code: Optional[int] = None errors: Optional[list] = None class ForgotPasswordRequest(BaseModel): email: EmailStr class ResetPasswordRequest(BaseModel): email: EmailStr new_password: str