from pydantic import BaseModel from typing import Union, Dict, Any, List, Optional from datetime import datetime class EdgeTaskStep(BaseModel): component: Optional[str] method: str params: Dict[str, Any] class EdgeTask(BaseModel): id: int name: str creator: str createTime: datetime steps: List[Union[EdgeTaskStep, List[EdgeTaskStep]]]