from abc import ABC, abstractmethod from typing import Union, Optional class ITextToSpeechService(ABC): @abstractmethod async def synthesize_speech(self, text: str, voice: str, engine: str, output_format: str): pass @abstractmethod async def text_to_speech(self, dialog, include_final_cue = True) -> bytes: pass