from sqlalchemy import String, Text from sqlalchemy.orm import Mapped, mapped_column from app.db.base import Base, UUIDMixin, TenantMixin, TimestampMixin class InviteToken(Base, UUIDMixin, TenantMixin, TimestampMixin): __tablename__ = "invites" email: Mapped[str] = mapped_column(String(200)) rol: Mapped[str] = mapped_column(String(20)) token: Mapped[str] = mapped_column(String(36), unique=True, index=True) used: Mapped[str | None] = mapped_column(Text) # ISO8601 when used, null if pending