nonebot2/website/versioned_docs/version-2.0.0-beta.3/api/typing.md

220 lines
5.2 KiB
Markdown
Raw Normal View History

2022-05-20 18:21:32 +08:00
---
sidebar_position: 11
description: nonebot.typing 模块
---
# nonebot.typing
本模块定义了 NoneBot 模块中共享的一些类型。
下面的文档中,「类型」部分使用 Python 的 Type Hint 语法,
参考 [`PEP 484`](https://www.python.org/dev/peps/pep-0484/),
[`PEP 526`](https://www.python.org/dev/peps/pep-0526/) 和
[`typing`](https://docs.python.org/3/library/typing.html)。
除了 Python 内置的类型,下面还出现了如下 NoneBot 自定类型,实际上它们是 Python 内置类型的别名。
## _var_ `T_State` {#T_State}
- **类型:** dict[Any, Any]
- **说明:** 事件处理状态 State 类型
## _var_ `T_BotConnectionHook` {#T_BotConnectionHook}
- **类型:** (\*Any, \*\*Any) -> Awaitable[Any]
- **说明**
Bot 连接建立时钩子函数
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_BotDisconnectionHook` {#T_BotDisconnectionHook}
- **类型:** (\*Any, \*\*Any) -> Awaitable[Any]
- **说明**
Bot 连接断开时钩子函数
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_CallingAPIHook` {#T_CallingAPIHook}
- **类型:** (Bot, str, dict[str, Any]) -> Awaitable[Any]
- **说明:** `bot.call_api` 钩子函数
## _var_ `T_CalledAPIHook` {#T_CalledAPIHook}
- **类型:** (Bot, Exception | None, str, dict[str, Any], Any) -> Awaitable[Any]
- **说明:** `bot.call_api` 后执行的函数,参数分别为 bot, exception, api, data, result
## _var_ `T_EventPreProcessor` {#T_EventPreProcessor}
- **类型:** (\*Any, \*\*Any) -> Any | Awaitable[Any]
- **说明**
事件预处理函数 EventPreProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_EventPostProcessor` {#T_EventPostProcessor}
- **类型:** (\*Any, \*\*Any) -> Any | Awaitable[Any]
- **说明**
事件预处理函数 EventPostProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_RunPreProcessor` {#T_RunPreProcessor}
- **类型:** (\*Any, \*\*Any) -> Any | Awaitable[Any]
- **说明**
事件响应器运行前预处理函数 RunPreProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_RunPostProcessor` {#T_RunPostProcessor}
- **类型:** (\*Any, \*\*Any) -> Any | Awaitable[Any]
- **说明**
事件响应器运行前预处理函数 RunPostProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- ExceptionParam: 异常对象(可能为 None
- DefaultParam: 带有默认值的参数
## _var_ `T_RuleChecker` {#T_RuleChecker}
- **类型:** (\*Any, \*\*Any) -> bool | Awaitable[bool]
- **说明**
RuleChecker 即判断是否响应事件的处理函数。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_PermissionChecker` {#T_PermissionChecker}
- **类型:** (\*Any, \*\*Any) -> bool | Awaitable[bool]
- **说明**
PermissionChecker 即判断事件是否满足权限的处理函数。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_Handler` {#T_Handler}
- **类型:** (\*Any, \*\*Any) -> Any
- **说明:** Handler 处理函数。
## _var_ `T_TypeUpdater` {#T_TypeUpdater}
- **类型:** (\*Any, \*\*Any) -> str | Awaitable[str]
- **说明**
TypeUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新响应的事件类型。默认会更新为 `message`
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_PermissionUpdater` {#T_PermissionUpdater}
- **类型:** (\*Any, \*\*Any) -> Permission | Awaitable[Permission]
- **说明**
PermissionUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新会话对象权限。默认会更新为当前事件的触发对象。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_DependencyCache` {#T_DependencyCache}
- **类型:** dict[(\*Any, \*\*Any) -> Any, Task[Any]]
- **说明:** 依赖缓存, 用于存储依赖函数的返回值
## _def_ `overrides(InterfaceClass)` {#overrides}
- **说明**
标记一个方法为父类 interface 的 implement
- **参数**
- `InterfaceClass` (object)
- **返回**
- ((~ T_Wrapped)) -> (~ T_Wrapped)