node-karin 0.6.17 → 0.6.19

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 (101) hide show
  1. package/lib/adapter/index.d.ts +1 -1
  2. package/lib/adapter/index.js +1 -1
  3. package/lib/adapter/input/index.d.ts +16 -3
  4. package/lib/adapter/input/index.js +52 -38
  5. package/lib/adapter/kritor/grpc.d.ts +3 -2
  6. package/lib/adapter/kritor/grpc.js +80 -64
  7. package/lib/adapter/kritor/index.d.ts +38 -18
  8. package/lib/adapter/kritor/index.js +30 -11
  9. package/lib/adapter/onebot/11/convert.d.ts +11 -0
  10. package/lib/adapter/onebot/11/convert.js +168 -0
  11. package/lib/adapter/onebot/11/event.d.ts +25 -0
  12. package/lib/adapter/onebot/11/event.js +425 -0
  13. package/lib/adapter/onebot/11/index.d.ts +506 -0
  14. package/lib/adapter/onebot/11/index.js +1047 -0
  15. package/lib/cli/init.js +5 -0
  16. package/lib/core/karin.d.ts +3 -4
  17. package/lib/core/karin.js +3 -2
  18. package/lib/core/listener.d.ts +2 -2
  19. package/lib/core/listener.js +2 -2
  20. package/lib/core/plugin.app.js +2 -1
  21. package/lib/core/plugin.d.ts +4 -4
  22. package/lib/core/plugin.js +2 -1
  23. package/lib/core/plugin.loader.d.ts +3 -3
  24. package/lib/core/plugin.loader.js +2 -1
  25. package/lib/core/server.js +3 -3
  26. package/lib/event/event.handler.d.ts +5 -5
  27. package/lib/event/event.handler.js +6 -5
  28. package/lib/event/index.d.ts +0 -4
  29. package/lib/event/index.js +0 -4
  30. package/lib/event/message.handler.d.ts +3 -3
  31. package/lib/event/notice.handler.d.ts +3 -3
  32. package/lib/event/notice.handler.js +17 -16
  33. package/lib/event/request.handler.d.ts +3 -3
  34. package/lib/event/request.handler.js +4 -3
  35. package/lib/event/review.handler.d.ts +7 -8
  36. package/lib/index.js +1 -1
  37. package/lib/types/adapter/adapter.d.ts +564 -0
  38. package/lib/types/adapter/adapter.js +1 -0
  39. package/lib/types/{api.d.ts → adapter/api.d.ts} +103 -3
  40. package/lib/types/adapter/api.js +1 -0
  41. package/lib/types/element.d.ts +5 -4
  42. package/lib/types/event/contact.d.ts +28 -0
  43. package/lib/types/event/contact.js +13 -0
  44. package/lib/types/event/event.d.ts +390 -0
  45. package/lib/types/event/event.js +234 -0
  46. package/lib/types/event/index.d.ts +12 -0
  47. package/lib/types/event/index.js +7 -0
  48. package/lib/types/event/message.d.ts +104 -0
  49. package/lib/types/event/message.js +72 -0
  50. package/lib/types/event/notice.d.ts +513 -0
  51. package/lib/types/event/notice.js +52 -0
  52. package/lib/types/{reply.d.ts → event/reply.d.ts} +2 -2
  53. package/lib/types/event/reply.js +1 -0
  54. package/lib/types/event/request.d.ts +126 -0
  55. package/lib/types/event/request.js +52 -0
  56. package/lib/types/event/sender.d.ts +44 -0
  57. package/lib/types/event/sender.js +22 -0
  58. package/lib/types/index.d.ts +6 -5
  59. package/lib/types/index.js +6 -5
  60. package/lib/types/onebot11/api.d.ts +53 -0
  61. package/lib/types/onebot11/api.js +54 -0
  62. package/lib/types/onebot11/event.d.ts +619 -0
  63. package/lib/types/onebot11/event.js +56 -0
  64. package/lib/types/onebot11/index.d.ts +6 -0
  65. package/lib/types/onebot11/index.js +6 -0
  66. package/lib/types/onebot11/params.d.ts +609 -0
  67. package/lib/types/onebot11/params.js +7 -0
  68. package/lib/types/onebot11/response.d.ts +516 -0
  69. package/lib/types/onebot11/response.js +1 -0
  70. package/lib/types/onebot11/segment.d.ts +268 -0
  71. package/lib/types/onebot11/segment.js +30 -0
  72. package/lib/types/onebot11/sender.d.ts +59 -0
  73. package/lib/types/onebot11/sender.js +1 -0
  74. package/lib/types/plugin.d.ts +13 -9
  75. package/lib/utils/button.d.ts +2 -2
  76. package/lib/utils/common.d.ts +2 -2
  77. package/lib/utils/config.js +3 -3
  78. package/lib/utils/handler.d.ts +2 -2
  79. package/lib/utils/handler.js +1 -1
  80. package/lib/utils/init.d.ts +1 -1
  81. package/lib/utils/init.js +2 -1
  82. package/lib/utils/segment.d.ts +2 -2
  83. package/package.json +1 -1
  84. package/lib/adapter/onebot/onebot11.d.ts +0 -309
  85. package/lib/adapter/onebot/onebot11.js +0 -1285
  86. package/lib/event/event.d.ts +0 -140
  87. package/lib/event/event.js +0 -125
  88. package/lib/event/message.d.ts +0 -105
  89. package/lib/event/message.js +0 -70
  90. package/lib/event/notice.d.ts +0 -49
  91. package/lib/event/notice.js +0 -15
  92. package/lib/event/request.d.ts +0 -49
  93. package/lib/event/request.js +0 -15
  94. package/lib/types/adapter.d.ts +0 -581
  95. package/lib/types/adapter.js +0 -1
  96. package/lib/types/api.js +0 -1
  97. package/lib/types/event.d.ts +0 -789
  98. package/lib/types/event.js +0 -1
  99. package/lib/types/onebots11.d.ts +0 -1426
  100. package/lib/types/onebots11.js +0 -1
  101. package/lib/types/reply.js +0 -1
