ErisPulse 2.3.2__py3-none-any.whl → 2.3.3__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 (78) hide show
  1. ErisPulse/Core/Bases/__init__.pyi +14 -0
  2. ErisPulse/Core/Bases/adapter.py +13 -1
  3. ErisPulse/Core/Bases/adapter.pyi +140 -0
  4. ErisPulse/Core/Bases/module.pyi +52 -0
  5. ErisPulse/Core/Event/__init__.py +3 -1
  6. ErisPulse/Core/Event/__init__.pyi +26 -0
  7. ErisPulse/Core/Event/base.py +5 -0
  8. ErisPulse/Core/Event/base.pyi +62 -0
  9. ErisPulse/Core/Event/command.py +66 -17
  10. ErisPulse/Core/Event/command.pyi +113 -0
  11. ErisPulse/Core/Event/exceptions.pyi +43 -0
  12. ErisPulse/Core/Event/message.pyi +93 -0
  13. ErisPulse/Core/Event/meta.pyi +92 -0
  14. ErisPulse/Core/Event/notice.pyi +108 -0
  15. ErisPulse/Core/Event/request.pyi +76 -0
  16. ErisPulse/Core/Event/wrapper.py +592 -0
  17. ErisPulse/Core/Event/wrapper.pyi +404 -0
  18. ErisPulse/Core/__init__.py +16 -8
  19. ErisPulse/Core/__init__.pyi +17 -0
  20. ErisPulse/Core/_self_config.pyi +72 -0
  21. ErisPulse/Core/adapter.pyi +229 -0
  22. ErisPulse/Core/config.pyi +70 -0
  23. ErisPulse/Core/exceptions.pyi +60 -0
  24. ErisPulse/Core/lifecycle.py +6 -1
  25. ErisPulse/Core/lifecycle.pyi +92 -0
  26. ErisPulse/Core/logger.pyi +168 -0
  27. ErisPulse/Core/module.pyi +178 -0
  28. ErisPulse/Core/router.pyi +120 -0
  29. ErisPulse/Core/storage.pyi +273 -0
  30. ErisPulse/Core/ux.pyi +94 -0
  31. ErisPulse/__init__.py +10 -5
  32. ErisPulse/__init__.pyi +310 -0
  33. ErisPulse/__main__.py +0 -5
  34. ErisPulse/__main__.pyi +24 -0
  35. ErisPulse/sdk_protocol.py +150 -0
  36. ErisPulse/sdk_protocol.pyi +100 -0
  37. ErisPulse/utils/__init__.pyi +16 -0
  38. ErisPulse/utils/cli.pyi +145 -0
  39. ErisPulse/utils/console.pyi +20 -0
  40. ErisPulse/utils/package_manager.pyi +224 -0
  41. ErisPulse/utils/reload_handler.pyi +64 -0
  42. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/__init__.pyi +14 -0
  43. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/adapter.pyi +140 -0
  44. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/module.pyi +52 -0
  45. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/__init__.pyi +26 -0
  46. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/base.pyi +62 -0
  47. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/command.pyi +113 -0
  48. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/exceptions.pyi +43 -0
  49. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/message.pyi +93 -0
  50. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/meta.pyi +92 -0
  51. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/notice.pyi +108 -0
  52. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/request.pyi +76 -0
  53. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/wrapper.pyi +404 -0
  54. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/__init__.pyi +17 -0
  55. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/_self_config.pyi +72 -0
  56. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/adapter.pyi +229 -0
  57. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/config.pyi +70 -0
  58. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/exceptions.pyi +60 -0
  59. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/lifecycle.pyi +92 -0
  60. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/logger.pyi +168 -0
  61. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/module.pyi +178 -0
  62. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/router.pyi +120 -0
  63. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/storage.pyi +273 -0
  64. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/ux.pyi +94 -0
  65. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/__init__.pyi +310 -0
  66. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/__main__.pyi +24 -0
  67. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/sdk_protocol.pyi +100 -0
  68. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/__init__.pyi +16 -0
  69. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/cli.pyi +145 -0
  70. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/console.pyi +20 -0
  71. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/package_manager.pyi +224 -0
  72. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/reload_handler.pyi +64 -0
  73. {erispulse-2.3.2.dist-info → erispulse-2.3.3.dist-info}/METADATA +1 -3
  74. erispulse-2.3.3.dist-info/RECORD +98 -0
  75. erispulse-2.3.2.dist-info/RECORD +0 -34
  76. {erispulse-2.3.2.dist-info → erispulse-2.3.3.dist-info}/WHEEL +0 -0
  77. {erispulse-2.3.2.dist-info → erispulse-2.3.3.dist-info}/entry_points.txt +0 -0
  78. {erispulse-2.3.2.dist-info → erispulse-2.3.3.dist-info}/licenses/LICENSE +0 -0
