@juzi/wechaty 1.0.21 → 1.0.24

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 (106) hide show
  1. package/dist/cjs/src/config.d.ts +2 -0
  2. package/dist/cjs/src/config.d.ts.map +1 -1
  3. package/dist/cjs/src/config.js +3 -1
  4. package/dist/cjs/src/config.js.map +1 -1
  5. package/dist/cjs/src/package-json.js +4 -4
  6. package/dist/cjs/src/package-json.js.map +1 -1
  7. package/dist/cjs/src/pure-functions/update.d.ts +2 -1
  8. package/dist/cjs/src/pure-functions/update.d.ts.map +1 -1
  9. package/dist/cjs/src/pure-functions/update.js +18 -6
  10. package/dist/cjs/src/pure-functions/update.js.map +1 -1
  11. package/dist/cjs/src/schemas/contact-events.d.ts +14 -2
  12. package/dist/cjs/src/schemas/contact-events.d.ts.map +1 -1
  13. package/dist/cjs/src/schemas/contact-events.js.map +1 -1
  14. package/dist/cjs/src/schemas/room-events.d.ts +4 -1
  15. package/dist/cjs/src/schemas/room-events.d.ts.map +1 -1
  16. package/dist/cjs/src/schemas/room-events.js +1 -0
  17. package/dist/cjs/src/schemas/room-events.js.map +1 -1
  18. package/dist/cjs/src/schemas/update.d.ts +30 -11
  19. package/dist/cjs/src/schemas/update.d.ts.map +1 -1
  20. package/dist/cjs/src/schemas/update.js +32 -0
  21. package/dist/cjs/src/schemas/update.js.map +1 -1
  22. package/dist/cjs/src/schemas/wechaty-events.d.ts +26 -2
  23. package/dist/cjs/src/schemas/wechaty-events.d.ts.map +1 -1
  24. package/dist/cjs/src/schemas/wechaty-events.js +7 -0
  25. package/dist/cjs/src/schemas/wechaty-events.js.map +1 -1
  26. package/dist/cjs/src/user-modules/contact.d.ts.map +1 -1
  27. package/dist/cjs/src/user-modules/contact.js +7 -10
  28. package/dist/cjs/src/user-modules/contact.js.map +1 -1
  29. package/dist/cjs/src/user-modules/tag-group.d.ts +54 -20
  30. package/dist/cjs/src/user-modules/tag-group.d.ts.map +1 -1
  31. package/dist/cjs/src/user-modules/tag-group.js +103 -44
  32. package/dist/cjs/src/user-modules/tag-group.js.map +1 -1
  33. package/dist/cjs/src/user-modules/tag.d.ts +57 -22
  34. package/dist/cjs/src/user-modules/tag.d.ts.map +1 -1
  35. package/dist/cjs/src/user-modules/tag.js +140 -48
  36. package/dist/cjs/src/user-modules/tag.js.map +1 -1
  37. package/dist/cjs/src/wechaty/wechaty-base.d.ts +7 -7
  38. package/dist/cjs/src/wechaty-mixins/gerror-mixin.d.ts +1 -1
  39. package/dist/cjs/src/wechaty-mixins/io-mixin.d.ts +2 -2
  40. package/dist/cjs/src/wechaty-mixins/login-mixin.d.ts +5 -5
  41. package/dist/cjs/src/wechaty-mixins/misc-mixin.d.ts +5 -5
  42. package/dist/cjs/src/wechaty-mixins/plugin-mixin.d.ts +6 -6
  43. package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts +4 -4
  44. package/dist/cjs/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
  45. package/dist/cjs/src/wechaty-mixins/puppet-mixin.js +152 -13
  46. package/dist/cjs/src/wechaty-mixins/puppet-mixin.js.map +1 -1
  47. package/dist/cjs/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +1 -1
  48. package/dist/esm/src/config.d.ts +2 -0
  49. package/dist/esm/src/config.d.ts.map +1 -1
  50. package/dist/esm/src/config.js +2 -0
  51. package/dist/esm/src/config.js.map +1 -1
  52. package/dist/esm/src/package-json.js +4 -4
  53. package/dist/esm/src/package-json.js.map +1 -1
  54. package/dist/esm/src/pure-functions/update.d.ts +2 -1
  55. package/dist/esm/src/pure-functions/update.d.ts.map +1 -1
  56. package/dist/esm/src/pure-functions/update.js +16 -5
  57. package/dist/esm/src/pure-functions/update.js.map +1 -1
  58. package/dist/esm/src/schemas/contact-events.d.ts +14 -2
  59. package/dist/esm/src/schemas/contact-events.d.ts.map +1 -1
  60. package/dist/esm/src/schemas/contact-events.js.map +1 -1
  61. package/dist/esm/src/schemas/room-events.d.ts +4 -1
  62. package/dist/esm/src/schemas/room-events.d.ts.map +1 -1
  63. package/dist/esm/src/schemas/room-events.js +1 -0
  64. package/dist/esm/src/schemas/room-events.js.map +1 -1
  65. package/dist/esm/src/schemas/update.d.ts +30 -11
  66. package/dist/esm/src/schemas/update.d.ts.map +1 -1
  67. package/dist/esm/src/schemas/update.js +8 -1
  68. package/dist/esm/src/schemas/update.js.map +1 -1
  69. package/dist/esm/src/schemas/wechaty-events.d.ts +26 -2
  70. package/dist/esm/src/schemas/wechaty-events.d.ts.map +1 -1
  71. package/dist/esm/src/schemas/wechaty-events.js +7 -0
  72. package/dist/esm/src/schemas/wechaty-events.js.map +1 -1
  73. package/dist/esm/src/user-modules/contact.d.ts.map +1 -1
  74. package/dist/esm/src/user-modules/contact.js +7 -10
  75. package/dist/esm/src/user-modules/contact.js.map +1 -1
  76. package/dist/esm/src/user-modules/tag-group.d.ts +54 -20
  77. package/dist/esm/src/user-modules/tag-group.d.ts.map +1 -1
  78. package/dist/esm/src/user-modules/tag-group.js +104 -45
  79. package/dist/esm/src/user-modules/tag-group.js.map +1 -1
  80. package/dist/esm/src/user-modules/tag.d.ts +57 -22
  81. package/dist/esm/src/user-modules/tag.d.ts.map +1 -1
  82. package/dist/esm/src/user-modules/tag.js +119 -50
  83. package/dist/esm/src/user-modules/tag.js.map +1 -1
  84. package/dist/esm/src/wechaty/wechaty-base.d.ts +7 -7
  85. package/dist/esm/src/wechaty-mixins/gerror-mixin.d.ts +1 -1
  86. package/dist/esm/src/wechaty-mixins/io-mixin.d.ts +2 -2
  87. package/dist/esm/src/wechaty-mixins/login-mixin.d.ts +5 -5
  88. package/dist/esm/src/wechaty-mixins/misc-mixin.d.ts +5 -5
  89. package/dist/esm/src/wechaty-mixins/plugin-mixin.d.ts +6 -6
  90. package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts +4 -4
  91. package/dist/esm/src/wechaty-mixins/puppet-mixin.d.ts.map +1 -1
  92. package/dist/esm/src/wechaty-mixins/puppet-mixin.js +153 -14
  93. package/dist/esm/src/wechaty-mixins/puppet-mixin.js.map +1 -1
  94. package/dist/esm/src/wechaty-mixins/wechatify-user-module-mixin.d.ts +1 -1
  95. package/package.json +3 -3
  96. package/src/config.ts +3 -0
  97. package/src/package-json.ts +4 -4
  98. package/src/pure-functions/update.ts +20 -8
  99. package/src/schemas/contact-events.ts +22 -3
  100. package/src/schemas/room-events.ts +4 -0
  101. package/src/schemas/update.ts +42 -13
  102. package/src/schemas/wechaty-events.ts +77 -43
  103. package/src/user-modules/contact.ts +7 -10
  104. package/src/user-modules/tag-group.ts +135 -53
  105. package/src/user-modules/tag.ts +124 -57
  106. package/src/wechaty-mixins/puppet-mixin.ts +171 -15
