from pydantic import BaseModel, EmailStr, field_validator class UserRegisterRequest(BaseModel): email: EmailStr password: str @field_validator("password") @classmethod def password_min_length(cls, v: str) -> str: if len(v) < 8: raise ValueError("Password must be at least 8 characters long") return v class UserLoginRequest(BaseModel): email: EmailStr password: str class UserResponse(BaseModel): id: int email: str model_config = {"from_attributes": True} class TokenResponse(BaseModel): access_token: str token_type: str = "bearer"