Files
taskncoffee/src/core/interfaces.py
2025-09-06 13:54:52 +03:00

24 lines
519 B
Python

from typing import TYPE_CHECKING, Any, Protocol
from sqlalchemy.ext.asyncio import AsyncSession
if TYPE_CHECKING:
from src.repository.tasks import TasksRepo
from src.repository.users import UsersRepo
class HasId(Protocol):
id: Any
class IUOWDB(Protocol):
session: AsyncSession
user: 'UsersRepo'
task: 'TasksRepo'
async def __aenter__(self) -> "IUOWDB": ...
async def __aexit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) -> None: ...
async def commit(self) -> None: ...