from abc import ABC, abstractmethod from typing import List, Dict, Optional class ISpeakingService(ABC): @abstractmethod async def get_speaking_part( self, part: int, topic: str, second_topic: str, difficulty: str ) -> Dict: pass @abstractmethod async def grade_speaking_task(self, task: int, answers: List[Dict]) -> Dict: pass