from datetime import datetime, timezone from typing import Optional from sqlmodel import SQLModel, Field class SleepSession(SQLModel, table=True): __tablename__ = "sleep_session" id: Optional[int] = Field(default=None, primary_key=True) start_time: datetime = Field(nullable=False) end_time: Optional[datetime] = Field(default=None, nullable=True) notes: Optional[str] = Field(default=None) created_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc)) updated_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))