23 lines
558 B
Python
23 lines
558 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Dict, List
|
|
|
|
|
|
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 pool_status(self, video_id: str):
|
|
pass
|