ErisPulse 2.3.3.dev0__py3-none-any.whl → 2.3.4.dev2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. ErisPulse/CLI/__init__.py +11 -0
  2. ErisPulse/CLI/__init__.pyi +13 -0
  3. ErisPulse/CLI/base.py +52 -0
  4. ErisPulse/CLI/base.pyi +50 -0
  5. ErisPulse/CLI/cli.py +224 -0
  6. ErisPulse/CLI/cli.pyi +80 -0
  7. ErisPulse/CLI/commands/__init__.py +6 -0
  8. ErisPulse/CLI/commands/__init__.pyi +12 -0
  9. ErisPulse/CLI/commands/init.py +395 -0
  10. ErisPulse/CLI/commands/init.pyi +70 -0
  11. ErisPulse/CLI/commands/install.py +302 -0
  12. ErisPulse/CLI/commands/install.pyi +58 -0
  13. ErisPulse/CLI/commands/list.py +160 -0
  14. ErisPulse/CLI/commands/list.pyi +44 -0
  15. ErisPulse/CLI/commands/list_remote.py +123 -0
  16. ErisPulse/CLI/commands/list_remote.pyi +35 -0
  17. ErisPulse/CLI/commands/run.py +108 -0
  18. ErisPulse/CLI/commands/run.pyi +39 -0
  19. ErisPulse/CLI/commands/self_update.py +232 -0
  20. ErisPulse/CLI/commands/self_update.pyi +47 -0
  21. ErisPulse/CLI/commands/uninstall.py +32 -0
  22. ErisPulse/CLI/commands/uninstall.pyi +24 -0
  23. ErisPulse/CLI/commands/upgrade.py +56 -0
  24. ErisPulse/CLI/commands/upgrade.pyi +25 -0
  25. ErisPulse/CLI/console.pyi +20 -0
  26. ErisPulse/CLI/registry.py +112 -0
  27. ErisPulse/CLI/registry.pyi +99 -0
  28. ErisPulse/{utils → CLI/utils}/__init__.py +2 -6
  29. ErisPulse/CLI/utils/__init__.pyi +14 -0
  30. ErisPulse/{utils → CLI/utils}/package_manager.py +146 -20
  31. ErisPulse/CLI/utils/package_manager.pyi +241 -0
  32. ErisPulse/{utils → CLI/utils}/reload_handler.py +7 -8
  33. ErisPulse/CLI/utils/reload_handler.pyi +64 -0
  34. ErisPulse/Core/Bases/__init__.pyi +14 -0
  35. ErisPulse/Core/Bases/adapter.py +13 -1
  36. ErisPulse/Core/Bases/adapter.pyi +140 -0
  37. ErisPulse/Core/Bases/manager.py +136 -0
  38. ErisPulse/Core/Bases/manager.pyi +108 -0
  39. ErisPulse/Core/Bases/module.py +53 -1
  40. ErisPulse/Core/Bases/module.pyi +95 -0
  41. ErisPulse/Core/Event/__init__.pyi +26 -0
  42. ErisPulse/Core/Event/base.pyi +62 -0
  43. ErisPulse/Core/Event/command.py +6 -1
  44. ErisPulse/Core/Event/command.pyi +113 -0
  45. ErisPulse/Core/Event/exceptions.pyi +43 -0
  46. ErisPulse/Core/Event/message.pyi +93 -0
  47. ErisPulse/Core/Event/meta.pyi +92 -0
  48. ErisPulse/Core/Event/notice.pyi +108 -0
  49. ErisPulse/Core/Event/request.pyi +76 -0
  50. ErisPulse/Core/Event/wrapper.py +2 -3
  51. ErisPulse/Core/Event/wrapper.pyi +403 -0
  52. ErisPulse/Core/__init__.py +16 -13
  53. ErisPulse/Core/__init__.pyi +16 -0
  54. ErisPulse/Core/_self_config.py +1 -1
  55. ErisPulse/Core/_self_config.pyi +72 -0
  56. ErisPulse/Core/adapter.py +70 -10
  57. ErisPulse/Core/adapter.pyi +246 -0
  58. ErisPulse/Core/config.pyi +70 -0
  59. ErisPulse/Core/exceptions.py +4 -2
  60. ErisPulse/Core/exceptions.pyi +60 -0
  61. ErisPulse/Core/lifecycle.py +15 -1
  62. ErisPulse/Core/lifecycle.pyi +92 -0
  63. ErisPulse/Core/logger.py +21 -15
  64. ErisPulse/Core/logger.pyi +169 -0
  65. ErisPulse/Core/module.py +57 -9
  66. ErisPulse/Core/module.pyi +189 -0
  67. ErisPulse/Core/router.py +13 -5
  68. ErisPulse/Core/router.pyi +120 -0
  69. ErisPulse/Core/storage.py +94 -256
  70. ErisPulse/Core/storage.pyi +220 -0
  71. ErisPulse/__init__.py +35 -1236
  72. ErisPulse/__init__.pyi +22 -0
  73. ErisPulse/__main__.py +1 -1
  74. ErisPulse/__main__.pyi +24 -0
  75. ErisPulse/loaders/__init__.py +22 -0
  76. ErisPulse/loaders/__init__.pyi +21 -0
  77. ErisPulse/loaders/adapter_loader.py +187 -0
  78. ErisPulse/loaders/adapter_loader.pyi +82 -0
  79. ErisPulse/loaders/base_loader.py +162 -0
  80. ErisPulse/loaders/base_loader.pyi +23 -0
  81. ErisPulse/loaders/initializer.py +150 -0
  82. ErisPulse/loaders/initializer.pyi +60 -0
  83. ErisPulse/loaders/module_loader.py +618 -0
  84. ErisPulse/loaders/module_loader.pyi +179 -0
  85. ErisPulse/loaders/strategy.py +129 -0
  86. ErisPulse/loaders/strategy.pyi +90 -0
  87. ErisPulse/sdk.py +435 -0
  88. ErisPulse/sdk.pyi +158 -0
  89. {erispulse-2.3.3.dev0.dist-info → erispulse-2.3.4.dev2.dist-info}/METADATA +6 -20
  90. erispulse-2.3.4.dev2.dist-info/RECORD +103 -0
  91. {erispulse-2.3.3.dev0.dist-info → erispulse-2.3.4.dev2.dist-info}/licenses/LICENSE +3 -3
  92. ErisPulse/Core/ux.py +0 -635
  93. ErisPulse/utils/cli.py +0 -1097
  94. erispulse-2.3.3.dev0.dist-info/RECORD +0 -35
  95. /ErisPulse/{utils → CLI}/console.py +0 -0
  96. {erispulse-2.3.3.dev0.dist-info → erispulse-2.3.4.dev2.dist-info}/WHEEL +0 -0
  97. {erispulse-2.3.3.dev0.dist-info → erispulse-2.3.4.dev2.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,108 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for manager.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 管理器基类
9
+
10
+ 提供适配器和模块管理器的统一接口定义
11
+
12
+ {!--< tips >!--}
13
+ 适配器管理器和模块管理器都应继承此基类以保持接口一致性
14
+ {!--< /tips >!--}
15
+ """
16
+
17
+ from abc import ABC, abstractmethod
18
+ from typing import Dict, List, Any, Type, Optional
19
+
20
+ class ManagerBase(ABC):
21
+ """
22
+ 管理器基类
23
+
24
+ 定义适配器和模块管理器的统一接口
25
+
26
+ {!--< tips >!--}
27
+ 统一方法:
28
+ - register(): 注册类
29
+ - unregister(): 取消注册
30
+ - get(): 获取实例
31
+ - exists(): 检查是否存在
32
+ - enable()/disable(): 启用/禁用
33
+ - is_enabled(): 检查是否启用
34
+ - list_*(): 列出相关项
35
+ {!--< /tips >!--}
36
+ """
37
+ def register(self: object, name: str, class_type: Type, info: Optional[Dict] = ...) -> bool:
38
+ """
39
+ 注册类
40
+
41
+ :param name: 名称
42
+ :param class_type: 类类型
43
+ :param info: 额外信息
44
+ :return: 是否注册成功
45
+ """
46
+ ...
47
+ def unregister(self: object, name: str) -> bool:
48
+ """
49
+ 取消注册
50
+
51
+ :param name: 名称
52
+ :return: 是否取消成功
53
+ """
54
+ ...
55
+ def get(self: object, name: str) -> Any:
56
+ """
57
+ 获取实例
58
+
59
+ :param name: 名称
60
+ :return: 实例或 None
61
+ """
62
+ ...
63
+ def exists(self: object, name: str) -> bool:
64
+ """
65
+ 检查是否存在(在配置中注册)
66
+
67
+ :param name: 名称
68
+ :return: 是否存在
69
+ """
70
+ ...
71
+ def is_enabled(self: object, name: str) -> bool:
72
+ """
73
+ 检查是否启用
74
+
75
+ :param name: 名称
76
+ :return: 是否启用
77
+ """
78
+ ...
79
+ def enable(self: object, name: str) -> bool:
80
+ """
81
+ 启用
82
+
83
+ :param name: 名称
84
+ :return: 是否成功
85
+ """
86
+ ...
87
+ def disable(self: object, name: str) -> bool:
88
+ """
89
+ 禁用
90
+
91
+ :param name: 名称
92
+ :return: 是否成功
93
+ """
94
+ ...
95
+ def list_registered(self: object) -> List[str]:
96
+ """
97
+ 列出所有已注册的项
98
+
99
+ :return: 名称列表
100
+ """
101
+ ...
102
+ def list_items(self: object) -> Dict[(str, bool)]:
103
+ """
104
+ 列出所有项及其状态
105
+
106
+ :return: {名称: 是否启用} 字典
107
+ """
108
+ ...
@@ -4,6 +4,10 @@ ErisPulse 模块基础模块
4
4
  提供模块基类定义和标准接口
5
5
  """
6
6
 
7
+ from typing import Union, Dict, Any
8
+ from ...loaders.strategy import ModuleLoadStrategy
9
+
10
+
7
11
  class BaseModule:
8
12
  """
9
13
  模块基类
@@ -11,15 +15,63 @@ class BaseModule:
11
15
  提供模块加载和卸载的标准接口
12
16
  """
13
17
 
18
+ @staticmethod
19
+ def get_load_strategy() -> Union[ModuleLoadStrategy, Dict[str, Any]]:
20
+ """
21
+ 获取模块加载策略
22
+
23
+ 支持返回 ModuleLoadStrategy 对象或字典
24
+ 所有属性统一处理,没有任何预定义字段
25
+
26
+ :return: 加载策略对象或字典
27
+
28
+ {!--< tips >!--}
29
+ 常用配置项:
30
+ - lazy_load: bool, 是否懒加载(默认 True)
31
+ - priority: int, 加载优先级(默认 0,数值越大优先级越高)
32
+
33
+ 使用方式:
34
+ >>> class MyModule(BaseModule):
35
+ ... @staticmethod
36
+ ... def get_load_strategy() -> ModuleLoadStrategy:
37
+ ... return ModuleLoadStrategy(
38
+ ... lazy_load=False,
39
+ ... priority=100
40
+ ... )
41
+
42
+ 或使用字典:
43
+ >>> class MyModule(BaseModule):
44
+ ... @staticmethod
45
+ ... def get_load_strategy() -> dict:
46
+ ... return {
47
+ ... "lazy_load": False,
48
+ ... "priority": 100
49
+ ... }
50
+ {!--< /tips >!--}
51
+ """
52
+ return ModuleLoadStrategy(
53
+ lazy_load=True, # 默认懒加载
54
+ priority=0 # 默认优先级
55
+ )
56
+
14
57
  @staticmethod
15
58
  def should_eager_load() -> bool:
16
59
  """
17
60
  模块是否应该在启动时加载
18
61
  默认为False(即懒加载)
62
+
63
+ 兼容方法,实际调用 get_load_strategy()
19
64
 
20
65
  :return: 是否应该在启动时加载
66
+
67
+ {!--< tips >!--}
68
+ 旧版方法,建议使用 get_load_strategy() 替代
69
+ {!--< /tips >!--}
21
70
  """
22
- return False
71
+ strategy = BaseModule.get_load_strategy()
72
+ if isinstance(strategy, dict):
73
+ return not strategy.get('lazy_load', True)
74
+ return not (strategy.lazy_load if 'lazy_load' in strategy else True)
23
75
 
24
76
  async def on_load(self, event: dict) -> bool:
25
77
  """
@@ -0,0 +1,95 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for module.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 模块基础模块
9
+
10
+ 提供模块基类定义和标准接口
11
+ """
12
+
13
+ from typing import Union, Dict, Any
14
+ from ...loaders.strategy import ModuleLoadStrategy
15
+
16
+ class BaseModule:
17
+ """
18
+ 模块基类
19
+
20
+ 提供模块加载和卸载的标准接口
21
+ """
22
+ def get_load_strategy() -> Union[(ModuleLoadStrategy, Dict[(str, Any)])]:
23
+ """
24
+ 获取模块加载策略
25
+
26
+ 支持返回 ModuleLoadStrategy 对象或字典
27
+ 所有属性统一处理,没有任何预定义字段
28
+
29
+ :return: 加载策略对象或字典
30
+
31
+ {!--< tips >!--}
32
+ 常用配置项:
33
+ - lazy_load: bool, 是否懒加载(默认 True)
34
+ - priority: int, 加载优先级(默认 0,数值越大优先级越高)
35
+
36
+ 使用方式:
37
+ >>> class MyModule(BaseModule):
38
+ ... @staticmethod
39
+ ... def get_load_strategy() -> ModuleLoadStrategy:
40
+ ... return ModuleLoadStrategy(
41
+ ... lazy_load=False,
42
+ ... priority=100
43
+ ... )
44
+
45
+ 或使用字典:
46
+ >>> class MyModule(BaseModule):
47
+ ... @staticmethod
48
+ ... def get_load_strategy() -> dict:
49
+ ... return {
50
+ ... "lazy_load": False,
51
+ ... "priority": 100
52
+ ... }
53
+ {!--< /tips >!--}
54
+ """
55
+ ...
56
+ def should_eager_load() -> bool:
57
+ """
58
+ 模块是否应该在启动时加载
59
+ 默认为False(即懒加载)
60
+
61
+ 兼容方法,实际调用 get_load_strategy()
62
+
63
+ :return: 是否应该在启动时加载
64
+
65
+ {!--< tips >!--}
66
+ 旧版方法,建议使用 get_load_strategy() 替代
67
+ {!--< /tips >!--}
68
+ """
69
+ ...
70
+ async def on_load(self: object, event: dict) -> bool:
71
+ """
72
+ 当模块被加载时调用
73
+
74
+ :param event: 事件内容
75
+ :return: 处理结果
76
+
77
+ {!--< tips >!--}
78
+ 其中,event事件内容为:
79
+ `{ "module_name": "模块名" }`
80
+ {!--< /tips >!--}
81
+ """
82
+ ...
83
+ async def on_unload(self: object, event: dict) -> bool:
84
+ """
85
+ 当模块被卸载时调用
86
+
87
+ :param event: 事件内容
88
+ :return: 处理结果
89
+
90
+ {!--< tips >!--}
91
+ 其中,event事件内容为:
92
+ `{ "module_name": "模块名" }`
93
+ {!--< /tips >!--}
94
+ """
95
+ ...
@@ -0,0 +1,26 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for __init__.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 事件处理模块
9
+
10
+ 提供统一的事件处理接口,支持命令、消息、通知、请求和元事件处理
11
+
12
+ {!--< tips >!--}
13
+ 1. 所有事件处理都基于OneBot12标准事件格式
14
+ 2. 通过装饰器方式注册事件处理器
15
+ 3. 支持优先级和条件过滤
16
+ {!--< /tips >!--}
17
+ """
18
+
19
+ from .command import command
20
+ from .message import message
21
+ from .notice import notice
22
+ from .request import request
23
+ from .meta import meta
24
+ from .wrapper import Event
25
+ from . import exceptions
26
+ from .. import config
@@ -0,0 +1,62 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for base.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 事件处理基础模块
9
+
10
+ 提供事件处理的核心功能,包括事件注册和处理
11
+
12
+ {!--< tips >!--}
13
+ 1. 所有事件处理都基于OneBot12标准事件格式
14
+ 2. 通过适配器系统进行事件分发和接收
15
+ {!--< /tips >!--}
16
+ """
17
+
18
+ from .. import adapter, logger
19
+ from typing import Callable, Any, Dict, List
20
+ import asyncio
21
+ from .wrapper import Event
22
+
23
+ class BaseEventHandler:
24
+ """
25
+ 基础事件处理器
26
+
27
+ 提供事件处理的基本功能,包括处理器注册和注销
28
+ """
29
+ def __init__(self: None, event_type: str, module_name: str = ...) -> ...:
30
+ """
31
+ 初始化事件处理器
32
+
33
+ :param event_type: 事件类型
34
+ :param module_name: 模块名称
35
+ """
36
+ ...
37
+ def register(self: object, handler: Callable, priority: int = ..., condition: Callable = ...) -> ...:
38
+ """
39
+ 注册事件处理器
40
+
41
+ :param handler: 事件处理器函数
42
+ :param priority: 处理器优先级,数值越小优先级越高
43
+ :param condition: 处理器条件函数,返回True时才会执行处理器
44
+ """
45
+ ...
46
+ def unregister(self: object, handler: Callable) -> bool:
47
+ """
48
+ 注销事件处理器
49
+
50
+ :param handler: 要注销的事件处理器
51
+ :return: 是否成功注销
52
+ """
53
+ ...
54
+ def __call__(self: object, priority: int = ..., condition: Callable = ...) -> ...:
55
+ """
56
+ 装饰器方式注册事件处理器
57
+
58
+ :param priority: 处理器优先级
59
+ :param condition: 处理器条件函数
60
+ :return: 装饰器函数
61
+ """
62
+ ...
@@ -94,7 +94,7 @@ class CommandHandler:
94
94
  "main_name": main_name
95
95
  }