@@ -0,0 +1,609 @@
1
+ import { OB11Api } from './api.js';
2
+ import { CustomNodeSegment, OB11Segment } from './segment.js';
3
+ export declare enum MessageType {
4
+ Private = "private",
5
+ Group = "group"
6
+ }
7
+ /**
8
+ * - OneBot11公开Api参数 params
9
+ */
10
+ export type OB11ApiParams = {
11
+ /**
12
+ * - 发送私聊消息
13
+ */
14
+ [OB11Api.send_private_msg]: {
15
+ /**
16
+ * - 对方 QQ 号
17
+ */
18
+ user_id: number;
19
+ /**
20
+ * - 要发送的内容
21
+ */
22
+ message: string;
23
+ /**
24
+ * - 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 `message` 字段是字符串时有效
25
+ */
26
+ auto_escape?: boolean;
27
+ };
28
+ /**
29
+ * - 发送群消息
30
+ */
31
+ [OB11Api.send_group_msg]: {
32
+ /**
33
+ * - 群号
34
+ */
35
+ group_id: number;
36
+ /**
37
+ * - 要发送的内容
38
+ */
39
+ message: string;
40
+ /**
41
+ * - 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 `message` 字段是字符串时有效
42
+ */
43
+ auto_escape?: boolean;
44
+ };
45
+ /**
46
+ * - 发送消息
47
+ */
48
+ [OB11Api.send_msg]: {
49
+ /**
50
+ * - 消息类型
51
+ */
52
+ message_type: MessageType;
53
+ /**
54
+ * - 对方 QQ 号,当消息类型为 "private" 时有效
55
+ */
56
+ user_id?: number;
57
+ /**
58
+ * - 群号,当消息类型为 "group" 时有效
59
+ */
60
+ group_id?: number;
61
+ /**
62
+ * - 要发送的内容
63
+ */
64
+ message: Array<OB11Segment>;
65
+ /**
66
+ * - 消息内容是否作为纯文本发送(即不解析 CQ 码),只在 `message` 字段是字符串时有效
67
+ */
68
+ auto_escape?: boolean;
69
+ };
70
+ /**
71
+ * - 撤回消息
72
+ */
73
+ [OB11Api.delete_msg]: {
74
+ /**
75
+ * - 消息 ID
76
+ */
77
+ message_id: number;
78
+ };
79
+ /**
80
+ * - 获取消息
81
+ */
82
+ [OB11Api.get_msg]: {
83
+ /**
84
+ * - 消息 ID
85
+ */
86
+ message_id: number;
87
+ };
88
+ /**
89
+ * - 获取转发消息
90
+ */
91
+ [OB11Api.get_forward_msg]: {
92
+ /**
93
+ * - 转发消息 ID
94
+ */
95
+ id: string;
96
+ };
97
+ /**
98
+ * - 发送好友赞
99
+ */
100
+ [OB11Api.send_like]: {
101
+ /**
102
+ * - 对方 QQ 号
103
+ */
104
+ user_id: number;
105
+ /**
106
+ * - 赞的次数,每个赞为一个好友赞,每个用户每天最多赞 10 次
107
+ */
108
+ times?: number;
109
+ };
110
+ /**
111
+ * - 群组踢人
112
+ */
113
+ [OB11Api.set_group_kick]: {
114
+ /**
115
+ * - 群号
116
+ */
117
+ group_id: number;
118
+ /**
119
+ * - 要踢的 QQ 号
120
+ */
121
+ user_id: number;
122
+ /**
123
+ * - 拒绝此人的加群请求
124
+ */
125
+ reject_add_request?: boolean;
126
+ };
127
+ /**
128
+ * - 群组禁言
129
+ */
130
+ [OB11Api.set_group_ban]: {
131
+ /**
132
+ * - 群号
133
+ */
134
+ group_id: number;
135
+ /**
136
+ * - 要禁言的 QQ 号
137
+ */
138
+ user_id: number;
139
+ /**
140
+ * - 禁言时长,单位秒,0 表示取消禁言
141
+ */
142
+ duration?: number;
143
+ };
144
+ /**
145
+ * - 群组匿名用户禁言
146
+ */
147
+ [OB11Api.set_group_anonymous_ban]: {
148
+ /**
149
+ * - 群号
150
+ */
151
+ group_id: number;
152
+ /**
153
+ * - 匿名用户对象
154
+ */
155
+ anonymous?: object;
156
+ /**
157
+ * - 匿名用户标识,使用匿名用户对象时此参数无效
158
+ */
159
+ anonymous_flag?: string;
160
+ /**
161
+ * - 禁言时长,单位秒,无法取消匿名用户禁言
162
+ */
163
+ duration?: number;
164
+ };
165
+ /**
166
+ * - 群组全员禁言
167
+ */
168
+ [OB11Api.set_group_whole_ban]: {
169
+ /**
170
+ * - 群号
171
+ */
172
+ group_id: number;
173
+ /**
174
+ * - 是否禁言,true 为开启,false 为关闭
175
+ */
176
+ enable?: boolean;
177
+ };
178
+ /**
179
+ * - 设置群管理员
180
+ */
181
+ [OB11Api.set_group_admin]: {
182
+ /**
183
+ * - 群号
184
+ */
185
+ group_id: number;
186
+ /**
187
+ * - 要设置管理员的 QQ 号
188
+ */
189
+ user_id: number;
190
+ /**
191
+ * - 是否设置为管理员,true 为设置,false 为取消
192
+ */
193
+ enable?: boolean;
194
+ };
195
+ /**
196
+ * - 设置群匿名聊天
197
+ */
198
+ [OB11Api.set_group_anonymous]: {
199
+ /**
200
+ * - 群号
201
+ */
202
+ group_id: number;
203
+ /**
204
+ * - 是否允许匿名聊天,true 为开启,false 为关闭
205
+ */
206
+ enable?: boolean;
207
+ };
208
+ /**
209
+ * - 设置群名片(群备注)
210
+ */
211
+ [OB11Api.set_group_card]: {
212
+ /**
213
+ * - 群号
214
+ */
215
+ group_id: number;
216
+ /**
217
+ * - 要设置的 QQ 号
218
+ */
219
+ user_id: number;
220
+ /**
221
+ * - 名片内容,不填或空字符串表示删除群名片
222
+ */
223
+ card?: string;
224
+ };
225
+ /**
226
+ * - 设置群名
227
+ */
228
+ [OB11Api.set_group_name]: {
229
+ /**
230
+ * - 群号
231
+ */
232
+ group_id: number;
233
+ /**
234
+ * - 新群名
235
+ */
236
+ group_name: string;
237
+ };
238
+ /**
239
+ * - 退出群组
240
+ */
241
+ [OB11Api.set_group_leave]: {
242
+ /**
243
+ * - 群号
244
+ */
245
+ group_id: number;
246
+ /**
247
+ * - 是否解散,如果登录号是群主,则仅在此项为 true 时能够解散
248
+ */
249
+ is_dismiss?: boolean;
250
+ };
251
+ /**
252
+ * - 设置群成员专属头衔
253
+ */
254
+ [OB11Api.set_group_special_title]: {
255
+ /**
256
+ * - 群号
257
+ */
258
+ group_id: number;
259
+ /**
260
+ * - 要设置的 QQ 号
261
+ */
262
+ user_id: number;
263
+ /**
264
+ * - 专属头衔,不填或空字符串表示删除专属头衔
265
+ */
266
+ special_title?: string;
267
+ /**
268
+ * - 专属头衔有效期,单位秒,-1 表示永久,不过此项似乎没有效果
269
+ */
270
+ duration?: number;
271
+ };
272
+ /**
273
+ * - 处理好友添加请求
274
+ */
275
+ [OB11Api.set_friend_add_request]: {
276
+ /**
277
+ * - 请求 flag,在调用处理请求的事件中返回
278
+ */
279
+ flag: string;
280
+ /**
281
+ * - 是否同意请求
282
+ */
283
+ approve?: boolean;
284
+ /**
285
+ * - 添加后的好友备注
286
+ */
287
+ remark?: string;
288
+ };
289
+ /**
290
+ * - 处理群添加请求/邀请
291
+ */
292
+ [OB11Api.set_group_add_request]: {
293
+ /**
294
+ * - 请求 flag,在调用处理请求的事件中返回
295
+ */
296
+ flag: string;
297
+ /**
298
+ * - 请求子类型,add 或 invite,请求子类型为 invite 时为邀请
299
+ */
300
+ sub_type: 'add' | 'invite';
301
+ /**
302
+ * - 是否同意请求/邀请
303
+ */
304
+ approve?: boolean;
305
+ /**
306
+ * - 拒绝理由,仅在拒绝时有效
307
+ */
308
+ reason?: string;
309
+ };
310
+ /**
311
+ * - 获取登录号信息
312
+ */
313
+ [OB11Api.get_login_info]: {};
314
+ /**
315
+ * - 获取陌生人信息
316
+ */
317
+ [OB11Api.get_stranger_info]: {
318
+ /**
319
+ * - QQ 号
320
+ */
321
+ user_id: number;
322
+ /**
323
+ * - 是否不使用缓存,true 表示不使用缓存,false 或留空表示使用缓存
324
+ */
325
+ no_cache?: boolean;
326
+ };
327
+ /**
328
+ * - 获取好友列表
329
+ */
330
+ [OB11Api.get_friend_list]: {};
331
+ /**
332
+ * - 获取群信息
333
+ */
334
+ [OB11Api.get_group_info]: {
335
+ /**
336
+ * - 群号
337
+ */
338
+ group_id: number;
339
+ /**
340
+ * - 是否不使用缓存,true 表示不使用缓存,false 或留空表示使用缓存
341
+ */
342
+ no_cache?: boolean;
343
+ };
344
+ /**
345
+ * - 获取群列表
346
+ */
347
+ [OB11Api.get_group_list]: {};
348
+ /**
349
+ * - 获取群成员信息
350
+ */
351
+ [OB11Api.get_group_member_info]: {
352
+ /**
353
+ * - 群号
354
+ */
355
+ group_id: number;
356
+ /**
357
+ * - QQ 号
358
+ */
359
+ user_id: number;
360
+ /**
361
+ * - 是否不使用缓存,true 表示不使用缓存,false 或留空表示使用缓存
362
+ */
363
+ no_cache?: boolean;
364
+ };
365
+ /**
366
+ * - 获取群成员列表
367
+ */
368
+ [OB11Api.get_group_member_list]: {
369
+ /**
370
+ * - 群号
371
+ */
372
+ group_id: number;
373
+ /**
374
+ * - 是否不使用缓存,true 表示不使用缓存,false 或留空表示使用缓存
375
+ */
376
+ no_cache?: boolean;
377
+ };
378
+ /**
379
+ * - 获取群荣誉信息
380
+ */
381
+ [OB11Api.get_group_honor_info]: {
382
+ /**
383
+ * - 群号
384
+ */
385
+ group_id: number;
386
+ /**
387
+ * - 荣誉类型,可选值为 "talkative"(龙王)、"performer"(群聊之火)、"legend"(群聊炽焰)、"strong_newbie"(新人王)、"emotion"(快乐源泉)、"all"(所有类型)
388
+ */
389
+ type: 'talkative' | 'performer' | 'legend' | 'strong_newbie' | 'emotion' | 'all';
390
+ };
391
+ /**
392
+ * - 获取 Cookies
393
+ */
394
+ [OB11Api.get_cookies]: {
395
+ /**
396
+ * - 指定域名,不填或空字符串表示获取当前域名下的 Cookies
397
+ */
398
+ domain?: string;
399
+ };
400
+ /**
401
+ * - 获取 CSRF Token
402
+ */
403
+ [OB11Api.get_csrf_token]: {};
404
+ /**
405
+ * - 获取 QQ 相关接口凭证
406
+ */
407
+ [OB11Api.get_credentials]: {
408
+ /**
409
+ * - 指定域名,不填或空字符串表示获取当前域名下的凭证
410
+ */
411
+ domain?: string;
412
+ };
413
+ /**
414
+ * - 获取语音
415
+ */
416
+ [OB11Api.get_record]: {
417
+ /**
418
+ * - 文件路径
419
+ */
420
+ file: string;
421
+ /**
422
+ * - 输出格式,可选值为 "amr"、"silk"、"mp3"、"wav",默认为 "amr"
423
+ */
424
+ out_format: string;
425
+ };
426
+ /**
427
+ * - 获取图片
428
+ */
429
+ [OB11Api.get_image]: {
430
+ /**
431
+ * - 文件路径
432
+ */
433
+ file: string;
434
+ };
435
+ /**
436
+ * - 是否可以发送图片
437
+ */
438
+ [OB11Api.can_send_image]: {};
439
+ /**
440
+ * - 是否可以发送语音
441
+ */
442
+ [OB11Api.can_send_record]: {};
443
+ /**
444
+ * - 获取插件运行状态
445
+ */
446
+ [OB11Api.get_status]: {};
447
+ /**
448
+ * - 获取版本信息
449
+ */
450
+ [OB11Api.get_version_info]: {};
451
+ /**
452
+ * - 获取版本信息
453
+ */
454
+ [OB11Api.get_version]: {};
455
+ /**
456
+ * - 重启插件
457
+ */
458
+ [OB11Api.set_restart]: {
459
+ /**
460
+ * - 延迟重启时间,单位毫秒,不填或留空表示立即重启
461
+ */
462
+ delay?: number;
463
+ };
464
+ /**
465
+ * - 清理数据缓存
466
+ */
467
+ [OB11Api.clean_cache]: {};
468
+ /**
469
+ * - 发送合并转发消息
470
+ */
471
+ [OB11Api.send_forward_msg]: {
472
+ /**
473
+ * - 对方 QQ 号,当消息类型为 "private" 时有效
474
+ */
475
+ user_id?: number;
476
+ /**
477
+ * - 群号,当消息类型为 "group" 时有效
478
+ */
479
+ group_id?: number;
480
+ /**
481
+ * - 要发送的内容
482
+ */
483
+ messages: Array<CustomNodeSegment>;
484
+ };
485
+ /**
486
+ * - 获取好友历史消息记录
487
+ */
488
+ [OB11Api.get_friend_msg_history]: {
489
+ /**
490
+ * - 对方 QQ 号
491
+ */
492
+ user_id: number;
493
+ /**
494
+ * - 起始消息序号
495
+ */
496
+ message_seq?: number;
497
+ /**
498
+ * - 起始消息ID
499
+ */
500
+ message_id?: number;
501
+ /**
502
+ * - 消息数量
503
+ */
504
+ message_count: number;
505
+ };
506
+ /**
507
+ * - 获取群组历史消息记录
508
+ */
509
+ [OB11Api.get_group_msg_history]: {
510
+ /**
511
+ * - 群号
512
+ */
513
+ group_id: number;
514
+ /**
515
+ * - 起始消息序号
516
+ */
517
+ message_seq?: number;
518
+ /**
519
+ * - 起始消息ID
520
+ */
521
+ message_id?: number;
522
+ /**
523
+ * - 消息数量
524
+ */
525
+ message_count: number;
526
+ };
527
+ /**
528
+ * - 对消息进行表情回应
529
+ */
530
+ [OB11Api.set_msg_emoji_like]: {
531
+ /**
532
+ * - 需要回应的消息 ID
533
+ */
534
+ message_id: string;
535
+ /**
536
+ * - 回应的表情 ID
537
+ */
538
+ emoji_id: number;
539
+ /**
540
+ * - 设置、取消
541
+ */
542
+ is_set: boolean;
543
+ };
544
+ /**
545
+ * 上传群文件
546
+ */
547
+ [OB11Api.upload_group_file]: {
548
+ /**
549
+ * - 群号
550
+ */
551
+ group_id: number;
552
+ /**
553
+ * - 文件路径 需要提供绝对路径
554
+ */
555
+ file: string;
556
+ /**
557
+ * - 文件名称 必须提供
558
+ */
559
+ name: string;
560
+ /**
561
+ * - 父目录ID 不提供则上传到根目录
562
+ */
563
+ folder?: string;
564
+ };
565
+ /**
566
+ * 上传私聊文件
567
+ */
568
+ [OB11Api.upload_private_file]: {
569
+ /**
570
+ * - 对方 QQ 号
571
+ */
572
+ user_id: number;
573
+ /**
574
+ * - 文件路径 需要提供绝对路径
575
+ */
576
+ file: string;
577
+ /**
578
+ * - 文件名称 必须提供
579
+ */
580
+ name: string;
581
+ };
582
+ /**
583
+ * 获取精华消息列表
584
+ */
585
+ [OB11Api.get_essence_msg_list]: {
586
+ /**
587
+ * - 群号
588
+ */
589
+ group_id: number;
590
+ };
591
+ /**
592
+ * 设置精华消息
593
+ */
594
+ [OB11Api.set_essence_msg]: {
595
+ /**
596
+ * - 消息ID
597
+ */
598
+ message_id: number;
599
+ };
600
+ /**
601
+ * 移除精华消息
602
+ */
603
+ [OB11Api.delete_essence_msg]: {
604
+ /**
605
+ * - 消息ID
606
+ */
607
+ message_id: number;
608
+ };
609
+ };
@@ -0,0 +1,7 @@
1
+ /* eslint-disable no-unused-vars */
2
+ import { OB11Api } from './api.js';
3
+ export var MessageType;
4
+ (function (MessageType) {
5
+ MessageType["Private"] = "private";
6
+ MessageType["Group"] = "group";
7
+ })(MessageType || (MessageType = {}));