from sqlalchemy import Boolean, Column, Integer, String

from src.core.models.base import Base


class Permission(Base):
    """
    Permission Model: ORM class for Permission Entity
    """

    __tablename__ = "permissions"

    id = Column(Integer, primary_key=True, index=True, autoincrement=True)
    module = Column(String(50))
    submodule = Column(String(255))
    operation = Column(String(255))
    operation_label = Column(String(255))
    is_active = Column(Boolean, nullable=True, default=True)
    display_order = Column(Integer, default=0)
