node-karin 0.12.13 → 0.12.15

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 (59) hide show
  1. package/lib/adapter/input/index.d.ts +1 -1
  2. package/lib/adapter/input/index.js +1 -1
  3. package/lib/adapter/onebot/11/event.js +90 -84
  4. package/lib/adapter/onebot/11/index.d.ts +89 -127
  5. package/lib/adapter/onebot/11/index.js +192 -254
  6. package/lib/cli/index.js +2 -2
  7. package/lib/core/init/config.js +1 -1
  8. package/lib/core/karin/karin.d.ts +21 -30
  9. package/lib/core/karin/karin.js +7 -9
  10. package/lib/core/listener/listener.js +11 -11
  11. package/lib/core/plugin/base.d.ts +7 -21
  12. package/lib/core/plugin/base.js +2 -6
  13. package/lib/core/plugin/loader.d.ts +5 -15
  14. package/lib/core/plugin/loader.js +5 -15
  15. package/lib/core/server/server.js +4 -4
  16. package/lib/event/handler/base.d.ts +1 -3
  17. package/lib/event/handler/base.js +1 -3
  18. package/lib/event/handler/message.js +9 -3
  19. package/lib/event/handler/notice.js +38 -32
  20. package/lib/event/handler/request.js +6 -6
  21. package/lib/index.d.ts +6 -0
  22. package/lib/index.js +6 -0
  23. package/lib/modules.d.ts +2 -2
  24. package/lib/modules.js +3 -2
  25. package/lib/types/adapter/accept.d.ts +24 -0
  26. package/lib/types/adapter/accept.js +1 -0
  27. package/lib/types/adapter/api.d.ts +88 -264
  28. package/lib/types/adapter/base.d.ts +3 -3
  29. package/lib/types/config/config.d.ts +4 -12
  30. package/lib/types/element/element.d.ts +119 -349
  31. package/lib/types/element/qqbot.d.ts +4 -12
  32. package/lib/types/event/contact.d.ts +6 -12
  33. package/lib/types/event/event.d.ts +59 -163
  34. package/lib/types/event/message.d.ts +11 -31
  35. package/lib/types/event/message.js +10 -12
  36. package/lib/types/event/notice.d.ts +118 -325
  37. package/lib/types/event/notice.js +8 -10
  38. package/lib/types/event/request.d.ts +29 -66
  39. package/lib/types/event/request.js +8 -10
  40. package/lib/types/event/sender.d.ts +7 -21
  41. package/lib/types/index.d.ts +1 -0
  42. package/lib/types/index.js +1 -0
  43. package/lib/types/onebot11/api.d.ts +49 -49
  44. package/lib/types/onebot11/event.d.ts +131 -347
  45. package/lib/types/onebot11/params.d.ts +184 -456
  46. package/lib/types/onebot11/response.d.ts +159 -381
  47. package/lib/types/onebot11/segment.d.ts +25 -75
  48. package/lib/types/onebot11/sender.d.ts +13 -39
  49. package/lib/types/plugin/app.d.ts +7 -11
  50. package/lib/types/plugin/plugin.d.ts +55 -165
  51. package/lib/types/render/render.d.ts +16 -48
  52. package/lib/utils/common/common.js +4 -2
  53. package/lib/utils/config/config.js +1 -1
  54. package/lib/utils/core/logger.js +3 -3
  55. package/lib/utils/core/segment.d.ts +28 -59
  56. package/lib/utils/core/segment.js +26 -30
  57. package/lib/utils/tools/restart.d.ts +3 -3
  58. package/lib/utils/tools/restart.js +5 -5
  59. package/package.json +1 -2
@@ -3,514 +3,292 @@ import { OB11Role, ob11Sender, OB11Sex } from './sender.js';
3
3
  import { CustomNodeSegment, OB11Segment } from './segment.js';
4
4
  import { MessageType } from './params.js';
5
5
  export interface GetGroupInfo {
6
- /**
7
- * - 群号
8
- */
6
+ /** 群号 */
9
7
  group_id: number;
10
- /**
11
- * - 群名称
12
- */
8
+ /** 群名称 */
13
9
  group_name: string;
14
- /**
15
- * - 成员数
16
- */
10
+ /** 成员数 */
17
11
  member_count: number;
18
- /**
19
- * - 最大成员数(群容量)
20
- */
12
+ /** 最大成员数(群容量) */
21
13
  max_member_count: number;
22
14
  }
23
15
  export interface HonorInfoList {
24
- /**
25
- * - QQ 号
26
- */
16
+ /** QQ 号 */
27
17
  user_id: number;
28
- /**
29
- * - QQ 昵称
30
- */
18
+ /** QQ 昵称 */
31
19
  nickname: string;
32
- /**
33
- * - 头像url
34
- */
20
+ /** 头像url */
35
21
  avatar: string;
36
- /**
37
- * - 荣誉描述
38
- */
22
+ /** 荣誉描述 */
39
23
  description: string;
40
24
  }
41
25
  export interface GetGroupMemberInfo {
42
- /**
43
- * - 群号
44
- */
26
+ /** 群号 */
45
27
  group_id: number;
46
- /**
47
- * - QQ 号
48
- */
28
+ /** QQ 号 */
49
29
  user_id: number;
50
- /**
51
- * - 昵称
52
- */
30
+ /** 昵称 */
53
31
  nickname: string;
54
- /**
55
- * - 群名片/备注
56
- */
32
+ /** 群名片/备注 */
57
33
  card: string;
58
- /**
59
- * - 性别
60
- */
34
+ /** 性别 */
61
35
  sex: OB11Sex;
62
- /**
63
- * - 年龄
64
- */
36
+ /** 年龄 */
65
37
  age: number;
66
- /**
67
- * - 地区
68
- */
38
+ /** 地区 */
69
39
  area: string;
70
- /**
71
- * - 加群时间戳
72
- */
40
+ /** 加群时间戳 */
73
41
  join_time: number;
74
- /**
75
- * - 最后发言时间戳
76
- */
42
+ /** 最后发言时间戳 */
77
43
  last_sent_time: number;
78
- /**
79
- * - 成员等级
80
- */
44
+ /** 成员等级 */
81
45
  level: string;
82
- /**
83
- * - 角色
84
- */
46
+ /** 角色 */
85
47
  role: OB11Role;
86
- /**
87
- * - 是否不良记录成员
88
- */
48
+ /** 是否不良记录成员 */
89
49
  unfriendly: boolean;
90
- /**
91
- * - 专属头衔
92
- */
50
+ /** 专属头衔 */
93
51
  title: string;
94
- /**
95
- * - 专属头衔过期时间戳
96
- */
52
+ /** 专属头衔过期时间戳 */
97
53
  title_expire_time: number;
98
- /**
99
- * - 是否允许修改群名片
100
- */
54
+ /** 是否允许修改群名片 */
101
55
  card_changeable: boolean;
102
56
  }
