Ruby-Cogs/bankdecay/abc.py
2025-05-23 02:30:00 -04:00

27 lines
585 B
Python

import typing as t
from abc import ABCMeta, abstractmethod
import discord
from discord.ext.commands.cog import CogMeta
from redbot.core.bot import Red
from .common.models import DB
class CompositeMetaClass(CogMeta, ABCMeta):
"""Type detection"""
class MixinMeta(metaclass=ABCMeta):
"""Type hinting"""
bot: Red
db: DB
@abstractmethod
async def save(self) -> None:
raise NotImplementedError
@abstractmethod
async def decay_guild(self, guild: discord.Guild, check_only: bool = False) -> t.Dict[str, int]:
raise NotImplementedError