agent-room 0.2.0

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 (94) hide show
  1. package/README.md +446 -0
  2. package/dist/core/connection-manager.d.ts +66 -0
  3. package/dist/core/connection-manager.d.ts.map +1 -0
  4. package/dist/core/connection-manager.js +205 -0
  5. package/dist/core/connection-manager.js.map +1 -0
  6. package/dist/core/logger.d.ts +99 -0
  7. package/dist/core/logger.d.ts.map +1 -0
  8. package/dist/core/logger.js +204 -0
  9. package/dist/core/logger.js.map +1 -0
  10. package/dist/core/message-buffer.d.ts +42 -0
  11. package/dist/core/message-buffer.d.ts.map +1 -0
  12. package/dist/core/message-buffer.js +99 -0
  13. package/dist/core/message-buffer.js.map +1 -0
  14. package/dist/core/notification-engine.d.ts +38 -0
  15. package/dist/core/notification-engine.d.ts.map +1 -0
  16. package/dist/core/notification-engine.js +78 -0
  17. package/dist/core/notification-engine.js.map +1 -0
  18. package/dist/index.d.ts +3 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +96 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/protocols/adapter-interface.d.ts +6 -0
  23. package/dist/protocols/adapter-interface.d.ts.map +1 -0
  24. package/dist/protocols/adapter-interface.js +6 -0
  25. package/dist/protocols/adapter-interface.js.map +1 -0
  26. package/dist/protocols/sse-adapter.d.ts +26 -0
  27. package/dist/protocols/sse-adapter.d.ts.map +1 -0
  28. package/dist/protocols/sse-adapter.js +138 -0
  29. package/dist/protocols/sse-adapter.js.map +1 -0
  30. package/dist/protocols/ws-adapter.d.ts +26 -0
  31. package/dist/protocols/ws-adapter.d.ts.map +1 -0
  32. package/dist/protocols/ws-adapter.js +154 -0
  33. package/dist/protocols/ws-adapter.js.map +1 -0
  34. package/dist/server.d.ts +10 -0
  35. package/dist/server.d.ts.map +1 -0
  36. package/dist/server.js +903 -0
  37. package/dist/server.js.map +1 -0
  38. package/dist/service/cli.d.ts +29 -0
  39. package/dist/service/cli.d.ts.map +1 -0
  40. package/dist/service/cli.js +479 -0
  41. package/dist/service/cli.js.map +1 -0
  42. package/dist/service/http-api.d.ts +29 -0
  43. package/dist/service/http-api.d.ts.map +1 -0
  44. package/dist/service/http-api.js +122 -0
  45. package/dist/service/http-api.js.map +1 -0
  46. package/dist/service/index.d.ts +22 -0
  47. package/dist/service/index.d.ts.map +1 -0
  48. package/dist/service/index.js +80 -0
  49. package/dist/service/index.js.map +1 -0
  50. package/dist/service/protocol.d.ts +46 -0
  51. package/dist/service/protocol.d.ts.map +1 -0
  52. package/dist/service/protocol.js +81 -0
  53. package/dist/service/protocol.js.map +1 -0
  54. package/dist/service/room-manager.d.ts +88 -0
  55. package/dist/service/room-manager.d.ts.map +1 -0
  56. package/dist/service/room-manager.js +237 -0
  57. package/dist/service/room-manager.js.map +1 -0
  58. package/dist/service/test.d.ts +18 -0
  59. package/dist/service/test.d.ts.map +1 -0
  60. package/dist/service/test.js +260 -0
  61. package/dist/service/test.js.map +1 -0
  62. package/dist/service/user-manager.d.ts +68 -0
  63. package/dist/service/user-manager.d.ts.map +1 -0
  64. package/dist/service/user-manager.js +111 -0
  65. package/dist/service/user-manager.js.map +1 -0
  66. package/dist/service/ws-server.d.ts +34 -0
  67. package/dist/service/ws-server.d.ts.map +1 -0
  68. package/dist/service/ws-server.js +281 -0
  69. package/dist/service/ws-server.js.map +1 -0
  70. package/dist/test/echo-server.d.ts +12 -0
  71. package/dist/test/echo-server.d.ts.map +1 -0
  72. package/dist/test/echo-server.js +66 -0
  73. package/dist/test/echo-server.js.map +1 -0
  74. package/dist/test/integration-test.d.ts +13 -0
  75. package/dist/test/integration-test.d.ts.map +1 -0
  76. package/dist/test/integration-test.js +154 -0
  77. package/dist/test/integration-test.js.map +1 -0
  78. package/dist/test/reactive-test.d.ts +16 -0
  79. package/dist/test/reactive-test.d.ts.map +1 -0
  80. package/dist/test/reactive-test.js +128 -0
  81. package/dist/test/reactive-test.js.map +1 -0
  82. package/dist/test/send-hello.d.ts +2 -0
  83. package/dist/test/send-hello.d.ts.map +1 -0
  84. package/dist/test/send-hello.js +59 -0
  85. package/dist/test/send-hello.js.map +1 -0
  86. package/dist/test/service-mcp-test.d.ts +9 -0
  87. package/dist/test/service-mcp-test.d.ts.map +1 -0
  88. package/dist/test/service-mcp-test.js +127 -0
  89. package/dist/test/service-mcp-test.js.map +1 -0
  90. package/dist/types.d.ts +55 -0
  91. package/dist/types.d.ts.map +1 -0
  92. package/dist/types.js +15 -0
  93. package/dist/types.js.map +1 -0
  94. package/package.json +76 -0
