22 lines
450 B
Python
22 lines
450 B
Python
from abc import ABC, abstractmethod
|
|
|
|
from app.modules.project.domain.entities import Project
|
|
|
|
|
|
class ProjectRepository(ABC):
|
|
@abstractmethod
|
|
def list_all(self) -> list[Project]:
|
|
...
|
|
|
|
@abstractmethod
|
|
def get_by_id(self, project_id: str) -> Project | None:
|
|
...
|
|
|
|
@abstractmethod
|
|
def save(self, project: Project) -> None:
|
|
...
|
|
|
|
@abstractmethod
|
|
def delete(self, project_id: str) -> None:
|
|
...
|