from sqlalchemy import Column, Integer, String, Enum, DateTime import enum, datetime from ..config import Base class Role(str, enum.Enum): admin = "admin" user = "user" mod = "mod" class Status(str, enum.Enum): banned = "banned" active = "active" suspended = "suspended" class User(Base): __tablename__ = "users" user_id = Column(Integer, primary_key=True) username = Column(String, unique=True) name = Column(String) surname = Column(String) hashedPassword = Column(String) email = Column(String, unique=True) role = Column(Enum(Role), default=Role.user) status = Column(Enum(Status), default=Status.active) bio = Column(String(144)) created_date = Column(DateTime, default=datetime.datetime.utcnow)