from abc import ABC, abstractmethod
from typing import Any, Mapping
from pydantic import BaseModel
from .task import TaskRunner
[docs]
class Team(ABC, TaskRunner):
[docs]
@abstractmethod
async def reset(self) -> None:
"""Reset the team and all its participants to its initial state."""
...
[docs]
@abstractmethod
async def save_state(self) -> Mapping[str, Any]:
"""Save the current state of the team."""
...
[docs]
@abstractmethod
async def load_state(self, state: Mapping[str, Any]) -> None:
"""Load the state of the team."""
...