diff --git a/crenata/application/tree.py b/crenata/application/tree.py index 7a7e0ca..12c6d36 100644 --- a/crenata/application/tree.py +++ b/crenata/application/tree.py @@ -1,23 +1,25 @@ from __future__ import annotations from discord import Interaction -from discord._types import ClientT from discord.app_commands.errors import AppCommandError from discord.app_commands.tree import CommandTree +from crenata.application.client import Crenata from crenata.application.error.handler import ErrorHandler -class CrenataCommandTree(CommandTree[ClientT]): - def __init__(self, client: ClientT, *, fallback_to_global: bool = True): +class CrenataCommandTree(CommandTree[Crenata]): + def __init__(self, client: Crenata, *, fallback_to_global: bool = True): super().__init__(client, fallback_to_global=fallback_to_global) + self.error_handler: ErrorHandler[Crenata] = ErrorHandler() - self.error_handler: ErrorHandler[ClientT] = ErrorHandler() - - def set_error_handler(self, handler: ErrorHandler[ClientT]) -> None: + def set_error_handler(self, handler: ErrorHandler[Crenata]) -> None: self.error_handler = handler async def on_error( - self, interaction: Interaction[ClientT], error: AppCommandError + self, interaction: Interaction[Crenata], error: AppCommandError ) -> None: await self.error_handler.on_error(interaction, error) + + async def interaction_check(self, interaction: Interaction[Crenata]) -> bool: + ... diff --git a/crenata/application/view/__init__.py b/crenata/application/view/__init__.py index 3b23147..3447c64 100644 --- a/crenata/application/view/__init__.py +++ b/crenata/application/view/__init__.py @@ -1,6 +1,6 @@ from __future__ import annotations -from typing import Any, Optional +from typing import Optional from discord import Interaction from discord.interactions import Interaction @@ -20,9 +20,9 @@ def __init__( super().__init__(timeout=timeout) self.executor_id = executor_id - self.error_handler: ErrorHandler[Any] = ErrorHandler() + self.error_handler = ErrorHandler() - def set_error_handler(self, handler: ErrorHandler[Any]) -> None: + def set_error_handler(self, handler: ErrorHandler) -> None: self.error_handler = handler async def interaction_check(self, interaction: Interaction) -> bool: