from datetime import datetime from sqlalchemy import Column, DateTime, Float, Integer, String, func from sqlalchemy.orm import declarative_base from sqlalchemy import JSON as JSONType # type: ignore Base = declarative_base() class ECGSample(Base): """ Database model for storing ECG signals and associated metadata. """ __tablename__ = "ecg_samples" id = Column(Integer, primary_key=True, index=True) patient_id = Column(String, index=True, nullable=False) created_at = Column(DateTime(timezone=True), server_default=func.now(), nullable=False) signal = Column(JSONType, nullable=False) label = Column(String, nullable=True) score = Column(Float, nullable=True) alert_level = Column(String, nullable=True) hr = Column(Integer, nullable=True) # Additional metadata fields device_id = Column(String, nullable=True) sampling_rate = Column(Float, nullable=True)