77import logging
88import discord
99from enum import Enum
10- from typing import Callable , overload , Literal , Any , Awaitable
10+ from typing import Callable , overload , Literal , Awaitable , ParamSpec , TypedDict
1111
1212from . import _types
1313
14+ P = ParamSpec ('P' )
15+
1416GetChannelCallback = Callable [[_types .snowflake .Snowflake ], Awaitable [None ]]
1517SendMessageCallback = Callable [[discord .Message ], Awaitable [None ]]
16- EditMemberCallback = Callable [[dict [str , Any ], discord .Member , str | None ], Awaitable [None ]]
17- Callback = GetChannelCallback | SendMessageCallback | EditMemberCallback | Callable [..., Awaitable [None ]]
18+ EditMemberCallback = Callable [[dict [str , object ], discord .Member , str | None ], Awaitable [None ]]
19+ Callback = GetChannelCallback | SendMessageCallback | EditMemberCallback | Callable [..., Awaitable [None ]] # type: ignore[explicit-any]
1820
1921log = logging .getLogger ("discord.ext.tests" )
2022
@@ -50,7 +52,7 @@ class CallbackEvent(Enum):
5052_callbacks : dict [CallbackEvent , Callback ] = {}
5153
5254
53- async def dispatch_event (event : CallbackEvent , * args : Any , ** kwargs : Any ) -> None :
55+ async def dispatch_event (event : CallbackEvent , * args : object , ** kwargs : object ) -> None :
5456 """
5557 Dispatch an event to a set handler, if one exists. Will ignore handler errors,
5658 just print a log
@@ -62,7 +64,7 @@ async def dispatch_event(event: CallbackEvent, *args: Any, **kwargs: Any) -> Non
6264 cb = _callbacks .get (event )
6365 if cb is not None :
6466 try :
65- await cb (* args , ** kwargs )
67+ await cb (* args , ** kwargs ) # type: ignore[arg-type]
6668 except Exception as e :
6769 log .error (f"Error in handler for event { event } : { e } " )
6870
0 commit comments