"""Pydantic schemas for authentication endpoints.""" import uuid from pydantic import BaseModel class LoginRequest(BaseModel): """Body for the login endpoint (unused directly — we rely on ``OAuth2PasswordRequestForm``, but kept for documentation / testing).""" username: str password: str class TokenResponse(BaseModel): """Response returned after a successful login.""" access_token: str token_type: str = "bearer" class UserOut(BaseModel): """Public representation of a user (no password hash).""" id: uuid.UUID username: str email: str | None = None role: str is_active: bool must_change_password: bool = True class Config: from_attributes = True