mirror of
https://github.com/RafaelSolVargas/Vulkan.git
synced 2025-10-29 16:57:23 +00:00
40 lines
980 B
Python
40 lines
980 B
Python
from discord import Message, WebhookMessage
|
|
from abc import ABC, abstractmethod
|
|
|
|
|
|
class VAbstractMessage(ABC):
|
|
"""
|
|
Abstract class to allow create a pattern when dealing with multiple Discord
|
|
messages types, such as Interaction Messages and the standard discord messages
|
|
that contains two different ways of deletion
|
|
"""
|
|
@abstractmethod
|
|
async def delete(self):
|
|
pass
|
|
|
|
|
|
class VWebHookMessage(VAbstractMessage):
|
|
"""
|
|
Holds a WebhookMessage instance
|
|
"""
|
|
|
|
def __init__(self, message: WebhookMessage) -> None:
|
|
self.__message = message
|
|
super().__init__()
|
|
|
|
async def delete(self):
|
|
await self.__message.delete()
|
|
|
|
|
|
class VDefaultMessage(VAbstractMessage):
|
|
"""
|
|
Holds a Message instance, the basic Discord message type
|
|
"""
|
|
|
|
def __init__(self, message: Message) -> None:
|
|
self.__message = message
|
|
super().__init__()
|
|
|
|
async def delete(self):
|
|
await self.__message.delete()
|