96
96
 
97
- # 注册别名映射
97
+ # 注册别名映射(name列表中的额外名称)
98
98
  if cmd_name != main_name:
99
99
  self.aliases[cmd_name] = main_name
100
100
 
@@ -102,6 +102,11 @@ class CommandHandler:
102
102
  if permission and cmd_name not in self.permissions:
103
103
  self.permissions[cmd_name] = permission
104
104
 
105
+ # 注册aliases参数中的别名
106
+ for alias in alias_list:
107
+ if alias not in self.aliases:
108
+ self.aliases[alias] = main_name
109
+
105
110
  # 添加到命令组
106
111
  if group:
107
112
  if group not in self.groups:
@@ -0,0 +1,113 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for command.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 命令处理模块
9
+
10
+ 提供基于装饰器的命令注册和处理功能
11
+
12
+ {!--< tips >!--}
13
+ 1. 支持命令别名和命令组
14
+ 2. 支持命令权限控制
15
+ 3. 支持命令帮助系统
16
+ 4. 支持等待用户回复交互
17
+ {!--< /tips >!--}
18
+ """
19
+
20
+ from .base import BaseEventHandler
21
+ from .. import adapter, config, logger
22
+ from typing import Callable, Union, List, Dict, Any, Optional, Awaitable
23
+ import asyncio
24
+
25
+ class CommandHandler:
26
+ """
27
+ 命令处理器
28
+
29
+ 提供命令注册、处理和管理功能
30
+ """
31
+ def __init__(self: None) -> ...:
32
+ ...
33
+ def __call__(self: object, name: Union[(str, List[str])] = ..., aliases: List[str] = ..., group: str = ..., priority: int = ..., permission: Callable = ..., help: str = ..., usage: str = ..., hidden: bool = ...) -> ...:
34
+ """
35
+ 命令装饰器
36
+
37
+ :param name: 命令名称,可以是字符串或字符串列表
38
+ :param aliases: 命令别名列表
39
+ :param group: 命令组名称
40
+ :param priority: 处理器优先级
41
+ :param permission: 权限检查函数,返回True时允许执行命令
42
+ :param help: 命令帮助信息
43
+ :param usage: 命令使用方法
44
+ :param hidden: 是否在帮助中隐藏命令
45
+ :return: 装饰器函数
46
+ """
47
+ ...
48
+ def unregister(self: object, handler: Callable) -> bool:
49
+ """
50
+ 注销命令处理器
51
+
52
+ :param handler: 要注销的命令处理器
53
+ :return: 是否成功注销
54
+ """
55
+ ...
56
+ async def wait_reply(self: object, event: Dict[(str, Any)], prompt: str = ..., timeout: float = ..., callback: Callable[([Dict[(str, Any)]], Awaitable[Any])] = ..., validator: Callable[([Dict[(str, Any)]], bool)] = ...) -> Optional[Dict[(str, Any)]]:
57
+ """
58
+ 等待用户回复
59
+
60
+ :param event: 原始事件数据
61
+ :param prompt: 提示消息,如果提供会发送给用户
62
+ :param timeout: 等待超时时间(秒)
63
+ :param callback: 回调函数,当收到回复时执行
64
+ :param validator: 验证函数,用于验证回复是否有效
65
+ :return: 用户回复的事件数据,如果超时则返回None
66
+ """
67
+ ...
68
+ async def _check_pending_reply(self: object, event: Dict[(str, Any)]) -> ...:
69
+ """
70
+ 检查是否是等待回复的消息
71
+
72
+ :param event: 消息事件数据
73
+ """
74
+ ...
75
+ def get_command(self: object, name: str) -> Optional[Dict]:
76
+ """
77
+ 获取命令信息
78
+
79
+ :param name: 命令名称
80
+ :return: 命令信息字典,如果不存在则返回None
81
+ """
82
+ ...
83
+ def get_commands(self: object) -> Dict[(str, Dict)]:
84
+ """
85
+ 获取所有命令
86
+
87
+ :return: 命令信息字典
88
+ """
89
+ ...
90
+ def get_group_commands(self: object, group: str) -> List[str]:
91
+ """
92
+ 获取命令组中的命令
93
+
94
+ :param group: 命令组名称
95
+ :return: 命令名称列表
96
+ """
97
+ ...
98
+ def get_visible_commands(self: object) -> Dict[(str, Dict)]:
99
+ """
100
+ 获取所有可见命令(非隐藏命令)
101
+
102
+ :return: 可见命令信息字典
103
+ """
104
+ ...
105
+ def help(self: object, command_name: str = ..., show_hidden: bool = ...) -> str:
106
+ """
107
+ 生成帮助信息
108
+
109
+ :param command_name: 命令名称,如果为None则生成所有命令的帮助
110
+ :param show_hidden: 是否显示隐藏命令
111
+ :return: 帮助信息字符串
112
+ """
113
+ ...
@@ -0,0 +1,43 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for exceptions.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 事件系统异常处理模块
9
+
10
+ 提供事件系统中可能发生的各种异常类型定义
11
+ """
12
+
13
+ class EventException(Exception):
14
+ """
15
+ 事件系统基础异常
16
+
17
+ 所有事件系统相关异常的基类
18
+ """
19
+ ...
20
+
21
+ class CommandException(EventException):
22
+ """
23
+ 命令处理异常
24
+
25
+ 当命令处理过程中发生错误时抛出
26
+ """
27
+ ...
28
+
29
+ class EventHandlerException(EventException):
30
+ """
31
+ 事件处理器异常
32
+
33
+ 当事件处理器执行过程中发生错误时抛出
34
+ """
35
+ ...
36
+
37
+ class EventNotFoundException(EventException):
38
+ """
39
+ 事件未找到异常
40
+
41
+ 当尝试获取不存在的事件处理器时抛出
42
+ """
43
+ ...
@@ -0,0 +1,93 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for message.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse 消息处理模块
9
+
10
+ 提供基于装饰器的消息事件处理功能
11
+
12
+ {!--< tips >!--}
13
+ 1. 支持私聊、群聊消息分类处理
14
+ 2. 支持@消息特殊处理
15
+ 3. 支持自定义条件过滤
16
+ {!--< /tips >!--}
17
+ """
18
+
19
+ from .base import BaseEventHandler
20
+ from typing import Callable, Dict, Any
21
+
22
+ class MessageHandler:
23
+ """
24
+ 消息事件处理器
25
+
26
+ 提供不同类型消息事件的处理功能
27
+ """
28
+ def __init__(self: None) -> ...:
29
+ ...
30
+ def on_message(self: object, priority: int = ...) -> ...:
31
+ """
32
+ 消息事件装饰器
33
+
34
+ :param priority: 处理器优先级
35
+ :return: 装饰器函数
36
+ """
37
+ ...
38
+ def remove_message_handler(self: object, handler: Callable) -> bool:
39
+ """
40
+ 取消注册消息事件处理器
41
+
42
+ :param handler: 要取消注册的处理器
43
+ :return: 是否成功取消注册
44
+ """
45
+ ...
46
+ def on_private_message(self: object, priority: int = ...) -> ...:
47
+ """
48
+ 私聊消息事件装饰器
49
+
50
+ :param priority: 处理器优先级
51
+ :return: 装饰器函数
52
+ """
53
+ ...
54
+ def remove_private_message_handler(self: object, handler: Callable) -> bool:
55
+ """
56
+ 取消注册私聊消息事件处理器
57
+
58
+ :param handler: 要取消注册的处理器
59
+ :return: 是否成功取消注册
60
+ """
61
+ ...
62
+ def on_group_message(self: object, priority: int = ...) -> ...:
63
+ """
64
+ 群聊消息事件装饰器
65
+
66
+ :param priority: 处理器优先级
67
+ :return: 装饰器函数
68
+ """
69
+ ...
70
+ def remove_group_message_handler(self: object, handler: Callable) -> bool:
71
+ """
72
+ 取消注册群聊消息事件处理器
73
+
74
+ :param handler: 要取消注册的处理器
75
+ :return: 是否成功取消注册
76
+ """
77
+ ...
78
+ def on_at_message(self: object, priority: int = ...) -> ...:
79
+ """
80
+ @消息事件装饰器
81
+
82
+ :param priority: 处理器优先级
83
+ :return: 装饰器函数
84
+ """
85
+ ...
86
+ def remove_at_message_handler(self: object, handler: Callable) -> bool:
87
+ """
88
+ 取消注册@消息事件处理器
89
+
90
+ :param handler: 要取消注册的处理器
91
+ :return: 是否成功取消注册
92
+ """
93
+ ...