18 lines
588 B
Python
18 lines
588 B
Python
from typing import Protocol
|
|
|
|
from app.models.tasks import Max2TgTask, NotifyFallbackTask, SetReactionTask, Tg2MaxTask
|
|
|
|
|
|
class QueuePort(Protocol):
|
|
async def connect(self) -> None: ...
|
|
|
|
async def close(self) -> None: ...
|
|
|
|
async def enqueue_max2tg(self, task: Max2TgTask | SetReactionTask | NotifyFallbackTask) -> None: ...
|
|
|
|
async def dequeue_max2tg(self, timeout: int = 0) -> Max2TgTask | SetReactionTask | NotifyFallbackTask | None: ...
|
|
|
|
async def enqueue_tg2max(self, task: Tg2MaxTask) -> None: ...
|
|
|
|
async def dequeue_tg2max(self, timeout: int = 0) -> Tg2MaxTask | None: ...
|