import uuid from typing import Optional, Union, List import pydantic from pydantic import Field from core.models.base import BaseModel, BaseCUAt class ModuleModel(pydantic.BaseModel): title: str icon: str description: Optional[str] url: Optional[str] class RoleModel(BaseModel, BaseCUAt): id: Optional[Union[uuid.UUID, str]] = Field(alias='_id') title: str f_routes: Optional[List[str]] units: Optional[List[uuid.UUID]] modules: Optional[List[ModuleModel]]