@@ -1,53 +1,100 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.TagImpl = void 0;
27
+ /**
28
+ * Wechaty Chatbot SDK - https://github.com/wechaty/wechaty
29
+ *
30
+ * @copyright 2016 Huan LI (李卓桓) <https://github.com/huan>, and
31
+ * Wechaty Contributors <https://github.com/wechaty>.
32
+ *
33
+ * Licensed under the Apache License, Version 2.0 (the "License");
34
+ * you may not use this file except in compliance with the License.
35
+ * You may obtain a copy of the License at
36
+ *
37
+ * http://www.apache.org/licenses/LICENSE-2.0
38
+ *
39
+ * Unless required by applicable law or agreed to in writing, software
40
+ * distributed under the License is distributed on an "AS IS" BASIS,
41
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
+ * See the License for the specific language governing permissions and
43
+ * limitations under the License.
44
+ *
45
+ */
46
+ const PUPPET = __importStar(require("@juzi/wechaty-puppet"));
47
+ const helpers_1 = require("@juzi/wechaty-puppet/helpers");
48
+ const rx_queue_1 = require("rx-queue");
4
49
  const config_js_1 = require("../config.js");
50
+ const poolify_js_1 = require("../user-mixins/poolify.js");
5
51
  const validation_js_1 = require("../user-mixins/validation.js");
