mirror of
https://github.com/RafaelSolVargas/Vulkan.git
synced 2025-10-29 16:57:23 +00:00
32 lines
839 B
Python
32 lines
839 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Union
|
|
from discord.ext.commands import Context
|
|
from discord import Guild, Interaction
|
|
from Music.Song import Song
|
|
from Parallelism.ProcessInfo import PlayerInfo
|
|
|
|
|
|
class AbstractPlayersManager(ABC):
|
|
def __init__(self, bot) -> None:
|
|
pass
|
|
|
|
@abstractmethod
|
|
def setPlayerInfo(self, guild: Guild, info: PlayerInfo):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def getOrCreatePlayerInfo(self, guild: Guild, context: Union[Context, Interaction]) -> PlayerInfo:
|
|
pass
|
|
|
|
@abstractmethod
|
|
def resetProcess(self, guild: Guild, context: Context) -> None:
|
|
pass
|
|
|
|
@abstractmethod
|
|
def getRunningPlayerInfo(self, guild: Guild) -> PlayerInfo:
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def showNowPlaying(self, guildID: int, song: Song) -> None:
|
|
pass
|