SeaCogs/aurora/abc.py

28 lines
624 B
Python

from abc import ABC
from redbot.core import commands
from redbot.core.bot import Red
from .utilities.config import Config
class CompositeMetaClass(type(commands.Cog), type(ABC)):
"""
This allows the metaclass used for proper type detection to
coexist with discord.py's metaclass
"""
pass
class Mixin(ABC):
"""
Base class for well behaved type hint detection with composite class.
Basically, to keep developers sane when not all attributes are defined in each mixin.
"""
def __init__(self, *_args):
super().__init__()
self.config: Config
self.bot: Red