6
52
  const wechatify_js_1 = require("../user-mixins/wechatify.js");
7
- class TagMixin extends (0, wechatify_js_1.wechatifyMixinBase)() {
8
- payload;
53
+ const MixinBase = (0, wechatify_js_1.wechatifyMixin)((0, poolify_js_1.poolifyMixin)(Object)());
54
+ class TagMixin extends MixinBase {
55
+ key;
9
56
  /**
10
57
  *
11
- * Create
58
+ * Instance properties
59
+ * @ignore
12
60
  *
13
61
  */
14
- static create(payload) {
15
- config_js_1.log.verbose('Tag', 'create()');
16
- return new this(payload);
17
- }
62
+ payload;
63
+ id;
64
+ groupId;
18
65
  /**
19
66
  * @hideconstructor
20
67
  */
21
- constructor(payload) {
68
+ constructor(key) {
22
69
  super();
23
- this.payload = payload;
70
+ this.key = key;
71
+ this.groupId = this.key.split(config_js_1.FOUR_PER_EM_SPACE)[0];
72
+ this.id = this.key.split(config_js_1.FOUR_PER_EM_SPACE)[1];
24
73
  config_js_1.log.silly('Tag', 'constructor()');
25
74
  }
26
- id() {
27
- return this.payload.id;
28
- }
29
75
  type() {
30
- return this.payload.type;
31
- }
32
- groupId() {
33
- return this.payload.groupId || '';
76
+ return (this.payload && this.payload.type) || PUPPET.types.Tag.Personal;
34
77
  }
35
78
  name() {
36
- return this.payload.name;
79
+ return (this.payload && this.payload.name) || '';
37
80
  }
38
- group() {
39
- return this.wechaty.TagGroup.load(this.groupId());
81
+ async group() {
82
+ return this.groupId ? this.wechaty.TagGroup.find(this.groupId) : undefined;
40
83
  }
41
- static pool = [];
42
84
  static async list(forceSync = false) {
43
85
  config_js_1.log.verbose('Tag', 'list(%s)', forceSync);
44
- if (this.pool.length > 0 && !forceSync) {
45
- return this.pool;
46
- }
47
86
  try {
48
- const payloads = await this.wechaty.puppet.tagTagList();
49
- this.pool = payloads.map(payload => new this(payload));
50
- return this.pool;
87
+ const tagIdentifierList = await this.wechaty.puppet.tagTagList();
88
+ const identifierToTag = async (identifier) => this.find(identifier).catch(e => this.wechaty.emitError(e));
89
+ const CONCURRENCY = 17;
90
+ const tagIterator = (0, rx_queue_1.concurrencyExecuter)(CONCURRENCY)(identifierToTag)(tagIdentifierList);
91
+ const tagList = [];
92
+ for await (const tag of tagIterator) {
93
+ if (tag) {
94
+ tagList.push(tag);
95
+ }
96
+ }
97
+ return tagList;
51
98
  }
52
99
  catch (e) {
53
100
  this.wechaty.emitError(e);
@@ -55,29 +102,74 @@ class TagMixin extends (0, wechatify_js_1.wechatifyMixinBase)() {
55
102
  return [];
56
103
  }
57
104
  }
58
- static async sync() {
59
- config_js_1.log.verbose('Tag', 'sync()');
60
- await this.list(true);
105
+ static async find(identifier) {
106
+ config_js_1.log.silly('Tag', 'find(%s)', JSON.stringify(identifier));
107
+ const tag = this.wechaty.Tag.load((0, helpers_1.getTagKey)(identifier));
108
+ try {
109
+ await tag.ready();
110
+ }
111
+ catch (e) {
112
+ this.wechaty.emitError(e);
113
+ return undefined;
114
+ }
115
+ return tag;
61
116
  }
62
- static load(tag) {
63
- config_js_1.log.verbose('TagGroup', 'load(%s)', tag);
64
- for (const item of this.pool) {
65
- if (item.id() === tag.id && (item.groupId() === tag.groupId || (!item.groupId() && !tag.groupId))) {
66
- return item;
67
- }
117
+ /**
118
+ * Force reload data for Tag, Sync data from low-level API again.
119
+ *
120
+ * @returns {Promise<this>}
121
+ * @example
122
+ * await tag.sync()
123
+ */
124
+ async sync() {
125
+ await this.wechaty.puppet.tagPayloadDirty((0, helpers_1.getTagKey)({
126
+ id: this.id,
127
+ groupId: this.groupId,
128
+ }));
129
+ await this.ready(true);
130
+ }
131
+ /**
132
+ * @ignore
133
+ */
134
+ isReady() {
135
+ return !!(this.payload && this.payload.name);
136
+ }
137
+ /**
138
+ * `ready()` is For FrameWork ONLY!
139
+ *
140
+ * Please not to use `ready()` at the user land.
141
+ * If you want to sync data, use `sync()` instead.
142
+ *
143
+ * @ignore
144
+ */
145
+ async ready(forceSync = false) {
146
+ config_js_1.log.silly('Tag', 'ready() @ %s with Tag key="%s"', this.wechaty.puppet, this.key);
147
+ if (!forceSync && this.isReady()) { // already ready
148
+ config_js_1.log.silly('Tag', 'ready() isReady() true');
149
+ return;
150
+ }
151
+ try {
152
+ this.payload = await this.wechaty.puppet.tagPayload({
153
+ id: this.id,
154
+ groupId: this.groupId,
155
+ });
156
+ }
157
+ catch (e) {
158
+ this.wechaty.emitError(e);
159
+ config_js_1.log.verbose('Tag', 'ready() this.wechaty.puppet.tagPayload(%s) exception: %s', this.id, e.message);
160
+ throw e;
68
161
  }
69
- return undefined;
70
162
  }
71
163
  async contactList() {
72
164
  config_js_1.log.verbose('Tag', 'contactList() for tag : %s', this);
73
- const tag = { id: this.id(), groupId: this.groupId() };
165
+ const tag = { id: this.id, groupId: this.groupId };
74
166
  const contactIds = await this.wechaty.puppet.tagTagContactList(tag);
75
167
  const contactPromises = contactIds.map(id => this.wechaty.Contact.find({ id }));
76
168
  return Promise.all(contactPromises);
77
169
  }
78
170
  async tag(contacts) {
79
171
  config_js_1.log.verbose('Tag', 'tag(%s) for tag : %s', contacts, this);
80
- const tag = { id: this.id(), groupId: this.groupId() };
172
+ const tag = { id: this.id, groupId: this.groupId };
81
173
  let contactIds;
82
174
  if (Array.isArray(contacts)) {
83
175
  contactIds = contacts.map(c => c.id);
@@ -90,24 +182,22 @@ class TagMixin extends (0, wechatify_js_1.wechatifyMixinBase)() {
90
182
  static async createTag(name, tagGroup) {
91
183
  config_js_1.log.verbose('Tag', 'createTag(%s, %s)', tagGroup, name);
92
184
  try {
93
- const payload = await this.wechaty.puppet.tagTagAdd(name, tagGroup?.name());
94
- if (payload) {
95
- const newTag = new this(payload);
96
- this.pool.push(newTag);
185
+ const tagIdentifier = await this.wechaty.puppet.tagTagAdd(name, tagGroup?.name());
186
+ if (tagIdentifier) {
187
+ const newTag = await this.find(tagIdentifier);
97
188
  return newTag;
98
189
  }
99
190
  }
100
191
  catch (e) {
101
192
  this.wechaty.emitError(e);
102
- config_js_1.log.error('Contact', 'createTag() exception: %s', e.message);
193
+ config_js_1.log.error('Tag', 'createTag() exception: %s', e.message);
103
194
  }
104
195
  }
105
196
  static async deleteTag(tagInstance) {
106
197
  config_js_1.log.verbose('Tag', 'deleteTag(%s, %s)', tagInstance);
107
- const tag = { id: tagInstance.id(), groupId: tagInstance.groupId() };
198
+ const tagIdentifier = { id: tagInstance.id, groupId: tagInstance.groupId };
108
199
  try {
109
- await this.wechaty.puppet.tagTagDelete(tag);
110
- this.pool.splice(this.pool.indexOf(tagInstance), 1);
200
+ await this.wechaty.puppet.tagTagDelete(tagIdentifier);
111
201
  }
112
202
  catch (e) {
113
203
  this.wechaty.emitError(e);
@@ -115,10 +205,12 @@ class TagMixin extends (0, wechatify_js_1.wechatifyMixinBase)() {
115
205
  }
116
206
  }
117
207
  toString() {
118
- return `<Tag#${this.name() || this.id()}>`;
208
+ return `<Tag#${this.name() || this.id}>`;
119
209
  }
120
210
  }
121
- class TagImpl extends (0, validation_js_1.validationMixin)(TagMixin)() {
211
+ class TagImplBase extends (0, validation_js_1.validationMixin)(TagMixin)() {
212
+ }
213
+ class TagImpl extends (0, validation_js_1.validationMixin)(TagImplBase)() {
122
214
  }
123
215
  exports.TagImpl = TagImpl;
124
216
  //# sourceMappingURL=tag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../../src/user-modules/tag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../../src/user-modules/tag.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
26
26
  init: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
27
27
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
28
28
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
29
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
29
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
30
30
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
31
31
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
32
32
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -127,7 +127,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
127
127
  init: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
128
128
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
129
129
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
130
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
130
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
131
131
  addListener<E_11 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_11, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_11]): any;
132
132
  once<E_12 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_12, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_12]): any;
133
133
  prependListener<E_13 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_13, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_13]): any;
@@ -225,7 +225,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
225
225
  __options: WechatyOptions;
226
226
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
227
227
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
228
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
228
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
229
229
  addListener<E_18 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_18, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_18]): any;
230
230
  once<E_19 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_19, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_19]): any;
231
231
  prependListener<E_20 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_20, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_20]): any;
@@ -375,7 +375,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
375
375
  __memory?: import("memory-card").MemoryCard | undefined;
376
376
  readonly memory: import("memory-card").MemoryCard;
377
377
  __options: WechatyOptions;
378
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
378
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
379
379
  addListener<E_25 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_25, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_25]): any;
