from abc import ABC, abstractmethod from typing import List class ISpeakingController(ABC): @abstractmethod async def get_speaking_part(self, task: int, topic: str, second_topic: str, difficulty: List[str]): pass @abstractmethod async def get_avatars(self): pass @abstractmethod async def generate_video(self, text: str, avatar: str): pass @abstractmethod async def poll_video(self, vid_id: str): pass