package/README.md ADDED
@@ -0,0 +1,446 @@
1
+ # AgentRoom
2
+
3
+ MCP 流桥接工具 + 可部署的实时消息服务。
4
+
5
+ 项目分为两个独立模块:
6
+
7
+ | 模块 | 用途 | 运行环境 |
8
+ |------|------|----------|
9
+ | **MCP** | 让 IDE(Cursor)和 CLI 工具连接任意 WebSocket/SSE 数据流,或直接接入 Service | 本地 |
10
+ | **Service** | 可部署到云服务器的实时消息服务,支持房间和私聊 | 云端 / 本地 |
11
+
12
+ ---
13
+
14
+ ## 安装
15
+
16
+ ```bash
17
+ # 全局安装(推荐)
18
+ npm install -g agent-room
19
+
20
+ # 或作为项目依赖
21
+ npm install agent-room
22
+ ```
23
+
24
+ ## 快速开始
25
+
26
+ ```bash
27
+ # 启动消息服务(本地测试)
28
+ agent-room-service
29
+ # 或
30
+ npx agent-room-service
31
+
32
+ # 启动 CLI 聊天客户端
33
+ agent-room-cli --name Alice --room general
34
+ # 或
35
+ npx agent-room-cli
36
+
37
+ # 运行服务集成测试
38
+ pnpm run service:test
39
+ ```
40
+
41
+ ---
42
+
43
+ ## 模块一:MCP(IDE + CLI)
44
+
45
+ AgentRoom MCP 是一个 [Model Context Protocol](https://modelcontextprotocol.io/) 服务器,为 AI 提供连接和操作实时数据流的能力。
46
+
47
+ ### 接入 Cursor
48
+
49
+ **方式一:通过 npm 包(推荐,已发布后可用)**
50
+
51
+ 在 Cursor 的 MCP 配置(`~/.cursor/mcp.json` 或项目 `.cursor/mcp.json`)中添加:
52
+
53
+ ```json
54
+ {
55
+ "mcpServers": {
56
+ "agent-room": {
57
+ "command": "npx",
58
+ "args": ["-y", "agent-room"]
59
+ }
60
+ }
61
+ }
62
+ ```
63
+
64
+ **方式二:本地开发模式**
65
+
66
+ ```json
67
+ {
68
+ "mcpServers": {
69
+ "agent-room": {
70
+ "command": "npx",
71
+ "args": ["tsx", "src/index.ts"],
72
+ "cwd": "/path/to/agent-room"
73
+ }
74
+ }
75
+ }
76
+ ```
77
+
78
+ 重启 Cursor 后,AI 即可使用以下工具。
79
+
80
+ ### MCP 工具列表
81
+
82
+ | 工具 | 说明 |
83
+ |------|------|
84
+ | `connect_stream` | 连接 WebSocket (`ws://`) 或 SSE (`http://`) 端点,返回 channel ID |
85
+ | `connect_service` | **连接远程 AgentRoom Service**,自动完成认证和加入房间 |
86
+ | `disconnect_stream` | 断开指定频道 |
87
+ | `list_connections` | 列出所有活跃连接及状态 |
88
+ | `send_message` | 通过已连接的频道发送消息(Service 频道自动包装为聊天协议) |
89
+ | `read_history` | 查看频道的历史消息(支持数量、关键词过滤、JSON/文本格式) |
90
+ | `wait_for_message` | 阻塞等待频道的下一条消息(支持关键词过滤,超时返回) |
91
+ | `watch_stream` | 连接 + 等待第一条消息(`connect_stream` + `wait_for_message` 的组合) |
92
+ | `open_chat_terminal` | 自动打开一个 CLI 聊天终端(连接 Service,加入房间,用户可实时观察和参与聊天) |
93
+
94
+ > `connect_service` 与 `connect_stream` 的区别:
95
+ > - `connect_stream` — 连接任意原始 WebSocket/SSE 端点
96
+ > - `connect_service` — 专门连接 AgentRoom Service,自动完成 auth + join,`send_message` 自动包装为聊天格式,接收消息自动解码为可读文本
97
+
98
+ ### MCP 资源
99
+
100
+ | 资源 URI | 说明 |
101
+ |----------|------|
102
+ | `connection://status` | 所有连接的状态摘要 |
103
+ | `connection://{channel_id}/status` | 单个频道的详细状态 |
104
+ | `stream://{channel_id}/messages/recent` | 频道最近 50 条消息 |
105
+ | `stream://{channel_id}/messages/latest` | 频道最新一条消息 |
106
+
107
+ ### 在 Cursor 中使用示例
108
+
109
+ **简单方式(使用 connect_service):**
110
+
111
+ ```
112
+ 帮我连接 ws://my-server:9000 的 general 房间,用户名 CursorAI,然后监听消息并回复。
113
+ ```
114
+
115
+ AI 会调用 `connect_service` → `wait_for_message` → `send_message`,全程自动处理协议细节。
116
+
117
+ **进阶方式(使用 connect_stream):**
118
+
119
+ ```
120
+ 帮我连接 ws://localhost:9000,发送认证和加入房间的 JSON,然后监听消息。
121
+ ```
122
+
123
+ ### 独立运行(不通过 Cursor)
124
+
125
+ ```bash
126
+ # stdio 模式(默认,供 MCP 客户端连接)
127
+ agent-room
128
+ # 或
129
+ npx agent-room
130
+
131
+ # HTTP 模式(远程部署)
132
+ agent-room --transport http --port 3000
133
+ ```
134
+
135
+ ---
136
+
137
+ ## 模块二:Service(消息服务)
138
+
139
+ 可独立部署到云服务器的实时消息服务,提供房间聊天和私聊能力。
140
+
141
+ ### 启动
142
+
143
+ ```bash
144
+ # 默认端口 9000
145
+ agent-room-service
146
+
147
+ # 自定义端口和绑定地址
148
+ PORT=8080 HOST=0.0.0.0 agent-room-service
149
+ ```
150
+
151
+ 启动后同时提供 **WebSocket** 和 **HTTP API** 两个接口(同一端口)。
152
+
153
+ ### CLI 聊天客户端
154
+
155
+ 配套终端客户端,提供完整的聊天室体验:
156
+
157
+ ```bash
158
+ # 启动 CLI(默认连接 localhost:9000,加入 #general)
159
+ agent-room-cli
160
+
161
+ # 自定义参数
162
+ agent-room-cli --name Alice --room dev-ops --url ws://server:9000
163
+ ```
164
+
165
+ **消息显示分层:**
166
+
167
+ | 类型 | 显示方式 | 示例 |
168
+ |------|----------|------|
169
+ | 聊天消息 | 高亮显示(推送消息) | `Alice 大家好!` |
170
+ | 私聊 DM | 紫色标记 | `[DM from Bob] 你好` |
171
+ | 用户加入/离开 | 灰色淡显(系统事件) | `→ Bob joined #general` |
172
+ | 历史消息 | 灰色区块 | `── History #general ──` |
173
+ | 信令响应 | 默认隐藏(`/debug` 开启) | 认证结果、房间列表等 |
174
+
175
+ **CLI 命令:**
176
+
177
+ | 命令 | 快捷键 | 说明 |
178
+ |------|--------|------|
179
+ | `/join <room>` | `/j` | 加入房间 |
180
+ | `/leave [room]` | `/l` | 离开当前或指定房间 |
181
+ | `/switch <room>` | `/s` | 切换活跃房间 |
182
+ | `/rooms` | `/r` | 列出所有房间 |
183
+ | `/members [room]` | `/m` | 查看房间成员 |
184
+ | `/users` | `/u` | 查看在线用户 |
185
+ | `/dm <user> <msg>` | `/d` | 发送私聊 |
186
+ | `/create <id> [name]` | `/c` | 创建新房间 |
187
+ | `/history` | | 查看当前房间历史 |
188
+ | `/debug` | | 切换信令消息可见性 |
189
+ | `/quit` | `/q` | 退出 |
190
+
191
+ 直接输入文字即发送到当前活跃房间。
192
+
193
+ ### WebSocket 协议
194
+
195
+ 连接地址:`ws://your-server:9000`
196
+
197
+ 所有消息为 JSON 格式,统一信封结构:
198
+
199
+ ```json
200
+ {
201
+ "id": "abc12345",
202
+ "type": "action | chat | system | response | error",
203
+ "from": "sender",
204
+ "to": "target (optional)",
205
+ "timestamp": "2026-02-06T12:00:00.000Z",
206
+ "payload": { ... }
207
+ }
208
+ ```
209
+
210
+ #### 连接流程
211
+
212
+ ```
213
+ 1. 客户端连接 WebSocket
214
+ 2. 服务端发送 welcome (type: "system")
215
+ 3. 客户端发送认证 (type: "action", action: "auth")
216
+ 4. 服务端返回认证结果 + 房间列表
217
+ 5. 客户端加入房间 / 发消息 / 私聊
218
+ ```
219
+
220
+ #### Action 列表
221
+
222
+ **认证(必须先执行):**
223
+
224
+ ```json
225
+ {
226
+ "type": "action",
227
+ "from": "client",
228
+ "payload": { "action": "auth", "name": "Alice" }
229
+ }
230
+ ```
231
+
232
+ **房间操作:**
233
+
234
+ ```json
235
+ // 列出所有房间
236
+ { "type": "action", "from": "me", "payload": { "action": "room.list" } }
237
+
238
+ // 创建房间
239
+ { "type": "action", "from": "me", "payload": { "action": "room.create", "room_id": "dev-ops", "name": "DevOps", "description": "运维频道" } }
240
+
241
+ // 加入房间
242
+ { "type": "action", "from": "me", "payload": { "action": "room.join", "room_id": "general" } }
243
+
244
+ // 离开房间
245
+ { "type": "action", "from": "me", "payload": { "action": "room.leave", "room_id": "general" } }
246
+
247
+ // 查看房间成员
248
+ { "type": "action", "from": "me", "payload": { "action": "room.members", "room_id": "general" } }
249
+ ```
250
+
251
+ **发送房间消息:**
252
+
253
+ ```json
254
+ {
255
+ "type": "chat",
256
+ "from": "Alice",
257
+ "to": "room:general",
258
+ "payload": { "message": "大家好!" }
259
+ }
260
+ ```
261
+
262
+ 所有房间成员(包括发送者)都会收到该消息。
263
+
264
+ **私聊 DM:**
265
+
266
+ ```json
267
+ {
268
+ "type": "action",
269
+ "from": "me",
270
+ "payload": { "action": "dm", "to": "Bob", "message": "你好,私密消息" }
271
+ }
272
+ ```
273
+
274
+ 或使用 chat 类型直接发送:
275
+
276
+ ```json
277
+ {
278
+ "type": "chat",
279
+ "from": "Alice",
280
+ "to": "Bob",
281
+ "payload": { "message": "私聊消息" }
282
+ }
283
+ ```
284
+
285
+ **其他:**
286
+
287
+ ```json
288
+ // 在线用户列表
289
+ { "type": "action", "from": "me", "payload": { "action": "users.list" } }
290
+
291
+ // 心跳
292
+ { "type": "action", "from": "me", "payload": { "action": "ping" } }
293
+ ```
294
+
295
+ #### 服务端推送事件
296
+
297
+ 服务端会主动推送以下 system 类型消息:
298
+
299
+ | event | 说明 |
300
+ |-------|------|
301
+ | `welcome` | 连接成功 |
302
+ | `user.joined` | 有用户加入你所在的房间 |
303
+ | `user.left` | 有用户离开你所在的房间 |
304
+ | `room.history` | 加入房间时推送最近 20 条历史消息 |
305
+
306
+ ### HTTP API
307
+
308
+ | 端点 | 说明 |
309
+ |------|------|
310
+ | `GET /health` | 健康检查,返回 `{ "status": "ok" }` |
311
+ | `GET /stats` | 统计信息:连接数、房间数、在线用户数 |
312
+ | `GET /rooms` | 列出所有房间及详情 |
313
+ | `GET /rooms/:id` | 查看指定房间的成员列表 |
314
+ | `GET /users` | 列出所有在线用户 |
315
+
316
+ ### 默认房间
317
+
318
+ 服务启动后自动创建两个持久化房间:
319
+
320
+ - `general` — 默认公共频道
321
+ - `random` — 闲聊频道
322
+
323
+ 这两个房间不会因为无人而被删除。用户创建的房间在所有成员离开后自动删除(除非设置 `persistent: true`)。
324
+
325
+ ---
326
+
327
+ ## MCP + Service + CLI 联动
328
+
329
+ 典型流程:AI 加入聊天室并自动打开一个 CLI 终端供用户实时观察和参与。
330
+
331
+ ```
332
+ 用户对 AI 说:"帮我加入 general 房间聊天"
333
+
334
+ Cursor AI → MCP connect_service(ws://server:9000) 一键连接 + 认证 + 入房
335
+ → MCP open_chat_terminal(room: general) 自动打开 CLI 终端
336
+ → MCP wait_for_message(监听房间消息) 等待消息
337
+
338
+ 用户在 CLI 终端中看到实时消息流,可以随时输入参与聊天
339
+ AI 在 Cursor 中收到消息后自动分析和回复
340
+ ```
341
+
342
+ **对 AI 的指令示例:**
343
+
344
+ ```
345
+ 帮我连接 ws://my-server:9000 的 general 房间,打开一个 CLI 让我也能聊天,然后帮我监听消息。
346
+ ```
347
+
348
+ ---
349
+
350
+ ## 项目结构
351
+
352
+ ```
353
+ src/
354
+ types.ts # 共享类型定义
355
+ core/
356
+ connection-manager.ts # 多连接管理(WebSocket / SSE)
357
+ message-buffer.ts # 滑动窗口消息缓冲
358
+ notification-engine.ts # MCP 通知防抖引擎
359
+ protocols/
360
+ ws-adapter.ts # WebSocket 适配器(自动重连 + 心跳)
361
+ sse-adapter.ts # SSE 适配器(自动重连)
362
+ adapter-interface.ts # 适配器类型导出
363
+ server.ts # MCP 服务器定义(工具 + 资源)
364
+ index.ts # MCP 入口(stdio / HTTP 传输)
365
+ service/
366
+ protocol.ts # Service 消息协议定义
367
+ user-manager.ts # 用户会话管理
368
+ room-manager.ts # 房间管理(创建/加入/离开/广播)
369
+ ws-server.ts # WebSocket 消息路由
370
+ http-api.ts # HTTP REST API
371
+ index.ts # Service 入口
372
+ cli.ts # 终端聊天客户端(推送/信令分层显示)
373
+ test.ts # 集成测试
374
+ test/
375
+ echo-server.ts # WebSocket 回声服务器(测试用)
376
+ service-mcp-test.ts # MCP-Service 集成测试
377
+ ```
378
+
379
+ ## Scripts
380
+
381
+ ```bash
382
+ # ─── 通过 npm bin(安装后)─────────────────────
383
+ agent-room # 启动 MCP 服务器(stdio 模式)
384
+ agent-room-service # 启动消息服务
385
+ agent-room-cli # 启动 CLI 聊天客户端
386
+
387
+ # ─── 通过 pnpm(开发模式)─────────────────────
388
+ pnpm run dev # 启动 MCP 服务器(stdio 模式)
389
+ pnpm run service # 启动消息服务
390
+ pnpm run service:cli # 启动 CLI 聊天客户端
391
+ pnpm run service:test # 运行服务集成测试
392
+ pnpm run build # TypeScript 编译
393
+ ```
394
+
395
+ ## 部署
396
+
397
+ ### Node.js 直接部署
398
+
399
+ ```bash
400
+ # 安装
401
+ npm install -g agent-room
402
+
403
+ # 启动服务
404
+ PORT=9000 agent-room-service
405
+
406
+ # 或编译后运行
407
+ pnpm run build
408
+ PORT=9000 node dist/service/index.js
409
+ ```
410
+
411
+ ### Docker 部署
412
+
413
+ ```bash
414
+ # 构建
415
+ docker build -t agent-room-service .
416
+
417
+ # 运行
418
+ docker run -d -p 9000:9000 --name agent-room agent-room-service
419
+
420
+ # 自定义端口
421
+ docker run -d -p 8080:8080 -e PORT=8080 agent-room-service
422
+ ```
423
+
424
+ ### 发布到 npm
425
+
426
+ ```bash
427
+ # 编译(prepublishOnly 自动执行)
428
+ npm publish
429
+ ```
430
+
431
+ 发布后,任何人都可以:
432
+
433
+ ```bash
434
+ # 运行 MCP 服务器
435
+ npx agent-room
436
+
437
+ # 运行消息服务
438
+ npx agent-room-service
439
+
440
+ # 运行 CLI
441
+ npx agent-room-cli --url ws://server:9000 --name Alice
442
+ ```
443
+
444
+ ## License
445
+
446
+ MIT
@@ -0,0 +1,66 @@
1
+ import { EventEmitter } from "events";
2
+ import { type ConnectionInfo, type ProtocolType, type AdapterOptions } from "../types.js";
3
+ export interface ConnectionManagerEvents {
4
+ /** A new message arrived on a channel */
5
+ message: (channelId: string, data: string) => void;
6
+ /** A connection's state changed */
7
+ stateChange: (channelId: string, info: ConnectionInfo) => void;
8
+ }
9
+ /**
10
+ * Manages multiple concurrent stream connections, each identified by a channelId.
11
+ * Delegates actual protocol handling to WsAdapter / SseAdapter.
12
+ */
13
+ export declare class ConnectionManager extends EventEmitter {
14
+ private _connections;
15
+ /**
16
+ * Open a new stream connection.
17
+ * Returns the channelId (auto-generated if not provided).
18
+ */
19
+ connect(url: string, protocol: ProtocolType, channelId?: string, options?: AdapterOptions): Promise<string>;
20
+ /**
21
+ * Disconnect a channel.
22
+ */
23
+ disconnect(channelId: string): Promise<void>;
24
+ /**
25
+ * Disconnect all channels.
26
+ */
27
+ disconnectAll(): Promise<void>;
28
+ /**
29
+ * Send data through a specific channel.
30
+ */
31
+ send(channelId: string, data: string): Promise<void>;
32
+ /**
33
+ * Get info for a specific channel.
34
+ */
35
+ getConnectionInfo(channelId: string): ConnectionInfo | undefined;
36
+ /**
37
+ * List all active connections.
38
+ */
39
+ listConnections(): ConnectionInfo[];
40
+ /**
41
+ * Check if a channel exists.
42
+ */
43
+ has(channelId: string): boolean;
44
+ /**
45
+ * Wait for the next message on a channel, with optional substring filter.
46
+ * Returns a Promise that resolves with the raw message data, or rejects on timeout.
47
+ *
48
+ * @param channelId The channel to listen on
49
+ * @param timeoutMs Max time to wait (default 30000ms)
50
+ * @param filter Optional substring — only messages containing this string will resolve the promise
51
+ * @returns The raw message string that matched
52
+ */
53
+ waitForMessage(channelId: string, timeoutMs?: number, filter?: string): Promise<{
54
+ data: string;
55
+ timedOut: false;
56
+ } | {
57
+ data: null;
58
+ timedOut: true;
59
+ }>;
60
+ private _createAdapter;
61
+ private _toInfo;
62
+ private _emitStateChange;
63
+ on<K extends keyof ConnectionManagerEvents>(event: K, listener: ConnectionManagerEvents[K]): this;
64
+ emit<K extends keyof ConnectionManagerEvents>(event: K, ...args: Parameters<ConnectionManagerEvents[K]>): boolean;
65
+ }
66
+ //# sourceMappingURL=connection-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/core/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAoBrB,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,mCAAmC;IACnC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;CAChE;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,OAAO,CAAC,YAAY,CAAwC;IAI5D;;;OAGG;IACG,OAAO,CACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,YAAY,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC;IAkElB;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC;;OAEG;IACG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB1D;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAMhE;;OAEG;IACH,eAAe,IAAI,cAAc,EAAE;IAInC;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI/B;;;;;;;;OAQG;IACH,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAe,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC;IAiC9E,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,gBAAgB;IAKf,EAAE,CAAC,CAAC,SAAS,MAAM,uBAAuB,EACjD,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC,GACnC,IAAI;IAIE,IAAI,CAAC,CAAC,SAAS,MAAM,uBAAuB,EACnD,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAC9C,OAAO;CAGX"}