380
380
  once<E_26 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_26, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_26]): any;
381
381
  prependListener<E_27 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_27, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_27]): any;
@@ -410,7 +410,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
410
410
  readonly memory: import("memory-card").MemoryCard;
411
411
  __options: WechatyOptions;
412
412
  init(): Promise<void>;
413
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
413
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
414
414
  addListener<E_32 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_32, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_32]): any;
415
415
  once<E_33 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_33, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_33]): any;
416
416
  prependListener<E_34 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_34, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_34]): any;
@@ -492,7 +492,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
492
492
  __options: WechatyOptions;
493
493
  start(): Promise<void>;
494
494
  stop(): Promise<void>;
495
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
495
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
496
496
  addListener<E_39 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_39, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_39]): any;
497
497
  once<E_40 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_40, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_40]): any;
498
498
  prependListener<E_41 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_41, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_41]): any;
@@ -522,7 +522,7 @@ declare const mixinBase: (abstract new (...args: any[]) => {
522
522
  init(): Promise<void>;
523
523
  start(): Promise<void>;
524
524
  stop(): Promise<void>;
525
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
525
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
526
526
  addListener<E_46 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_46, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_46]): any;
527
527
  once<E_47 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_47, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_47]): any;
528
528
  prependListener<E_48 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_48, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_48]): any;
