# -*- coding: utf-8 -*-"""The base class for plan storage."""fromabcimportabstractmethodfromagentscope.moduleimportStateModulefromagentscope.plan._plan_modelimportPlan
[docs]classPlanStorageBase(StateModule):"""The base class for plan storage."""
[docs]@abstractmethodasyncdefadd_plan(self,plan:Plan)->None:"""Add a plan to the storage."""
[docs]@abstractmethodasyncdefdelete_plan(self,plan_id:str)->None:"""Delete a plan from the storage."""
[docs]@abstractmethodasyncdefget_plans(self)->list[Plan]:"""Get all plans from the storage."""
[docs]@abstractmethodasyncdefget_plan(self,plan_id:str)->Plan|None:"""Get a plan by its ID."""