"""Authentication Pydantic models.""" from pydantic import BaseModel, Field class LoginRequest(BaseModel): """Login request model.""" login: str = Field(..., pattern=r'^\d{8}$', description="8-значный логин") client_ip: str = Field(..., description="IP адрес клиента") class UserResponse(BaseModel): """User response model.""" user_id: str login: str last_login_at: str created_at: str class LoginResponse(BaseModel): """Login response with JWT token.""" access_token: str token_type: str = "bearer" user: UserResponse class TokenPayload(BaseModel): """JWT token payload.""" user_id: str login: str exp: int