"""Sleep database model.""" from typing import TYPE_CHECKING from sqlalchemy import Column, Integer, DateTime, ForeignKey from datetime import datetime, UTC if TYPE_CHECKING: from sqlalchemy.orm import DeclarativeBase Base = DeclarativeBase else: from baby_monitor.repositories.dependencies.get_database import Base class Sleep(Base): """Sleep log database model.""" __tablename__ = "sleep_logs" id = Column(Integer, primary_key=True, index=True) child_id = Column(Integer, ForeignKey("children.id"), nullable=False) start_time = Column(DateTime, nullable=False) end_time = Column(DateTime, nullable=True) created_at = Column(DateTime, default=datetime.now(UTC), nullable=False) def __repr__(self) -> str: return f""