@@ -27,7 +27,7 @@ declare const gErrorMixin: <MixinBase extends typeof WechatySkeleton>(mixinBase:
27
27
  init(): Promise<void>;
28
28
  start(): Promise<void>;
29
29
  stop(): Promise<void>;
30
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
30
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
31
31
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
32
32
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
33
33
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -18,7 +18,7 @@ declare const ioMixin: <MixinBase extends typeof WechatySkeleton & ((abstract ne
18
18
  init(): Promise<void>;
19
19
  start(): Promise<void>;
20
20
  stop(): Promise<void>;
21
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
21
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
22
22
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
23
23
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
24
24
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -47,7 +47,7 @@ declare const ioMixin: <MixinBase extends typeof WechatySkeleton & ((abstract ne
47
47
  readonly memory: import("memory-card").MemoryCard;
48
48
  __options: WechatyOptions;
49
49
  init(): Promise<void>;
50
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
50
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
51
51
  addListener<E_10 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_10, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_10]): any;
52
52
  once<E_11 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_11, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_11]): any;
53
53
  prependListener<E_12 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_12, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_12]): any;
@@ -45,7 +45,7 @@ declare const loginMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
45
45
  __memory?: import("memory-card").MemoryCard | undefined;
46
46
  readonly memory: import("memory-card").MemoryCard;
