from db.base import Base
from sqlalchemy import Column, String, Boolean, DateTime, func, JSON, Integer
import uuid

class ModelCatalog(Base):
    __tablename__ = "model_catalog"
    id = Column(String(36), primary_key=True, default=lambda: str(uuid.uuid4()))
    model_id = Column(String(50), unique=True, nullable=False)
    display_name = Column(String(100))
    description = Column(String(255))
    model_type = Column(String(20))
    provider_name = Column(String(50))
    provider_model_name = Column(String(50))
    is_active = Column(Boolean, default=True)
    pricing_mode = Column(String(30))
    price_per_100_tokens_paise = Column(Integer, default=0)
    price_per_image_paise = Column(Integer, default=0)
    price_per_video_second_paise = Column(Integer, default=0)
    metadata_json = Column(JSON, default={})
    created_at = Column(DateTime, server_default=func.now())
    updated_at = Column(DateTime, onupdate=func.now())
