from datetime import datetime
from typing import Literal

from pydantic import BaseModel


PublicIPCheckStatus = Literal["first_seen", "unchanged", "changed", "error"]


class PublicIPCheckResponse(BaseModel):
    status: PublicIPCheckStatus
    checked_at: datetime
    changed: bool
