Source code for sqlspec.extensions.events._models
"""Shared data models for the events subsystem."""
from dataclasses import dataclass
from datetime import datetime
from typing import Any
from typing_extensions import final
__all__ = ("EventMessage",)
[docs]
@final
@dataclass(slots=True)
class EventMessage:
"""Structured payload delivered to event handlers."""
event_id: str
channel: str
payload: dict[str, Any]
metadata: dict[str, Any] | None
attempts: int
available_at: datetime
lease_expires_at: datetime | None
created_at: datetime