47
47
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
48
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
48
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
49
49
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
50
50
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
51
51
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -107,7 +107,7 @@ declare const loginMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
107
107
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
108
108
  start(): Promise<void>;
109
109
  stop(): Promise<void>;
110
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
110
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
111
111
  addListener<E_11 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_11, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_11]): any;
112
112
  once<E_12 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_12, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_12]): any;
113
113
  prependListener<E_13 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_13, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_13]): any;
@@ -137,7 +137,7 @@ declare const loginMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
137
137
  init(): Promise<void>;
138
138
  start(): Promise<void>;
139
139
  stop(): Promise<void>;
140
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
140
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
141
141
  addListener<E_18 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_18, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_18]): any;
142
142
  once<E_19 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_19, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_19]): any;
143
143
  prependListener<E_20 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_20, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_20]): any;
@@ -166,7 +166,7 @@ declare const loginMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
166
166
  readonly memory: import("memory-card").MemoryCard;
167
167
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
168
168
  init(): Promise<void>;
169
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
169
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
170
170
  addListener<E_25 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_25, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_25]): any;
171
171
  once<E_26 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_26, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_26]): any;
172
172
  prependListener<E_27 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_27, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_27]): any;
@@ -235,7 +235,7 @@ declare const loginMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
235
235
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
236
236
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
237
237
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
238
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
238
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
239
239
  addListener<E_32 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_32, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_32]): any;
240
240
  once<E_33 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_33, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_33]): any;
241
241
  prependListener<E_34 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_34, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_34]): any;
@@ -44,7 +44,7 @@ declare const miscMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
44
44
  __memory?: import("memory-card").MemoryCard | undefined;
45
45
  readonly memory: import("memory-card").MemoryCard;
46
46
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
47
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
47
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
48
48
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
49
49
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
50
50
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -108,7 +108,7 @@ declare const miscMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
108
108
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
109
109
  start(): Promise<void>;
110
110
  stop(): Promise<void>;
111
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
111
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
112
112
  addListener<E_11 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_11, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_11]): any;
113
113
  once<E_12 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_12, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_12]): any;
114
114
  prependListener<E_13 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_13, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_13]): any;