ErisPulse/__init__.pyi ADDED
@@ -0,0 +1,310 @@
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 SDK 主模块
9
+
10
+ 提供SDK核心功能模块加载和初始化功能
11
+
12
+ {!--< tips >!--}
13
+ 1. 使用前请确保已正确安装所有依赖
14
+ 2. 调用await sdk.init()进行初始化
15
+ 3. 模块加载采用懒加载机制
16
+ {!--< /tips >!--}
17
+ """
18
+
19
+ import os
20
+ import sys
21
+ import types
22
+ import importlib
23
+ import asyncio
24
+ import inspect
25
+ import importlib.metadata
26
+ from typing import Dict, List, Tuple, Type, Any, TYPE_CHECKING
27
+ from pathlib import Path
28
+ from .Core import Event
29
+ from .Core import lifecycle, logger, exceptions
30
+ from .Core import storage, env, config
31
+ from .Core import adapter, AdapterFather, BaseAdapter, SendDSL
32
+ from .Core import module
33
+ from .Core import router, adapter_server
34
+ from .Core import ux, UXManager
35
+
36
+ sdk: SDKProtocol
37
+
38
+ class LazyModule:
39
+ """
40
+ 懒加载模块包装器
41
+
42
+ 当模块第一次被访问时才进行实例化
43
+
44
+ {!--< tips >!--}
45
+ 1. 模块的实际实例化会在第一次属性访问时进行
46
+ 2. 依赖模块会在被使用时自动初始化
47
+ 3. 对于继承自 BaseModule 的模块,会自动调用生命周期方法
48
+ {!--< /tips >!--}
49
+ """
50
+ def __init__(self: None, module_name: str, module_class: Type, sdk_ref: Any, module_info: Dict[(str, Any)]) -> None:
51
+ """
52
+ 初始化懒加载包装器
53
+
54
+ :param module_name: str 模块名称
55
+ :param module_class: Type 模块类
56
+ :param sdk_ref: Any SDK引用
57
+ :param module_info: Dict[str, Any] 模块信息字典
58
+ """
59
+ ...
60
+ async def _initialize(self: object) -> ...:
61
+ """
62
+ 实际初始化模块
63
+
64
+ :raises LazyLoadError: 当模块初始化失败时抛出
65
+ """
66
+ ...
67
+ def _initialize_sync(self: object) -> ...:
68
+ """
69
+ 同步初始化模块,用于在异步上下文中进行同步调用
70
+
71
+ :raises LazyLoadError: 当模块初始化失败时抛出
72
+ """
73
+ ...
74
+ async def _complete_async_init(self: object) -> ...:
75
+ """
76
+ 完成异步初始化部分,用于同步初始化后的异步处理
77
+
78
+ 这个方法用于处理 module.load 和事件提交等异步操作
79
+ """
80
+ ...
81
+ def _ensure_initialized(self: object) -> None:
82
+ """
83
+ 确保模块已初始化
84
+
85
+ :raises LazyLoadError: 当模块未初始化时抛出
86
+ """
87
+ ...
88
+ def __getattr__(self: object, name: str) -> Any:
89
+ """
90
+ 属性访问时触发初始化
91
+
92
+ :param name: str 属性名
93
+ :return: Any 属性值
94
+ """
95
+ ...
96
+ def __setattr__(self: object, name: str, value: Any) -> None:
97
+ """
98
+ 属性设置
99
+
100
+ :param name: str 属性名
101
+ :param value: Any 属性值
102
+ """
103
+ ...
104
+ def __delattr__(self: object, name: str) -> None:
105
+ """
106
+ 属性删除
107
+
108
+ :param name: str 属性名
109
+ """
110
+ ...
111
+ def __getattribute__(self: object, name: str) -> Any:
112
+ """
113
+ 属性访问,初始化后直接委托给实际实例
114
+
115
+ :param name: str 属性名
116
+ :return: Any 属性值
117
+ """
118
+ ...
119
+ def __dir__(self: object) -> List[str]:
120
+ """
121
+ 返回模块属性列表
122
+
123
+ :return: List[str] 属性列表
124
+ """
125
+ ...
126
+ def __repr__(self: object) -> str:
127
+ """
128
+ 返回模块表示字符串
129
+
130
+ :return: str 表示字符串
131
+ """
132
+ ...
133
+ def __call__(self: object, *args: ..., **kwargs: ...) -> ...:
134
+ """
135
+ 代理函数调用
136
+ """
137
+ ...
138
+
139
+ class AdapterLoader:
140
+ """
141
+ 适配器加载器
142
+
143
+ 专门用于从PyPI包加载和初始化适配器
144
+
145
+ {!--< tips >!--}
146
+ 1. 适配器必须通过entry-points机制注册到erispulse.adapter组
147
+ 2. 适配器类必须继承BaseAdapter
148
+ 3. 适配器不适用懒加载
149
+ {!--< /tips >!--}
150
+ """
151
+ async def load() -> Tuple[(Dict[(str, object)], List[str], List[str])]:
152
+ """
153
+ 从PyPI包entry-points加载适配器
154
+
155
+ :return:
156
+ Dict[str, object]: 适配器对象字典 {适配器名: 模块对象}
157
+ List[str]: 启用的适配器名称列表
158
+ List[str]: 停用的适配器名称列表
159
+
160
+ :raises ImportError: 当无法加载适配器时抛出
161
+ """
162
+ ...
163
+
164
+ class ModuleLoader:
165
+ """
166
+ 模块加载器
167
+
168
+ 专门用于从PyPI包加载和初始化普通模块
169
+
170
+ {!--< tips >!--}
171
+ 1. 模块必须通过entry-points机制注册到erispulse.module组
172
+ 2. 模块类名应与entry-point名称一致
173
+ {!--< /tips >!--}
174
+ """
175
+ async def load() -> Tuple[(Dict[(str, object)], List[str], List[str])]:
176
+ """
177
+ 从PyPI包entry-points加载模块
178
+
179
+ :return:
180
+ Dict[str, object]: 模块对象字典 {模块名: 模块对象}
181
+ List[str]: 启用的模块名称列表
182
+ List[str]: 停用的模块名称列表
183
+
184
+ :raises ImportError: 当无法加载模块时抛出
185
+ """
186
+ ...
187
+ def _should_lazy_load(module_class: Type) -> bool:
188
+ """
189
+ 检查模块是否应该懒加载
190
+
191
+ :param module_class: Type 模块类
192
+ :return: bool 如果返回 False,则立即加载;否则懒加载
193
+ """
194
+ ...
195
+
196
+ class ModuleInitializer:
197
+ """
198
+ 模块初始化器(注意:适配器是一个特殊的模块)
199
+
200
+ 负责协调适配器和模块的初始化流程
201
+
202
+ {!--< tips >!--}
203
+ 1. 初始化顺序:适配器 → 模块
204
+ 2. 模块初始化采用懒加载机制
205
+ {!--< /tips >!--}
206
+ """
207
+ async def init() -> bool:
208
+ """
209
+ 初始化所有模块和适配器
210
+
211
+ 执行步骤:
212
+ 1. 从PyPI包加载适配器
213
+ 2. 从PyPI包加载模块
214
+ 3. 预记录所有模块信息
215
+ 4. 注册适配器
216
+ 5. 初始化各模块
217
+
218
+ :return: bool 初始化是否成功
219
+ :raises InitError: 当初始化失败时抛出
220
+ """
221
+ ...
222
+
223
+ async def init_progress() -> bool:
224
+ """
225
+ 初始化项目环境文件
226
+
227
+ 1. 检查并创建main.py入口文件
228
+ 2. 确保基础目录结构存在
229
+
230
+ :return: bool 是否创建了新的main.py文件
231
+
232
+ {!--< tips >!--}
233
+ 1. 如果main.py已存在则不会覆盖
234
+ 2. 此方法通常由SDK内部调用
235
+ {!--< /tips >!--}
236
+ """
237
+ ...
238
+
239
+ async def init() -> bool:
240
+ """
241
+ SDK初始化入口
242
+
243
+ :return: bool SDK初始化是否成功
244
+ """
245
+ ...
246
+
247
+ def init_sync() -> bool:
248
+ """
249
+ SDK初始化入口(同步版本)
250
+
251
+ 用于命令行直接调用,自动在事件循环中运行异步初始化
252
+
253
+ :return: bool SDK初始化是否成功
254
+ """
255
+ ...
256
+
257
+ def init_task() -> asyncio.Task:
258
+ """
259
+ SDK初始化入口,返回Task对象
260
+
261
+ :return: asyncio.Task 初始化任务
262
+ """
263
+ ...
264
+
265
+ async def uninit() -> bool:
266
+ """
267
+ SDK反初始化
268
+
269
+ 执行以下操作:
270
+ 1. 关闭所有适配器
271
+ 2. 卸载所有模块
272
+ 3. 清理所有事件处理器
273
+ 4. 清理僵尸线程
274
+
275
+ :return: bool 反初始化是否成功
276
+ """
277
+ ...
278
+
279
+ async def restart() -> bool:
280
+ """
281
+ SDK重新启动
282
+
283
+ 执行完整的反初始化后再初始化过程
284
+
285
+ :return: bool 重新加载是否成功
286
+ """
287
+ ...
288
+
289
+ async def run(keep_running: bool = ...) -> None:
290
+ """
291
+ 无头模式运行ErisPulse
292
+
293
+ 此方法提供了一种无需入口启动的方式,适用于与其它框架集成的场景
294
+ """
295
+ ...
296
+
297
+ async def load_module(module_name: str) -> bool:
298
+ """
299
+ 手动加载指定模块
300
+
301
+ :param module_name: str 要加载的模块名称
302
+ :return: bool 加载是否成功
303
+
304
+ {!--< tips >!--}
305
+ 1. 可用于手动触发懒加载模块的初始化
306
+ 2. 如果模块不存在或已加载会返回False
307
+ 3. 对于需要异步初始化的模块,这是唯一的加载方式
308
+ {!--< /tips >!--}
309
+ """
310
+ ...
ErisPulse/__main__.py CHANGED
@@ -2,11 +2,6 @@
2
2
  ErisPulse SDK 命令行工具
3
3
 
4
4
  提供ErisPulse生态系统的包管理、模块控制和开发工具功能。
5
-
6
- {!--< tips >!--}
7
- 1. 需要Python 3.8+环境
8
- 2. Windows平台需要colorama支持ANSI颜色
9
- {!--< /tips >!--}
10
5
  """