103
- /**
104
- * - OneBot11公开Api返回值 response
105
- */
57
+ /** OneBot11公开Api返回值 response */
106
58
  export type OB11ApiResponse = {
107
- /**
108
- * - 发送私聊消息
109
- */
110
- [OB11Api.send_private_msg]: {
111
- /**
112
- * - 消息 ID
113
- */
59
+ /** 发送私聊消息 */
60
+ [OB11Api.sendPrivateMsg]: {
61
+ /** 消息 ID */
114
62
  message_id: number;
115
63
  };
116
- /**
117
- * - 发送群消息
118
- */
119
- [OB11Api.send_group_msg]: {
120
- /**
121
- * - 消息 ID
122
- */
64
+ /** 发送群消息 */
65
+ [OB11Api.sendGroupMsg]: {
66
+ /** 消息 ID */
123
67
  message_id: number;
124
68
  };
125
- /**
126
- * - 发送消息
127
- */
128
- [OB11Api.send_msg]: {
129
- /**
130
- * - 消息 ID
131
- */
69
+ /** 发送消息 */
70
+ [OB11Api.sendMsg]: {
71
+ /** 消息 ID */
132
72
  message_id: number;
133
73
  };
134
- /**
135
- * - 撤回消息
136
- */
137
- [OB11Api.delete_msg]: {
138
- /**
139
- * - 消息 ID
140
- */
74
+ /** 撤回消息 */
75
+ [OB11Api.deleteMsg]: {
76
+ /** 消息 ID */
141
77
  message_id: number;
142
78
  };
143
- /**
144
- * - 获取消息
145
- */
146
- [OB11Api.get_msg]: {
147
- /**
148
- * - 发送时间
149
- */
79
+ /** 获取消息 */
80
+ [OB11Api.getMsg]: {
81
+ /** 发送时间 */
150
82
  time: number;
151
- /**
152
- * - 消息类型
153
- */
83
+ /** 消息类型 */
154
84
  message_type: MessageType;
155
85
  message_id: number;
156
86
  real_id: number;
157
87
  sender: ob11Sender;
158
88
  message: OB11Segment[];
159
89
  };
160
- /**
161
- * - 获取转发消息
162
- */
163
- [OB11Api.get_forward_msg]: {
90
+ /** 获取转发消息 */
91
+ [OB11Api.getForwardMsg]: {
164
92
  message: Array<CustomNodeSegment>;
165
93
  };
166
- /**
167
- * - 发送好友赞
168
- */
169
- [OB11Api.send_like]: {};
170
- /**
171
- * - 群组踢人
172
- */
173
- [OB11Api.set_group_kick]: {};
174
- /**
175
- * - 群组禁言
176
- */
177
- [OB11Api.set_group_ban]: {};
178
- /**
179
- * - 群组匿名用户禁言
180
- */
181
- [OB11Api.set_group_anonymous_ban]: {};
182
- /**
183
- * - 群组全员禁言
184
- */
185
- [OB11Api.set_group_whole_ban]: {};
186
- /**
187
- * - 设置群管理员
188
- */
189
- [OB11Api.set_group_admin]: {};
190
- /**
191
- * - 设置群匿名聊天
192
- */
193
- [OB11Api.set_group_anonymous]: {};
194
- /**
195
- * - 设置群名片(群备注)
196
- */
197
- [OB11Api.set_group_card]: {};
198
- /**
199
- * - 设置群名
200
- */
201
- [OB11Api.set_group_name]: {};
202
- /**
203
- * - 退出群组
204
- */
205
- [OB11Api.set_group_leave]: {};
206
- /**
207
- * - 设置群成员专属头衔
208
- */
209
- [OB11Api.set_group_special_title]: {};
210
- /**
211
- * - 处理好友添加请求
212
- */
213
- [OB11Api.set_friend_add_request]: {};
214
- /**
215
- * - 处理群添加请求/邀请
216
- */
217
- [OB11Api.set_group_add_request]: {};
218
- /**
219
- * - 获取登录号信息
220
- */
221
- [OB11Api.get_login_info]: {
222
- /**
223
- * - QQ 号
224
- */
94
+ /** 发送好友赞 */
95
+ [OB11Api.sendLike]: {};
96
+ /** 群组踢人 */
97
+ [OB11Api.setGroupKick]: {};
98
+ /** 群组禁言 */
99
+ [OB11Api.setGroupBan]: {};
100
+ /** 群组匿名用户禁言 */
101
+ [OB11Api.setGroupAnonymousBan]: {};
102
+ /** 群组全员禁言 */
103
+ [OB11Api.setGroupWholeBan]: {};
104
+ /** 设置群管理员 */
105
+ [OB11Api.setGroupAdmin]: {};
106
+ /** 设置群匿名聊天 */
107
+ [OB11Api.setGroupAnonymous]: {};
108
+ /** 设置群名片(群备注) */
109
+ [OB11Api.setGroupCard]: {};
110
+ /** 设置群名 */
111
+ [OB11Api.setGroupName]: {};
112
+ /** 退出群组 */
113
+ [OB11Api.setGroupLeave]: {};
114
+ /** 设置群成员专属头衔 */
115
+ [OB11Api.setGroupSpecialTitle]: {};
116
+ /** 处理好友添加请求 */
117
+ [OB11Api.setFriendAddRequest]: {};
118
+ /** 处理群添加请求/邀请 */
119
+ [OB11Api.setGroupAddRequest]: {};
120
+ /** 获取登录号信息 */
121
+ [OB11Api.getLoginInfo]: {
122
+ /** QQ 号 */
225
123
  user_id: number;
226
- /**
227
- * - QQ 昵称
228
- */
124
+ /** QQ 昵称 */
229
125
  nickname: string;
230
126
  };
231
- /**
232
- * - 获取陌生人信息
233
- */
234
- [OB11Api.get_stranger_info]: {
235
- /**
236
- * - QQ 号
237
- */
127
+ /** 获取陌生人信息 */
128
+ [OB11Api.getStrangerInfo]: {
129
+ /** QQ 号 */
238
130
  user_id: number;
239
- /**
240
- * - QQ 昵称
241
- */
131
+ /** QQ 昵称 */
242
132
  nickname: string;
243
- /**
244
- * - 性别
245
- */
133
+ /** 性别 */
246
134
  sex: 'male' | 'female' | 'unknown';
247
- /**
248
- * - 年龄
249
- */
135
+ /** 年龄 */
250
136
  age: number;
251
137
  };
252
- /**
253
- * - 获取好友列表
254
- */
255
- [OB11Api.get_friend_list]: Array<{
256
- /**
257
- * - QQ 号
258
- */
138
+ /** 获取好友列表 */
139
+ [OB11Api.getFriendList]: Array<{
140
+ /** QQ 号 */
259
141
  user_id: number;
260
- /**
261
- * - QQ 昵称
262
- */
142
+ /** QQ 昵称 */
263
143
  nickname: string;
264
- /**
265
- * - 性别
266
- */
144
+ /** 性别 */
267
145
  sex: 'male' | 'female' | 'unknown';
268
- /**
269
- * - 年龄
270
- */
146
+ /** 年龄 */
271
147
  age: number;
272
148
  }>;
273
- /**
274
- * - 获取群信息
275
- */
276
- [OB11Api.get_group_info]: GetGroupInfo;
277
- /**
278
- * - 获取群列表
279
- */
280
- [OB11Api.get_group_list]: Array<GetGroupInfo>;
281
- /**
282
- * - 获取群成员信息
283
- */
284
- [OB11Api.get_group_member_info]: GetGroupMemberInfo;
285
- /**
286
- * - 获取群成员列表
287
- */
288
- [OB11Api.get_group_member_list]: Array<GetGroupMemberInfo>;
289
- /**
290
- * - 获取群荣誉信息
291
- */
292
- [OB11Api.get_group_honor_info]: {
293
- /**
294
- * - 群号
295
- */
149
+ /** 获取群信息 */
150
+ [OB11Api.getGroupInfo]: GetGroupInfo;
151
+ /** 获取群列表 */
152
+ [OB11Api.getGroupList]: Array<GetGroupInfo>;
153
+ /** 获取群成员信息 */
154
+ [OB11Api.getGroupMemberInfo]: GetGroupMemberInfo;
155
+ /** 获取群成员列表 */
156
+ [OB11Api.getGroupMemberList]: Array<GetGroupMemberInfo>;
157
+ /** 获取群荣誉信息 */
158
+ [OB11Api.getGroupHonorInfo]: {
159
+ /** 群号 */
296
160
  group_id: number;
297
161
  /**
298
162
  * 当前龙王
299
163
  */
300
164
  current_talkative?: {
301
- /**
302
- * - QQ 号
303
- */
165
+ /** QQ 号 */
304
166
  user_id: number;
305
- /**
306
- * - QQ 昵称
307
- */
167
+ /** QQ 昵称 */
308
168
  nickname: string;
309
- /**
310
- * - 头像url
311
- */
169
+ /** 头像url */
312
170
  avatar: string;
313
- /**
314
- * - 持续天数
315
- */
171
+ /** 持续天数 */
316
172
  day_count: number;
317
173
  };
318
- /**
319
- * - 历史龙王
320
- */
174
+ /** 历史龙王 */
321
175
  talkative_list: Array<HonorInfoList>;
322
- /**
323
- * - 群聊之火
324
- */
176
+ /** 群聊之火 */
325
177
  performer_list: Array<HonorInfoList>;
326
- /**
327
- * - 群聊炽焰
328
- */
178
+ /** 群聊炽焰 */
329
179
  legend_list: Array<HonorInfoList>;
330
- /**
331
- * - 冒尖小春笋
332
- */
180
+ /** 冒尖小春笋 */
333
181
  strong_newbie_list: Array<HonorInfoList>;
334
- /**
335
- * - 快乐之源
336
- */
182
+ /** 快乐之源 */
337
183
  emotion_list: Array<HonorInfoList>;
338
184
  };
339
- /**
340
- * - 获取 Cookies
341
- */
342
- [OB11Api.get_cookies]: {
185
+ /** 获取 Cookies */
186
+ [OB11Api.getCookies]: {
343
187
  cookies: string;
344
188
  };
345
- /**
346
- * - 获取 CSRF Token
347
- */
348
- [OB11Api.get_csrf_token]: {
189
+ /** 获取 CSRF Token */
190
+ [OB11Api.getCsrfToken]: {
349
191
  token: number;
350
192
  };
351
- /**
352
- * - 获取 QQ 相关接口凭证
353
- */
354
- [OB11Api.get_credentials]: {
193
+ /** 获取 QQ 相关接口凭证 */
194
+ [OB11Api.getCredentials]: {
355
195
  cookies: string;
356
196
  csrf_token: number;
357
197
  };
358
- /**
359
- * - 获取语音
360
- */
361
- [OB11Api.get_record]: {
362
- /**
363
- * - 转换后的语音文件绝对路径 如 /home/somebody/cqhttp/data/record/0B38145AA44505000B38145AA4450500.mp3
364
- */
198
+ /** 获取语音 */
199
+ [OB11Api.getRecord]: {
200
+ /** 转换后的语音文件绝对路径 如 /home/somebody/cqhttp/data/record/0B38145AA44505000B38145AA4450500.mp3 */
365
201
  file: string;
366
202
  };
367
- /**
368
- * - 获取图片
369
- */
370
- [OB11Api.get_image]: {
371
- /**
372
- * - 下载后的图片文件路径,如 /home/somebody/cqhttp/data/image/6B4DE3DFD1BD271E3297859D41C530F5.jpg
373
- */
203
+ /** 获取图片 */
204
+ [OB11Api.getImage]: {
205
+ /** 下载后的图片文件路径,如 /home/somebody/cqhttp/data/image/6B4DE3DFD1BD271E3297859D41C530F5.jpg */
374
206
  file: string;
375
207
  };
376
- /**
377
- * - 是否可以发送图片
378
- */
379
- [OB11Api.can_send_image]: {
208
+ /** 是否可以发送图片 */
209
+ [OB11Api.canSendImage]: {
380
210
  yes: boolean;
381
211
  };
382
- /**
383
- * - 是否可以发送语音
384
- */
385
- [OB11Api.can_send_record]: {
212
+ /** 是否可以发送语音 */
213
+ [OB11Api.canSendRecord]: {
386
214
  yes: boolean;
387
215
  };
388
- /**
389
- * - 获取插件运行状态
390
- */
391
- [OB11Api.get_status]: {
392
- /**
393
- * - 当前 QQ 在线,null 表示无法查询到在线状态
394
- */
216
+ /** 获取插件运行状态 */
217
+ [OB11Api.getStatus]: {
218
+ /** 当前 QQ 在线,null 表示无法查询到在线状态 */
395
219
  online: boolean;
396
- /**
397
- * - 状态符合预期,意味着各模块正常运行、功能正常,且 QQ 在线
398
- */
220
+ /** 状态符合预期,意味着各模块正常运行、功能正常,且 QQ 在线 */
399
221
  good: boolean;
400
222
  [key: string]: any;
401
223
  };
402
- /**
403
- * - 获取版本信息
404
- */
405
- [OB11Api.get_version_info]: {
406
- /**
407
- * - 应用标识,如 mirai-native
408
- */
224
+ /** 获取版本信息 */
225
+ [OB11Api.getVersionInfo]: {
226
+ /** 应用标识,如 mirai-native */
409
227
  app_name: string;
410
- /**
411
- * - 应用版本,如 1.2.3
412
- */
228
+ /** 应用版本,如 1.2.3 */
413
229
  app_version: string;
414
- /**
415
- * - OneBot 标准版本,如 v11
416
- */
230
+ /** OneBot 标准版本,如 v11 */
417
231
  protocol_version: string;
418
232
  [key: string]: any;
419
233
  };
420
- /**
421
- * - 获取版本信息
422
- */
423
- [OB11Api.get_version]: {
424
- /**
425
- * - 应用标识,如 mirai-native
426
- */
234
+ /** 获取版本信息 */
235
+ [OB11Api.getVersion]: {
236
+ /** 应用标识,如 mirai-native */
427
237
  app_name: string;
428
- /**
429
- * - 应用版本,如 1.2.3
430
- */
238
+ /** 应用版本,如 1.2.3 */
431
239
  app_version: string;
432
- /**
433
- * - OneBot 标准版本,如 v11
434
- */
240
+ /** OneBot 标准版本,如 v11 */
435
241
  protocol_version: string;
436
242
  [key: string]: any;
437
243
  };
438
- /**
439
- * - 重启插件
440
- */
441
- [OB11Api.set_restart]: {
442
- /**
443
- * - 延迟重启时间,单位毫秒,不填或留空表示立即重启
444
- */
244
+ /** 重启插件 */
245
+ [OB11Api.setRestart]: {
246
+ /** 延迟重启时间,单位毫秒,不填或留空表示立即重启 */
445
247
  delay?: number;
446
248
  };
447
- /**
448
- * - 清理数据缓存
449
- */
450
- [OB11Api.clean_cache]: {};
451
- /**
452
- * - 发送合并转发消息
453
- */
454
- [OB11Api.send_forward_msg]: string;
455
- /**
456
- * - 获取好友历史消息记录
457
- */
458
- [OB11Api.get_friend_msg_history]: Array<OB11Segment>;
459
- /**
460
- * - 获取群组历史消息记录
461
- */
462
- [OB11Api.get_group_msg_history]: Array<OB11Segment>;
463
- /**
464
- * - 对消息进行表情回应
465
- */
466
- [OB11Api.set_msg_emoji_like]: {};
249
+ /** 清理数据缓存 */
250
+ [OB11Api.cleanCache]: {};
251
+ /** 发送合并转发消息 */
252
+ [OB11Api.sendForwardMsg]: string;
253
+ /** 获取好友历史消息记录 */
254
+ [OB11Api.getFriendMsgHistory]: Array<OB11Segment>;
255
+ /** 获取群组历史消息记录 */
256
+ [OB11Api.getGroupMsgHistory]: Array<OB11Segment>;
257
+ /** 对消息进行表情回应 */
258
+ [OB11Api.setMsgEmojiLike]: {};
467
259
  /**
468
260
  * 上传群文件
469
261
  */
470
- [OB11Api.upload_group_file]: {};
262
+ [OB11Api.uploadGroupFile]: {};
471
263
  /**
472
264
  * 上传私聊文件
473
265
  */
474
- [OB11Api.upload_private_file]: {};
266
+ [OB11Api.uploadPrivateFile]: {};
475
267
  /**
476
268
  * 获取精华消息列表
477
269
  */
478
- [OB11Api.get_essence_msg_list]: Array<{
479
- /**
480
- * - 发送者QQ号
481
- */
270
+ [OB11Api.getEssenceMsgList]: Array<{
271
+ /** 发送者QQ号 */
482
272
  sender_id: number;
483
- /**
484
- * - 发送者昵称
485
- */
273
+ /** 发送者昵称 */
486
274
  sender_nick: string;
487
- /**
488
- * - 消息发送时间
489
- */
275
+ /** 消息发送时间 */
490
276
  sender_time: number;
491
- /**
492
- * - 操作者QQ号
493
- */
277
+ /** 操作者QQ号 */
494
278
  operator_id: number;
495
- /**
496
- * - 操作者昵称
497
- */
279
+ /** 操作者昵称 */
498
280
  operator_nick: string;
499
- /**
500
- * - 精华设置时间
501
- */
281
+ /** 精华设置时间 */
502
282
  operator_time: number;
503
- /**
504
- * - 消息ID
505
- */
283
+ /** 消息ID */
506
284
  message_id: number;
507
285
  }>;
508
286
  /**
509
287
  * 设置精华消息
510
288
  */
511
- [OB11Api.set_essence_msg]: {};
289
+ [OB11Api.setEssenceMsg]: {};
512
290
  /**
513
291
  * 移除精华消息
514
292
  */
515
- [OB11Api.delete_essence_msg]: {};
293
+ [OB11Api.deleteEssenceMsg]: {};
516
294
  };