@@ -140,7 +140,7 @@ declare const miscMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
140
140
  init(): Promise<void>;
141
141
  start(): Promise<void>;
142
142
  stop(): Promise<void>;
143
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
143
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
144
144
  addListener<E_18 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_18, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_18]): any;
145
145
  once<E_19 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_19, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_19]): any;
146
146
  prependListener<E_20 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_20, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_20]): any;
@@ -171,7 +171,7 @@ declare const miscMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
171
171
  readonly memory: import("memory-card").MemoryCard;
172
172
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
173
173
  init(): Promise<void>;
174
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
174
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
175
175
  addListener<E_25 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_25, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_25]): any;
176
176
  once<E_26 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_26, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_26]): any;
177
177
  prependListener<E_27 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_27, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_27]): any;
@@ -229,7 +229,7 @@ declare const miscMixin: <MixinBase extends typeof WechatySkeleton & ((abstract
229
229
  init: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
230
230
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
231
231
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
232
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
232
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
233
233
  addListener<E_32 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_32, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_32]): any;
234
234
  once<E_33 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_33, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_33]): any;
235
235
  prependListener<E_34 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_34, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_34]): any;
@@ -15,7 +15,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
15
15
  init(): Promise<void>;
16
16
  start(): Promise<void>;
17
17
  stop(): Promise<void>;
18
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
18
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
19
19
  addListener<E extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E]): any;
20
20
  once<E_1 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_1, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_1]): any;
21
21
  prependListener<E_2 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_2, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_2]): any;
@@ -65,7 +65,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
65
65
  init: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
66
66
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
67
67
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
68
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
68
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
69
69
  addListener<E_10 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_10, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_10]): any;
70
70
  once<E_11 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_11, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_11]): any;
71
71
  prependListener<E_12 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_12, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_12]): any;
@@ -169,7 +169,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
169
169
  __memory?: import("memory-card").MemoryCard | undefined;
170
170
  readonly memory: import("memory-card").MemoryCard;
171
171
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
172
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
172
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
173
173
  addListener<E_18 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_18, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_18]): any;
174
174
  once<E_19 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_19, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_19]): any;
175
175
  prependListener<E_20 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_20, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_20]): any;
@@ -231,7 +231,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
231
231
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
232
232
  start(): Promise<void>;
233
233
  stop(): Promise<void>;
234
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
234
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
235
235
  addListener<E_25 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_25, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_25]): any;
236
236
  once<E_26 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_26, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_26]): any;
237
237
  prependListener<E_27 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_27, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_27]): any;
@@ -261,7 +261,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
261
261
  readonly memory: import("memory-card").MemoryCard;
262
262
  __options: import("../schemas/wechaty-options.js").WechatyOptions;
263
263
  init(): Promise<void>;
264
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
264
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
265
265
  addListener<E_32 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_32, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_32]): any;
266
266
  once<E_33 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_33, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_33]): any;
267
267
  prependListener<E_34 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_34, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_34]): any;
@@ -310,7 +310,7 @@ declare const pluginMixin: <MixinBase extends typeof WechatySkeleton & ((abstrac
310
310
  init: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
311
311
  start: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
312
312
  stop: (() => Promise<void>) & (() => Promise<void>) & (() => Promise<void>);
313
- on(event: "error" | "ready" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update", listener: (...args: any[]) => any): any;
313
+ on(event: "error" | "ready" | "tag" | "login" | "start" | "stop" | "logout" | "room-invite" | "room-join" | "room-leave" | "room-topic" | "dong" | "friendship" | "heartbeat" | "message" | "post" | "puppet" | "scan" | "update" | "contact-tag-add" | "contact-tag-remove" | "contact-name" | "contact-alias" | "contact-phone" | "contact-description" | "room-owner", listener: (...args: any[]) => any): any;
314
314
  addListener<E_39 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_39, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_39]): any;
315
315
  once<E_40 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_40, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_40]): any;
316
316
  prependListener<E_41 extends keyof import("../schemas/wechaty-events.js").WechatyEventListeners>(event: E_41, listener: import("../schemas/wechaty-events.js").WechatyEventListeners[E_41]): any;