mirror of
https://github.com/azaion/gps-denied-desktop.git
synced 2026-04-22 23:56:35 +00:00
initial structure implemented
docs -> _docs
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
from abc import ABC, abstractmethod
|
||||
from typing import AsyncIterator
|
||||
|
||||
from models.results import FrameResult
|
||||
from models.recovery import UserInputRequest
|
||||
|
||||
|
||||
class SSEEventStreamerBase(ABC):
|
||||
@abstractmethod
|
||||
async def emit_frame_result(
|
||||
self, flight_id: str, result: FrameResult
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
async def emit_status_update(
|
||||
self, flight_id: str, status: dict
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
async def emit_user_input_request(
|
||||
self, flight_id: str, request: UserInputRequest
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
async def emit_error(
|
||||
self, flight_id: str, error: str
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def subscribe(self, flight_id: str) -> AsyncIterator[dict]:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
async def unsubscribe(self, flight_id: str, subscriber_id: str) -> None:
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
async def get_subscriber_count(self, flight_id: str) -> int:
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user