from __future__ import annotations

from datetime import datetime

from pydantic import Field

from app.schemas.common import ORMModel


class UserProfile(ORMModel):
    id: int
    phone: str
    name: str
    nickname: str | None = None
    dailyLimit: int = Field(alias="daily_chat_limit")
    todayUsed: int = Field(alias="daily_chat_used")
    status: int
    effective_at: datetime | None = None
    expired_at: datetime | None = None
    last_login_at: datetime | None = None
    entitlement: dict | None = None