11
6
  from .utils import CLI
12
7
 
ErisPulse/__main__.pyi ADDED
@@ -0,0 +1,24 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for __main__.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse SDK 命令行工具
9
+
10
+ 提供ErisPulse生态系统的包管理、模块控制和开发工具功能。
11
+ """
12
+
13
+ from .utils import CLI
14
+
15
+ def main() -> ...:
16
+ """
17
+ CLI入口点
18
+
19
+ {!--< tips >!--}
20
+ 1. 创建CLI实例并运行
21
+ 2. 处理全局异常
22
+ {!--< /tips >!--}
23
+ """
24
+ ...
@@ -0,0 +1,150 @@
1
+ """
2
+ ErisPulse SDK Protocol 定义
3
+
4
+ 提供 SDK 的类型接口定义,用于 IDE 类型提示和静态类型检查
5
+ """
6
+
7
+ from typing import Protocol, runtime_checkable, Any, TypeVar
8
+ from typing_extensions import ParamSpec
9
+ import asyncio
10
+
11
+ # 导入核心模块类型
12
+ from .Core.Event import Event as EventType
13
+ from .Core.lifecycle import LifecycleManager
14
+ from .Core.logger import Logger
15
+ from .Core.storage import StorageManager
16
+ from .Core.config import ConfigManager
17
+ from .Core.adapter import AdapterManager
18
+ from .Core.module import ModuleManager
19
+ from .Core.router import RouterManager
20
+ from .Core.ux import UXManager
21
+ from .Core.Bases.adapter import BaseAdapter, SendDSL
22
+
23
+ P = ParamSpec('P')
24
+ T = TypeVar('T')
25
+
26
+
27
+ @runtime_checkable
28
+ class SDKProtocol(Protocol):
29
+ """
30
+ SDK 对象的 Protocol 接口定义
31
+
32
+ 定义了 SDK 对象应该具有的所有属性和方法,用于类型检查
33
+ """
34
+
35
+ # ==================== 核心模块 ====================
36
+
37
+ Event: type[EventType]
38
+ """事件系统"""
39
+
40
+ lifecycle: LifecycleManager
41
+ """生命周期管理器"""
42
+
43
+ logger: Logger
44
+ """日志管理器"""
45
+
46
+ exceptions: Any
47
+ """异常处理模块"""
48
+
49
+ storage: StorageManager
50
+ """存储管理器"""
51
+
52
+ env: StorageManager
53
+ """存储管理器别名"""
54
+
55
+ config: ConfigManager
56
+ """配置管理器"""
57
+
58
+ adapter: AdapterManager
59
+ """适配器管理器"""
60
+
61
+ AdapterFather: type[BaseAdapter]
62
+ """适配器基类别名"""
63
+
64
+ BaseAdapter: type[BaseAdapter]
65
+ """适配器基类"""
66
+
67
+ SendDSL: type[SendDSL]
68
+ """DSL发送接口基类"""
69
+
70
+ module: ModuleManager
71
+ """模块管理器"""
72
+
73
+ router: RouterManager
74
+ """路由管理器"""
75
+
76
+ adapter_server: RouterManager
77
+ """路由管理器别名"""
78
+
79
+ ux: UXManager
80
+ """UX管理器实例"""
81
+
82
+ UXManager: type[UXManager]
83
+ """UX管理器类"""
84
+
85
+ # ==================== 初始化方法 ====================
86
+
87
+ async def init(self) -> bool:
88
+ """
89
+ SDK初始化入口
90
+
91
+ :return: bool SDK初始化是否成功
92
+ """
93
+ ...
94
+
95
+ def init_task(self) -> asyncio.Task:
96
+ """
97
+ SDK初始化入口,返回Task对象
98
+
99
+ :return: asyncio.Task 初始化任务
100
+ """
101
+ ...
102
+
103
+ async def load_module(self, module_name: str) -> bool:
104
+ """
105
+ 手动加载指定模块
106
+
107
+ :param module_name: str 要加载的模块名称
108
+ :return: bool 加载是否成功
109
+ """
110
+ ...
111
+
112
+ async def run(self, keep_running: bool = True) -> None:
113
+ """
114
+ 无头模式运行ErisPulse
115
+
116
+ :param keep_running: bool 是否保持运行
117
+ """
118
+ ...
119
+
120
+ async def restart(self) -> bool:
121
+ """
122
+ SDK重新启动
123
+
124
+ :return: bool 重新加载是否成功
125
+ """
126
+ ...
127
+
128
+ async def uninit(self) -> bool:
129
+ """
130
+ SDK反初始化
131
+
132
+ :return: bool 反初始化是否成功
133
+ """
134
+ ...
135
+
136
+
137
+ def check_sdk_compatible(obj: Any) -> bool:
138
+ """
139
+ 检查对象是否符合 SDK Protocol
140
+
141
+ :param obj: 要检查的对象
142
+ :return: bool 是否符合协议
143
+ """
144
+ return isinstance(obj, SDKProtocol)
145
+
146
+
147
+ __all__ = [
148
+ "SDKProtocol",
149
+ "check_sdk_compatible"
150
+ ]
@@ -0,0 +1,100 @@
1
+ # type: ignore
2
+ #
3
+ # Auto-generated type stub for sdk_protocol.py
4
+ # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
+ #
6
+
7
+ """
8
+ ErisPulse SDK Protocol 定义
9
+
10
+ 提供 SDK 的类型接口定义,用于 IDE 类型提示和静态类型检查
11
+ """
12
+
13
+ from typing import Protocol, runtime_checkable, Any, TypeVar
14
+ from typing_extensions import ParamSpec
15
+ import asyncio
16
+ from .Core.Event import Event as EventType
17
+ from .Core.lifecycle import LifecycleManager
18
+ from .Core.logger import Logger
19
+ from .Core.storage import StorageManager
20
+ from .Core.config import ConfigManager
21
+ from .Core.adapter import AdapterManager
22
+ from .Core.module import ModuleManager
23
+ from .Core.router import RouterManager
24
+ from .Core.ux import UXManager
25
+ from .Core.Bases.adapter import BaseAdapter, SendDSL
26
+
27
+ class SDKProtocol(Protocol):
28
+ """
29
+ SDK 对象的 Protocol 接口定义
30
+
31
+ 定义了 SDK 对象应该具有的所有属性和方法,用于类型检查
32
+ """
33
+ Event: type[EventType]
34
+ lifecycle: LifecycleManager
35
+ logger: Logger
36
+ exceptions: Any
37
+ storage: StorageManager
38
+ env: StorageManager
39
+ config: ConfigManager
40
+ adapter: AdapterManager
41
+ AdapterFather: type[BaseAdapter]
42
+ BaseAdapter: type[BaseAdapter]
43
+ SendDSL: type[SendDSL]
44
+ module: ModuleManager
45
+ router: RouterManager
46
+ adapter_server: RouterManager
47
+ ux: UXManager
48
+ UXManager: type[UXManager]
49
+ async def init(self: object) -> bool:
50
+ """
51
+ SDK初始化入口
52
+
53
+ :return: bool SDK初始化是否成功
54
+ """
55
+ ...
56
+ def init_task(self: object) -> asyncio.Task:
57
+ """
58
+ SDK初始化入口,返回Task对象
59
+
60
+ :return: asyncio.Task 初始化任务
61
+ """
62
+ ...
63
+ async def load_module(self: object, module_name: str) -> bool:
64
+ """
65
+ 手动加载指定模块
66
+
67
+ :param module_name: str 要加载的模块名称
68
+ :return: bool 加载是否成功
69
+ """
70
+ ...
71
+ async def run(self: object, keep_running: bool = ...) -> None:
72
+ """
73
+ 无头模式运行ErisPulse
74
+
75
+ :param keep_running: bool 是否保持运行
76
+ """
77
+ ...
78
+ async def restart(self: object) -> bool:
79
+ """
80
+ SDK重新启动
81
+
82
+ :return: bool 重新加载是否成功
83
+ """
84
+ ...
85
+ async def uninit(self: object) -> bool:
86
+ """
87
+ SDK反初始化
88
+
89
+ :return: bool 反初始化是否成功
90
+ """
91
+ ...
92
+
93
+ def check_sdk_compatible(obj: Any) -> bool:
94
+ """
95
+ 检查对象是否符合 SDK Protocol
96
+
97
+ :param obj: 要检查的对象
98
+ :return: bool 是否符合协议
99
+ """
100
+ ...
@@ -0,0 +1,16 @@
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 SDK 工具模块
9
+
10
+ 包含各种辅助工具和实用程序。
11
+ """
12
+
13
+ from .package_manager import PackageManager
14
+ from .reload_handler import ReloadHandler
15
+ from .cli import CLI
16
+ from .console import console