from datetime import datetime from typing import Optional from sqlmodel import Field, SQLModel class PushSubscription(SQLModel, table=True): id: Optional[int] = Field(default=None, primary_key=True) user_id: int = Field(foreign_key="user.id", index=True) endpoint: str = Field(unique=True, index=True) p256dh: str auth: str reminder_hour: int = Field(default=9) reminder_minute: int = Field(default=0) timezone: str = Field(default="UTC") is_active: bool = Field(default=True) created_at: datetime = Field(default_factory=datetime.utcnow)