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

268 lines
4.6 KiB
Markdown
Raw Normal View History

2022-01-08 17:34:38 +08:00
---
sidebar_position: 11
---
# NoneBot.typing 模块
## 类型
下面的文档中,「类型」部分使用 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 内置类型的别名。
以下类型均可从 nonebot.typing 模块导入。
## `T_State`
- **类型**
`Dict[Any, Any]`
- **说明**
事件处理状态 State 类型
## `T_BotConnectionHook`
- **类型**
`Callable[[Bot], Awaitable[None]]`
- **说明**
Bot 连接建立时执行的函数
## `T_BotDisconnectionHook`
- **类型**
`Callable[[Bot], Awaitable[None]]`
- **说明**
Bot 连接断开时执行的函数
## `T_CallingAPIHook`
- **类型**
`Callable[[Bot, str, Dict[str, Any]], Awaitable[None]]`
- **说明**
`bot.call_api` 时执行的函数
## `T_CalledAPIHook`
- **类型**
`Callable[[Bot, Optional[Exception], str, Dict[str, Any], Any], Awaitable[None]]`
- **说明**
`bot.call_api` 后执行的函数,参数分别为 bot, exception, api, data, result
## `T_EventPreProcessor`
- **类型**
`Callable[..., Union[None, Awaitable[None]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
事件预处理函数 EventPreProcessor 类型
## `T_EventPostProcessor`
- **类型**
`Callable[..., Union[None, Awaitable[None]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
事件预处理函数 EventPostProcessor 类型
## `T_RunPreProcessor`
- **类型**
`Callable[..., Union[None, Awaitable[None]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `MatcherParam`: Matcher 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
事件响应器运行前预处理函数 RunPreProcessor 类型
## `T_RunPostProcessor`
- **类型**
`Callable[..., Union[None, Awaitable[None]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `MatcherParam`: Matcher 对象
- `ExceptionParam`: 异常对象(可能为 None
- `DefaultParam`: 带有默认值的参数
- **说明**
事件响应器运行前预处理函数 RunPostProcessor 类型,第二个参数为运行时产生的错误(如果存在)
## `T_RuleChecker`
- **类型**
`Callable[..., Union[bool, Awaitable[bool]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
RuleChecker 即判断是否响应事件的处理函数。
## `T_PermissionChecker`
- **类型**
`Callable[..., Union[bool, Awaitable[bool]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
RuleChecker 即判断是否响应消息的处理函数。
## `T_Handler`
- **类型**
`Callable[..., Any]`
- **说明**
Handler 处理函数。
## `T_TypeUpdater`
- **类型**
`Callable[..., Union[None, Awaitable[None]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `MatcherParam`: Matcher 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
TypeUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新响应的事件类型。默认会更新为 `message`
## `T_PermissionUpdater`
- **类型**
`Callable[..., Union[Permission, Awaitable[Permission]]]`
- **依赖参数**
- `DependParam`: 子依赖参数
- `BotParam`: Bot 对象
- `EventParam`: Event 对象
- `StateParam`: State 对象
- `MatcherParam`: Matcher 对象
- `DefaultParam`: 带有默认值的参数
- **说明**
PermissionUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新会话对象权限。默认会更新为当前事件的触发对象。
## `T_DependencyCache`
- **类型**
`Dict[Callable[..., Any], Task[Any]]`
- **说明**
依赖缓存, 用于存储依赖函数的返回值