Files

23 lines
568 B
Python

from abc import ABC, abstractmethod
from typing import Dict, List, Optional
class IVideoGeneratorService(ABC):
def __init__(self, avatars: Dict):
self._avatars = avatars
async def get_avatars(self) -> List[Dict]:
return [
{"name": name, "gender": data["avatar_gender"]}
for name, data in self._avatars.items()
]
@abstractmethod
async def create_video(self, text: str, avatar: str):
pass
@abstractmethod
async def poll_status(self, video_id: str):
pass