@aseppxyzz12/baileys 1.1.8

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 (185) hide show
  1. package/LICENSE +25 -0
  2. package/README.md +2579 -0
  3. package/WAProto/AICommon/AICommon.js +19396 -0
  4. package/WAProto/AICommon/AICommon.proto +820 -0
  5. package/WAProto/Adv/Adv.js +1137 -0
  6. package/WAProto/Adv/Adv.proto +42 -0
  7. package/WAProto/BotMetadata/BotMetadata.js +8975 -0
  8. package/WAProto/BotMetadata/BotMetadata.proto +484 -0
  9. package/WAProto/Cert/Cert.js +893 -0
  10. package/WAProto/Cert/Cert.proto +30 -0
  11. package/WAProto/ChatLockSettings/ChatLockSettings.js +673 -0
  12. package/WAProto/ChatLockSettings/ChatLockSettings.proto +9 -0
  13. package/WAProto/CompanionReg/CompanionReg.js +2457 -0
  14. package/WAProto/CompanionReg/CompanionReg.proto +103 -0
  15. package/WAProto/DeviceCapabilities/DeviceCapabilities.js +846 -0
  16. package/WAProto/DeviceCapabilities/DeviceCapabilities.proto +38 -0
  17. package/WAProto/E2E/E2E.js +78728 -0
  18. package/WAProto/E2E/E2E.proto +1970 -0
  19. package/WAProto/Ephemeral/Ephemeral.js +143 -0
  20. package/WAProto/Ephemeral/Ephemeral.proto +7 -0
  21. package/WAProto/HistorySync/HistorySync.js +95931 -0
  22. package/WAProto/HistorySync/HistorySync.proto +229 -0
  23. package/WAProto/LidMigrationSyncPayload/LidMigrationSyncPayload.js +414 -0
  24. package/WAProto/LidMigrationSyncPayload/LidMigrationSyncPayload.proto +13 -0
  25. package/WAProto/MdStorageChatRowOpaqueData/MdStorageChatRowOpaqueData.js +980 -0
  26. package/WAProto/MdStorageChatRowOpaqueData/MdStorageChatRowOpaqueData.proto +38 -0
  27. package/WAProto/MdStorageMsgRowOpaqueData/MdStorageMsgRowOpaqueData.js +81185 -0
  28. package/WAProto/MdStorageMsgRowOpaqueData/MdStorageMsgRowOpaqueData.proto +88 -0
  29. package/WAProto/MmsRetry/MmsRetry.js +310 -0
  30. package/WAProto/MmsRetry/MmsRetry.proto +19 -0
  31. package/WAProto/Protocol/Protocol.js +399 -0
  32. package/WAProto/Protocol/Protocol.proto +22 -0
  33. package/WAProto/Reporting/Reporting.js +535 -0
  34. package/WAProto/Reporting/Reporting.proto +22 -0
  35. package/WAProto/ServerSync/ServerSync.js +1830 -0
  36. package/WAProto/ServerSync/ServerSync.proto +70 -0
  37. package/WAProto/SignalLocalStorageProtocol/SignalLocalStorageProtocol.js +3267 -0
  38. package/WAProto/SignalLocalStorageProtocol/SignalLocalStorageProtocol.proto +95 -0
  39. package/WAProto/SignalWhisperTextProtocol/SignalWhisperTextProtocol.js +1140 -0
  40. package/WAProto/SignalWhisperTextProtocol/SignalWhisperTextProtocol.proto +44 -0
  41. package/WAProto/StatusAttributions/StatusAttributions.js +1604 -0
  42. package/WAProto/StatusAttributions/StatusAttributions.proto +89 -0
  43. package/WAProto/SyncAction/SyncAction.js +17424 -0
  44. package/WAProto/SyncAction/SyncAction.proto +663 -0
  45. package/WAProto/UserPassword/UserPassword.js +544 -0
  46. package/WAProto/UserPassword/UserPassword.proto +28 -0
  47. package/WAProto/VnameCert/VnameCert.js +1466 -0
  48. package/WAProto/VnameCert/VnameCert.proto +65 -0
  49. package/WAProto/Wa6/Wa6.js +4601 -0
  50. package/WAProto/Wa6/Wa6.proto +241 -0
  51. package/WAProto/Web/Web.js +90819 -0
  52. package/WAProto/Web/Web.proto +605 -0
  53. package/WAProto/index.js +30 -0
  54. package/engine-requirements.js +9 -0
  55. package/lib/Defaults/baileys-version.json +3 -0
  56. package/lib/Defaults/connection.js +39 -0
  57. package/lib/Defaults/constants.js +50 -0
  58. package/lib/Defaults/history.js +13 -0
  59. package/lib/Defaults/index.js +36 -0
  60. package/lib/Defaults/media.js +43 -0
  61. package/lib/Defaults/phonenumber-mcc.json +223 -0
  62. package/lib/Defaults/prefix.js +12 -0
  63. package/lib/Function/Download/tiktok.js +19 -0
  64. package/lib/Function/Tools/bypass.js +19 -0
  65. package/lib/Function/index.js +13 -0
  66. package/lib/Signal/Group/ciphertext-message.js +14 -0
  67. package/lib/Signal/Group/group-session-builder.js +46 -0
  68. package/lib/Signal/Group/group_cipher.js +104 -0
  69. package/lib/Signal/Group/index.js +42 -0
  70. package/lib/Signal/Group/keyhelper.js +21 -0
  71. package/lib/Signal/Group/queue-job.js +57 -0
  72. package/lib/Signal/Group/sender-chain-key.js +34 -0
  73. package/lib/Signal/Group/sender-key-distribution-message.js +66 -0
  74. package/lib/Signal/Group/sender-key-message.js +78 -0
  75. package/lib/Signal/Group/sender-key-name.js +49 -0
  76. package/lib/Signal/Group/sender-key-record.js +45 -0
  77. package/lib/Signal/Group/sender-key-state.js +100 -0
  78. package/lib/Signal/Group/sender-message-key.js +28 -0
  79. package/lib/Signal/libsignal.js +364 -0
  80. package/lib/Signal/lid-mapping.js +164 -0
  81. package/lib/Socket/Client/abstract-socket-client.js +13 -0
  82. package/lib/Socket/Client/index.js +31 -0
  83. package/lib/Socket/Client/mobile-socket-client.js +65 -0
  84. package/lib/Socket/Client/types.js +12 -0
  85. package/lib/Socket/Client/web-socket-client.js +62 -0
  86. package/lib/Socket/Client/websocket.js +67 -0
  87. package/lib/Socket/business.js +291 -0
  88. package/lib/Socket/chats.js +874 -0
  89. package/lib/Socket/community.js +454 -0
  90. package/lib/Socket/dugong.js +658 -0
  91. package/lib/Socket/groups.js +357 -0
  92. package/lib/Socket/index.js +13 -0
  93. package/lib/Socket/messages-recv.js +1509 -0
  94. package/lib/Socket/messages-send.js +1505 -0
  95. package/lib/Socket/mex.js +54 -0
  96. package/lib/Socket/newsletter.js +171 -0
  97. package/lib/Socket/registration.js +167 -0
  98. package/lib/Socket/rich-content.js +279 -0
  99. package/lib/Socket/socket.js +905 -0
  100. package/lib/Socket/username.js +157 -0
  101. package/lib/Socket/usync.js +70 -0
  102. package/lib/Store/index.js +37 -0
  103. package/lib/Store/keyed-db.js +114 -0
  104. package/lib/Store/make-cache-manager-store.js +77 -0
  105. package/lib/Store/make-in-memory-store.js +423 -0
  106. package/lib/Store/make-ordered-dictionary.js +78 -0
  107. package/lib/Store/object-repository.js +26 -0
  108. package/lib/Types/Auth.js +2 -0
  109. package/lib/Types/Bussines.js +2 -0
  110. package/lib/Types/Call.js +2 -0
  111. package/lib/Types/Chat.js +10 -0
  112. package/lib/Types/Contact.js +2 -0
  113. package/lib/Types/Events.js +2 -0
  114. package/lib/Types/GroupMetadata.js +2 -0
  115. package/lib/Types/Label.js +25 -0
  116. package/lib/Types/LabelAssociation.js +4 -0
  117. package/lib/Types/Message.js +11 -0
  118. package/lib/Types/Mex.js +40 -0
  119. package/lib/Types/MexUpdates.js +15 -0
  120. package/lib/Types/Newsletter.js +32 -0
  121. package/lib/Types/Product.js +2 -0
  122. package/lib/Types/Signal.js +2 -0
  123. package/lib/Types/Socket.js +2 -0
  124. package/lib/Types/State.js +9 -0
  125. package/lib/Types/USync.js +2 -0
  126. package/lib/Types/index.js +60 -0
  127. package/lib/Utils/auth-utils.js +256 -0
  128. package/lib/Utils/baileys-event-stream.js +63 -0
  129. package/lib/Utils/bot-toolkit.js +455 -0
  130. package/lib/Utils/browser-utils.js +29 -0
  131. package/lib/Utils/business.js +233 -0
  132. package/lib/Utils/chat-utils.js +904 -0
  133. package/lib/Utils/companion-reg-client-utils.js +41 -0
  134. package/lib/Utils/crypto.js +144 -0
  135. package/lib/Utils/decode-wa-message.js +305 -0
  136. package/lib/Utils/event-buffer.js +555 -0
  137. package/lib/Utils/generics.js +411 -0
  138. package/lib/Utils/history.js +100 -0
  139. package/lib/Utils/identity-change-handler.js +53 -0
  140. package/lib/Utils/index.js +57 -0
  141. package/lib/Utils/link-preview.js +76 -0
  142. package/lib/Utils/logger.js +4 -0
  143. package/lib/Utils/lt-hash.js +45 -0
  144. package/lib/Utils/make-mutex.js +33 -0
  145. package/lib/Utils/message-composer.js +289 -0
  146. package/lib/Utils/message-retry-manager.js +134 -0
  147. package/lib/Utils/messages-media.js +806 -0
  148. package/lib/Utils/messages.js +1908 -0
  149. package/lib/Utils/noise-handler.js +157 -0
  150. package/lib/Utils/offline-node-processor.js +42 -0
  151. package/lib/Utils/pre-key-manager.js +86 -0
  152. package/lib/Utils/process-message.js +814 -0
  153. package/lib/Utils/reporting-utils.js +264 -0
  154. package/lib/Utils/signal.js +183 -0
  155. package/lib/Utils/stanza-ack.js +36 -0
  156. package/lib/Utils/sync-action-utils.js +52 -0
  157. package/lib/Utils/tc-token-utils.js +167 -0
  158. package/lib/Utils/use-multi-file-auth-state.js +104 -0
  159. package/lib/Utils/validate-connection.js +229 -0
  160. package/lib/Utils/vialeys-event-stream.js +41 -0
  161. package/lib/WABinary/constants.js +1308 -0
  162. package/lib/WABinary/decode.js +233 -0
  163. package/lib/WABinary/encode.js +212 -0
  164. package/lib/WABinary/generic-utils.js +124 -0
  165. package/lib/WABinary/index.js +36 -0
  166. package/lib/WABinary/jid-utils.js +101 -0
  167. package/lib/WABinary/types.js +2 -0
  168. package/lib/WAM/BinaryInfo.js +12 -0
  169. package/lib/WAM/constants.js +20491 -0
  170. package/lib/WAM/encode.js +148 -0
  171. package/lib/WAM/index.js +34 -0
  172. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +62 -0
  173. package/lib/WAUSync/Protocols/USyncContactProtocol.js +38 -0
  174. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +50 -0
  175. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +25 -0
  176. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +24 -0
  177. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +32 -0
  178. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +24 -0
  179. package/lib/WAUSync/Protocols/index.js +38 -0
  180. package/lib/WAUSync/USyncQuery.js +97 -0
  181. package/lib/WAUSync/USyncUser.js +33 -0
  182. package/lib/WAUSync/index.js +34 -0
  183. package/lib/index.js +113 -0
  184. package/lib/messages-send.js +1496 -0
  185. package/package.json +100 -0
@@ -0,0 +1,1140 @@
1
+ "use strict";
2
+ var $protobuf = require("protobufjs/minimal");
3
+ var $Reader = $protobuf.Reader,
4
+ $Writer = $protobuf.Writer,
5
+ $util = $protobuf.util;
6
+ var $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {});
7
+ $root.SignalWhisperTextProtocol = (function () {
8
+ var SignalWhisperTextProtocol = {};
9
+ SignalWhisperTextProtocol.DeviceConsistencyCodeMessage = (function () {
10
+ function DeviceConsistencyCodeMessage(properties) {
11
+ if (properties)
12
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
14
+ }
15
+ DeviceConsistencyCodeMessage.prototype.generation = null;
16
+ DeviceConsistencyCodeMessage.prototype.signature = null;
17
+ var $oneOfFields;
18
+ Object.defineProperty(DeviceConsistencyCodeMessage.prototype, "_generation", {
19
+ get: $util.oneOfGetter(($oneOfFields = ["generation"])),
20
+ set: $util.oneOfSetter($oneOfFields),
21
+ });
22
+ Object.defineProperty(DeviceConsistencyCodeMessage.prototype, "_signature", {
23
+ get: $util.oneOfGetter(($oneOfFields = ["signature"])),
24
+ set: $util.oneOfSetter($oneOfFields),
25
+ });
26
+ DeviceConsistencyCodeMessage.create = function create(properties) {
27
+ return new DeviceConsistencyCodeMessage(properties);
28
+ };
29
+ DeviceConsistencyCodeMessage.encode = function encode(message, writer) {
30
+ if (!writer) writer = $Writer.create();
31
+ if (message.generation != null && Object.hasOwnProperty.call(message, "generation"))
32
+ writer.uint32(8).uint32(message.generation);
33
+ if (message.signature != null && Object.hasOwnProperty.call(message, "signature"))
34
+ writer.uint32(18).bytes(message.signature);
35
+ return writer;
36
+ };
37
+ DeviceConsistencyCodeMessage.encodeDelimited = function encodeDelimited(message, writer) {
38
+ return this.encode(message, writer).ldelim();
39
+ };
40
+ DeviceConsistencyCodeMessage.decode = function decode(reader, length, error) {
41
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
42
+ var end = length === undefined ? reader.len : reader.pos + length,
43
+ message = new $root.SignalWhisperTextProtocol.DeviceConsistencyCodeMessage();
44
+ while (reader.pos < end) {
45
+ var tag = reader.uint32();
46
+ if (tag === error) break;
47
+ switch (tag >>> 3) {
48
+ case 1: {
49
+ message.generation = reader.uint32();
50
+ break;
51
+ }
52
+ case 2: {
53
+ message.signature = reader.bytes();
54
+ break;
55
+ }
56
+ default:
57
+ reader.skipType(tag & 7);
58
+ break;
59
+ }
60
+ }
61
+ return message;
62
+ };
63
+ DeviceConsistencyCodeMessage.decodeDelimited = function decodeDelimited(reader) {
64
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
65
+ return this.decode(reader, reader.uint32());
66
+ };
67
+ DeviceConsistencyCodeMessage.verify = function verify(message) {
68
+ if (typeof message !== "object" || message === null) return "object expected";
69
+ var properties = {};
70
+ if (message.generation != null && message.hasOwnProperty("generation")) {
71
+ properties._generation = 1;
72
+ if (!$util.isInteger(message.generation)) return "generation: integer expected";
73
+ }
74
+ if (message.signature != null && message.hasOwnProperty("signature")) {
75
+ properties._signature = 1;
76
+ if (
77
+ !(
78
+ (message.signature && typeof message.signature.length === "number") ||
79
+ $util.isString(message.signature)
80
+ )
81
+ )
82
+ return "signature: buffer expected";
83
+ }
84
+ return null;
85
+ };
86
+ DeviceConsistencyCodeMessage.fromObject = function fromObject(object) {
87
+ if (object instanceof $root.SignalWhisperTextProtocol.DeviceConsistencyCodeMessage)
88
+ return object;
89
+ var message = new $root.SignalWhisperTextProtocol.DeviceConsistencyCodeMessage();
90
+ if (object.generation != null) message.generation = object.generation >>> 0;
91
+ if (object.signature != null)
92
+ if (typeof object.signature === "string")
93
+ $util.base64.decode(
94
+ object.signature,
95
+ (message.signature = $util.newBuffer(
96
+ $util.base64.length(object.signature)
97
+ )),
98
+ 0
99
+ );
100
+ else if (object.signature.length >= 0) message.signature = object.signature;
101
+ return message;
102
+ };
103
+ DeviceConsistencyCodeMessage.toObject = function toObject(message, options) {
104
+ if (!options) options = {};
105
+ var object = {};
106
+ if (message.generation != null && message.hasOwnProperty("generation")) {
107
+ object.generation = message.generation;
108
+ if (options.oneofs) object._generation = "generation";
109
+ }
110
+ if (message.signature != null && message.hasOwnProperty("signature")) {
111
+ object.signature =
112
+ options.bytes === String
113
+ ? $util.base64.encode(message.signature, 0, message.signature.length)
114
+ : options.bytes === Array
115
+ ? Array.prototype.slice.call(message.signature)
116
+ : message.signature;
117
+ if (options.oneofs) object._signature = "signature";
118
+ }
119
+ return object;
120
+ };
121
+ DeviceConsistencyCodeMessage.prototype.toJSON = function toJSON() {
122
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
123
+ };
124
+ DeviceConsistencyCodeMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
125
+ if (typeUrlPrefix === undefined) {
126
+ typeUrlPrefix = "type.googleapis.com";
127
+ }
128
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.DeviceConsistencyCodeMessage";
129
+ };
130
+ return DeviceConsistencyCodeMessage;
131
+ })();
132
+ SignalWhisperTextProtocol.SenderKeyDistributionMessage = (function () {
133
+ function SenderKeyDistributionMessage(properties) {
134
+ if (properties)
135
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
136
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
137
+ }
138
+ SenderKeyDistributionMessage.prototype.id = null;
139
+ SenderKeyDistributionMessage.prototype.iteration = null;
140
+ SenderKeyDistributionMessage.prototype.chainKey = null;
141
+ SenderKeyDistributionMessage.prototype.signingKey = null;
142
+ var $oneOfFields;
143
+ Object.defineProperty(SenderKeyDistributionMessage.prototype, "_id", {
144
+ get: $util.oneOfGetter(($oneOfFields = ["id"])),
145
+ set: $util.oneOfSetter($oneOfFields),
146
+ });
147
+ Object.defineProperty(SenderKeyDistributionMessage.prototype, "_iteration", {
148
+ get: $util.oneOfGetter(($oneOfFields = ["iteration"])),
149
+ set: $util.oneOfSetter($oneOfFields),
150
+ });
151
+ Object.defineProperty(SenderKeyDistributionMessage.prototype, "_chainKey", {
152
+ get: $util.oneOfGetter(($oneOfFields = ["chainKey"])),
153
+ set: $util.oneOfSetter($oneOfFields),
154
+ });
155
+ Object.defineProperty(SenderKeyDistributionMessage.prototype, "_signingKey", {
156
+ get: $util.oneOfGetter(($oneOfFields = ["signingKey"])),
157
+ set: $util.oneOfSetter($oneOfFields),
158
+ });
159
+ SenderKeyDistributionMessage.create = function create(properties) {
160
+ return new SenderKeyDistributionMessage(properties);
161
+ };
162
+ SenderKeyDistributionMessage.encode = function encode(message, writer) {
163
+ if (!writer) writer = $Writer.create();
164
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
165
+ writer.uint32(8).uint32(message.id);
166
+ if (message.iteration != null && Object.hasOwnProperty.call(message, "iteration"))
167
+ writer.uint32(16).uint32(message.iteration);
168
+ if (message.chainKey != null && Object.hasOwnProperty.call(message, "chainKey"))
169
+ writer.uint32(26).bytes(message.chainKey);
170
+ if (message.signingKey != null && Object.hasOwnProperty.call(message, "signingKey"))
171
+ writer.uint32(34).bytes(message.signingKey);
172
+ return writer;
173
+ };
174
+ SenderKeyDistributionMessage.encodeDelimited = function encodeDelimited(message, writer) {
175
+ return this.encode(message, writer).ldelim();
176
+ };
177
+ SenderKeyDistributionMessage.decode = function decode(reader, length, error) {
178
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
179
+ var end = length === undefined ? reader.len : reader.pos + length,
180
+ message = new $root.SignalWhisperTextProtocol.SenderKeyDistributionMessage();
181
+ while (reader.pos < end) {
182
+ var tag = reader.uint32();
183
+ if (tag === error) break;
184
+ switch (tag >>> 3) {
185
+ case 1: {
186
+ message.id = reader.uint32();
187
+ break;
188
+ }
189
+ case 2: {
190
+ message.iteration = reader.uint32();
191
+ break;
192
+ }
193
+ case 3: {
194
+ message.chainKey = reader.bytes();
195
+ break;
196
+ }
197
+ case 4: {
198
+ message.signingKey = reader.bytes();
199
+ break;
200
+ }
201
+ default:
202
+ reader.skipType(tag & 7);
203
+ break;
204
+ }
205
+ }
206
+ return message;
207
+ };
208
+ SenderKeyDistributionMessage.decodeDelimited = function decodeDelimited(reader) {
209
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
210
+ return this.decode(reader, reader.uint32());
211
+ };
212
+ SenderKeyDistributionMessage.verify = function verify(message) {
213
+ if (typeof message !== "object" || message === null) return "object expected";
214
+ var properties = {};
215
+ if (message.id != null && message.hasOwnProperty("id")) {
216
+ properties._id = 1;
217
+ if (!$util.isInteger(message.id)) return "id: integer expected";
218
+ }
219
+ if (message.iteration != null && message.hasOwnProperty("iteration")) {
220
+ properties._iteration = 1;
221
+ if (!$util.isInteger(message.iteration)) return "iteration: integer expected";
222
+ }
223
+ if (message.chainKey != null && message.hasOwnProperty("chainKey")) {
224
+ properties._chainKey = 1;
225
+ if (
226
+ !(
227
+ (message.chainKey && typeof message.chainKey.length === "number") ||
228
+ $util.isString(message.chainKey)
229
+ )
230
+ )
231
+ return "chainKey: buffer expected";
232
+ }
233
+ if (message.signingKey != null && message.hasOwnProperty("signingKey")) {
234
+ properties._signingKey = 1;
235
+ if (
236
+ !(
237
+ (message.signingKey && typeof message.signingKey.length === "number") ||
238
+ $util.isString(message.signingKey)
239
+ )
240
+ )
241
+ return "signingKey: buffer expected";
242
+ }
243
+ return null;
244
+ };
245
+ SenderKeyDistributionMessage.fromObject = function fromObject(object) {
246
+ if (object instanceof $root.SignalWhisperTextProtocol.SenderKeyDistributionMessage)
247
+ return object;
248
+ var message = new $root.SignalWhisperTextProtocol.SenderKeyDistributionMessage();
249
+ if (object.id != null) message.id = object.id >>> 0;
250
+ if (object.iteration != null) message.iteration = object.iteration >>> 0;
251
+ if (object.chainKey != null)
252
+ if (typeof object.chainKey === "string")
253
+ $util.base64.decode(
254
+ object.chainKey,
255
+ (message.chainKey = $util.newBuffer($util.base64.length(object.chainKey))),
256
+ 0
257
+ );
258
+ else if (object.chainKey.length >= 0) message.chainKey = object.chainKey;
259
+ if (object.signingKey != null)
260
+ if (typeof object.signingKey === "string")
261
+ $util.base64.decode(
262
+ object.signingKey,
263
+ (message.signingKey = $util.newBuffer(
264
+ $util.base64.length(object.signingKey)
265
+ )),
266
+ 0
267
+ );
268
+ else if (object.signingKey.length >= 0) message.signingKey = object.signingKey;
269
+ return message;
270
+ };
271
+ SenderKeyDistributionMessage.toObject = function toObject(message, options) {
272
+ if (!options) options = {};
273
+ var object = {};
274
+ if (message.id != null && message.hasOwnProperty("id")) {
275
+ object.id = message.id;
276
+ if (options.oneofs) object._id = "id";
277
+ }
278
+ if (message.iteration != null && message.hasOwnProperty("iteration")) {
279
+ object.iteration = message.iteration;
280
+ if (options.oneofs) object._iteration = "iteration";
281
+ }
282
+ if (message.chainKey != null && message.hasOwnProperty("chainKey")) {
283
+ object.chainKey =
284
+ options.bytes === String
285
+ ? $util.base64.encode(message.chainKey, 0, message.chainKey.length)
286
+ : options.bytes === Array
287
+ ? Array.prototype.slice.call(message.chainKey)
288
+ : message.chainKey;
289
+ if (options.oneofs) object._chainKey = "chainKey";
290
+ }
291
+ if (message.signingKey != null && message.hasOwnProperty("signingKey")) {
292
+ object.signingKey =
293
+ options.bytes === String
294
+ ? $util.base64.encode(message.signingKey, 0, message.signingKey.length)
295
+ : options.bytes === Array
296
+ ? Array.prototype.slice.call(message.signingKey)
297
+ : message.signingKey;
298
+ if (options.oneofs) object._signingKey = "signingKey";
299
+ }
300
+ return object;
301
+ };
302
+ SenderKeyDistributionMessage.prototype.toJSON = function toJSON() {
303
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
304
+ };
305
+ SenderKeyDistributionMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
306
+ if (typeUrlPrefix === undefined) {
307
+ typeUrlPrefix = "type.googleapis.com";
308
+ }
309
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.SenderKeyDistributionMessage";
310
+ };
311
+ return SenderKeyDistributionMessage;
312
+ })();
313
+ SignalWhisperTextProtocol.SenderKeyMessage = (function () {
314
+ function SenderKeyMessage(properties) {
315
+ if (properties)
316
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
317
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
318
+ }
319
+ SenderKeyMessage.prototype.id = null;
320
+ SenderKeyMessage.prototype.iteration = null;
321
+ SenderKeyMessage.prototype.ciphertext = null;
322
+ var $oneOfFields;
323
+ Object.defineProperty(SenderKeyMessage.prototype, "_id", {
324
+ get: $util.oneOfGetter(($oneOfFields = ["id"])),
325
+ set: $util.oneOfSetter($oneOfFields),
326
+ });
327
+ Object.defineProperty(SenderKeyMessage.prototype, "_iteration", {
328
+ get: $util.oneOfGetter(($oneOfFields = ["iteration"])),
329
+ set: $util.oneOfSetter($oneOfFields),
330
+ });
331
+ Object.defineProperty(SenderKeyMessage.prototype, "_ciphertext", {
332
+ get: $util.oneOfGetter(($oneOfFields = ["ciphertext"])),
333
+ set: $util.oneOfSetter($oneOfFields),
334
+ });
335
+ SenderKeyMessage.create = function create(properties) {
336
+ return new SenderKeyMessage(properties);
337
+ };
338
+ SenderKeyMessage.encode = function encode(message, writer) {
339
+ if (!writer) writer = $Writer.create();
340
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
341
+ writer.uint32(8).uint32(message.id);
342
+ if (message.iteration != null && Object.hasOwnProperty.call(message, "iteration"))
343
+ writer.uint32(16).uint32(message.iteration);
344
+ if (message.ciphertext != null && Object.hasOwnProperty.call(message, "ciphertext"))
345
+ writer.uint32(26).bytes(message.ciphertext);
346
+ return writer;
347
+ };
348
+ SenderKeyMessage.encodeDelimited = function encodeDelimited(message, writer) {
349
+ return this.encode(message, writer).ldelim();
350
+ };
351
+ SenderKeyMessage.decode = function decode(reader, length, error) {
352
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
353
+ var end = length === undefined ? reader.len : reader.pos + length,
354
+ message = new $root.SignalWhisperTextProtocol.SenderKeyMessage();
355
+ while (reader.pos < end) {
356
+ var tag = reader.uint32();
357
+ if (tag === error) break;
358
+ switch (tag >>> 3) {
359
+ case 1: {
360
+ message.id = reader.uint32();
361
+ break;
362
+ }
363
+ case 2: {
364
+ message.iteration = reader.uint32();
365
+ break;
366
+ }
367
+ case 3: {
368
+ message.ciphertext = reader.bytes();
369
+ break;
370
+ }
371
+ default:
372
+ reader.skipType(tag & 7);
373
+ break;
374
+ }
375
+ }
376
+ return message;
377
+ };
378
+ SenderKeyMessage.decodeDelimited = function decodeDelimited(reader) {
379
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
380
+ return this.decode(reader, reader.uint32());
381
+ };
382
+ SenderKeyMessage.verify = function verify(message) {
383
+ if (typeof message !== "object" || message === null) return "object expected";
384
+ var properties = {};
385
+ if (message.id != null && message.hasOwnProperty("id")) {
386
+ properties._id = 1;
387
+ if (!$util.isInteger(message.id)) return "id: integer expected";
388
+ }
389
+ if (message.iteration != null && message.hasOwnProperty("iteration")) {
390
+ properties._iteration = 1;
391
+ if (!$util.isInteger(message.iteration)) return "iteration: integer expected";
392
+ }
393
+ if (message.ciphertext != null && message.hasOwnProperty("ciphertext")) {
394
+ properties._ciphertext = 1;
395
+ if (
396
+ !(
397
+ (message.ciphertext && typeof message.ciphertext.length === "number") ||
398
+ $util.isString(message.ciphertext)
399
+ )
400
+ )
401
+ return "ciphertext: buffer expected";
402
+ }
403
+ return null;
404
+ };
405
+ SenderKeyMessage.fromObject = function fromObject(object) {
406
+ if (object instanceof $root.SignalWhisperTextProtocol.SenderKeyMessage) return object;
407
+ var message = new $root.SignalWhisperTextProtocol.SenderKeyMessage();
408
+ if (object.id != null) message.id = object.id >>> 0;
409
+ if (object.iteration != null) message.iteration = object.iteration >>> 0;
410
+ if (object.ciphertext != null)
411
+ if (typeof object.ciphertext === "string")
412
+ $util.base64.decode(
413
+ object.ciphertext,
414
+ (message.ciphertext = $util.newBuffer(
415
+ $util.base64.length(object.ciphertext)
416
+ )),
417
+ 0
418
+ );
419
+ else if (object.ciphertext.length >= 0) message.ciphertext = object.ciphertext;
420
+ return message;
421
+ };
422
+ SenderKeyMessage.toObject = function toObject(message, options) {
423
+ if (!options) options = {};
424
+ var object = {};
425
+ if (message.id != null && message.hasOwnProperty("id")) {
426
+ object.id = message.id;
427
+ if (options.oneofs) object._id = "id";
428
+ }
429
+ if (message.iteration != null && message.hasOwnProperty("iteration")) {
430
+ object.iteration = message.iteration;
431
+ if (options.oneofs) object._iteration = "iteration";
432
+ }
433
+ if (message.ciphertext != null && message.hasOwnProperty("ciphertext")) {
434
+ object.ciphertext =
435
+ options.bytes === String
436
+ ? $util.base64.encode(message.ciphertext, 0, message.ciphertext.length)
437
+ : options.bytes === Array
438
+ ? Array.prototype.slice.call(message.ciphertext)
439
+ : message.ciphertext;
440
+ if (options.oneofs) object._ciphertext = "ciphertext";
441
+ }
442
+ return object;
443
+ };
444
+ SenderKeyMessage.prototype.toJSON = function toJSON() {
445
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
446
+ };
447
+ SenderKeyMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
448
+ if (typeUrlPrefix === undefined) {
449
+ typeUrlPrefix = "type.googleapis.com";
450
+ }
451
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.SenderKeyMessage";
452
+ };
453
+ return SenderKeyMessage;
454
+ })();
455
+ SignalWhisperTextProtocol.KeyExchangeMessage = (function () {
456
+ function KeyExchangeMessage(properties) {
457
+ if (properties)
458
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
459
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
460
+ }
461
+ KeyExchangeMessage.prototype.id = null;
462
+ KeyExchangeMessage.prototype.baseKey = null;
463
+ KeyExchangeMessage.prototype.ratchetKey = null;
464
+ KeyExchangeMessage.prototype.identityKey = null;
465
+ KeyExchangeMessage.prototype.baseKeySignature = null;
466
+ var $oneOfFields;
467
+ Object.defineProperty(KeyExchangeMessage.prototype, "_id", {
468
+ get: $util.oneOfGetter(($oneOfFields = ["id"])),
469
+ set: $util.oneOfSetter($oneOfFields),
470
+ });
471
+ Object.defineProperty(KeyExchangeMessage.prototype, "_baseKey", {
472
+ get: $util.oneOfGetter(($oneOfFields = ["baseKey"])),
473
+ set: $util.oneOfSetter($oneOfFields),
474
+ });
475
+ Object.defineProperty(KeyExchangeMessage.prototype, "_ratchetKey", {
476
+ get: $util.oneOfGetter(($oneOfFields = ["ratchetKey"])),
477
+ set: $util.oneOfSetter($oneOfFields),
478
+ });
479
+ Object.defineProperty(KeyExchangeMessage.prototype, "_identityKey", {
480
+ get: $util.oneOfGetter(($oneOfFields = ["identityKey"])),
481
+ set: $util.oneOfSetter($oneOfFields),
482
+ });
483
+ Object.defineProperty(KeyExchangeMessage.prototype, "_baseKeySignature", {
484
+ get: $util.oneOfGetter(($oneOfFields = ["baseKeySignature"])),
485
+ set: $util.oneOfSetter($oneOfFields),
486
+ });
487
+ KeyExchangeMessage.create = function create(properties) {
488
+ return new KeyExchangeMessage(properties);
489
+ };
490
+ KeyExchangeMessage.encode = function encode(message, writer) {
491
+ if (!writer) writer = $Writer.create();
492
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
493
+ writer.uint32(8).uint32(message.id);
494
+ if (message.baseKey != null && Object.hasOwnProperty.call(message, "baseKey"))
495
+ writer.uint32(18).bytes(message.baseKey);
496
+ if (message.ratchetKey != null && Object.hasOwnProperty.call(message, "ratchetKey"))
497
+ writer.uint32(26).bytes(message.ratchetKey);
498
+ if (message.identityKey != null && Object.hasOwnProperty.call(message, "identityKey"))
499
+ writer.uint32(34).bytes(message.identityKey);
500
+ if (
501
+ message.baseKeySignature != null &&
502
+ Object.hasOwnProperty.call(message, "baseKeySignature")
503
+ )
504
+ writer.uint32(42).bytes(message.baseKeySignature);
505
+ return writer;
506
+ };
507
+ KeyExchangeMessage.encodeDelimited = function encodeDelimited(message, writer) {
508
+ return this.encode(message, writer).ldelim();
509
+ };
510
+ KeyExchangeMessage.decode = function decode(reader, length, error) {
511
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
512
+ var end = length === undefined ? reader.len : reader.pos + length,
513
+ message = new $root.SignalWhisperTextProtocol.KeyExchangeMessage();
514
+ while (reader.pos < end) {
515
+ var tag = reader.uint32();
516
+ if (tag === error) break;
517
+ switch (tag >>> 3) {
518
+ case 1: {
519
+ message.id = reader.uint32();
520
+ break;
521
+ }
522
+ case 2: {
523
+ message.baseKey = reader.bytes();
524
+ break;
525
+ }
526
+ case 3: {
527
+ message.ratchetKey = reader.bytes();
528
+ break;
529
+ }
530
+ case 4: {
531
+ message.identityKey = reader.bytes();
532
+ break;
533
+ }
534
+ case 5: {
535
+ message.baseKeySignature = reader.bytes();
536
+ break;
537
+ }
538
+ default:
539
+ reader.skipType(tag & 7);
540
+ break;
541
+ }
542
+ }
543
+ return message;
544
+ };
545
+ KeyExchangeMessage.decodeDelimited = function decodeDelimited(reader) {
546
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
547
+ return this.decode(reader, reader.uint32());
548
+ };
549
+ KeyExchangeMessage.verify = function verify(message) {
550
+ if (typeof message !== "object" || message === null) return "object expected";
551
+ var properties = {};
552
+ if (message.id != null && message.hasOwnProperty("id")) {
553
+ properties._id = 1;
554
+ if (!$util.isInteger(message.id)) return "id: integer expected";
555
+ }
556
+ if (message.baseKey != null && message.hasOwnProperty("baseKey")) {
557
+ properties._baseKey = 1;
558
+ if (
559
+ !(
560
+ (message.baseKey && typeof message.baseKey.length === "number") ||
561
+ $util.isString(message.baseKey)
562
+ )
563
+ )
564
+ return "baseKey: buffer expected";
565
+ }
566
+ if (message.ratchetKey != null && message.hasOwnProperty("ratchetKey")) {
567
+ properties._ratchetKey = 1;
568
+ if (
569
+ !(
570
+ (message.ratchetKey && typeof message.ratchetKey.length === "number") ||
571
+ $util.isString(message.ratchetKey)
572
+ )
573
+ )
574
+ return "ratchetKey: buffer expected";
575
+ }
576
+ if (message.identityKey != null && message.hasOwnProperty("identityKey")) {
577
+ properties._identityKey = 1;
578
+ if (
579
+ !(
580
+ (message.identityKey && typeof message.identityKey.length === "number") ||
581
+ $util.isString(message.identityKey)
582
+ )
583
+ )
584
+ return "identityKey: buffer expected";
585
+ }
586
+ if (message.baseKeySignature != null && message.hasOwnProperty("baseKeySignature")) {
587
+ properties._baseKeySignature = 1;
588
+ if (
589
+ !(
590
+ (message.baseKeySignature &&
591
+ typeof message.baseKeySignature.length === "number") ||
592
+ $util.isString(message.baseKeySignature)
593
+ )
594
+ )
595
+ return "baseKeySignature: buffer expected";
596
+ }
597
+ return null;
598
+ };
599
+ KeyExchangeMessage.fromObject = function fromObject(object) {
600
+ if (object instanceof $root.SignalWhisperTextProtocol.KeyExchangeMessage) return object;
601
+ var message = new $root.SignalWhisperTextProtocol.KeyExchangeMessage();
602
+ if (object.id != null) message.id = object.id >>> 0;
603
+ if (object.baseKey != null)
604
+ if (typeof object.baseKey === "string")
605
+ $util.base64.decode(
606
+ object.baseKey,
607
+ (message.baseKey = $util.newBuffer($util.base64.length(object.baseKey))),
608
+ 0
609
+ );
610
+ else if (object.baseKey.length >= 0) message.baseKey = object.baseKey;
611
+ if (object.ratchetKey != null)
612
+ if (typeof object.ratchetKey === "string")
613
+ $util.base64.decode(
614
+ object.ratchetKey,
615
+ (message.ratchetKey = $util.newBuffer(
616
+ $util.base64.length(object.ratchetKey)
617
+ )),
618
+ 0
619
+ );
620
+ else if (object.ratchetKey.length >= 0) message.ratchetKey = object.ratchetKey;
621
+ if (object.identityKey != null)
622
+ if (typeof object.identityKey === "string")
623
+ $util.base64.decode(
624
+ object.identityKey,
625
+ (message.identityKey = $util.newBuffer(
626
+ $util.base64.length(object.identityKey)
627
+ )),
628
+ 0
629
+ );
630
+ else if (object.identityKey.length >= 0) message.identityKey = object.identityKey;
631
+ if (object.baseKeySignature != null)
632
+ if (typeof object.baseKeySignature === "string")
633
+ $util.base64.decode(
634
+ object.baseKeySignature,
635
+ (message.baseKeySignature = $util.newBuffer(
636
+ $util.base64.length(object.baseKeySignature)
637
+ )),
638
+ 0
639
+ );
640
+ else if (object.baseKeySignature.length >= 0)
641
+ message.baseKeySignature = object.baseKeySignature;
642
+ return message;
643
+ };
644
+ KeyExchangeMessage.toObject = function toObject(message, options) {
645
+ if (!options) options = {};
646
+ var object = {};
647
+ if (message.id != null && message.hasOwnProperty("id")) {
648
+ object.id = message.id;
649
+ if (options.oneofs) object._id = "id";
650
+ }
651
+ if (message.baseKey != null && message.hasOwnProperty("baseKey")) {
652
+ object.baseKey =
653
+ options.bytes === String
654
+ ? $util.base64.encode(message.baseKey, 0, message.baseKey.length)
655
+ : options.bytes === Array
656
+ ? Array.prototype.slice.call(message.baseKey)
657
+ : message.baseKey;
658
+ if (options.oneofs) object._baseKey = "baseKey";
659
+ }
660
+ if (message.ratchetKey != null && message.hasOwnProperty("ratchetKey")) {
661
+ object.ratchetKey =
662
+ options.bytes === String
663
+ ? $util.base64.encode(message.ratchetKey, 0, message.ratchetKey.length)
664
+ : options.bytes === Array
665
+ ? Array.prototype.slice.call(message.ratchetKey)
666
+ : message.ratchetKey;
667
+ if (options.oneofs) object._ratchetKey = "ratchetKey";
668
+ }
669
+ if (message.identityKey != null && message.hasOwnProperty("identityKey")) {
670
+ object.identityKey =
671
+ options.bytes === String
672
+ ? $util.base64.encode(message.identityKey, 0, message.identityKey.length)
673
+ : options.bytes === Array
674
+ ? Array.prototype.slice.call(message.identityKey)
675
+ : message.identityKey;
676
+ if (options.oneofs) object._identityKey = "identityKey";
677
+ }
678
+ if (message.baseKeySignature != null && message.hasOwnProperty("baseKeySignature")) {
679
+ object.baseKeySignature =
680
+ options.bytes === String
681
+ ? $util.base64.encode(
682
+ message.baseKeySignature,
683
+ 0,
684
+ message.baseKeySignature.length
685
+ )
686
+ : options.bytes === Array
687
+ ? Array.prototype.slice.call(message.baseKeySignature)
688
+ : message.baseKeySignature;
689
+ if (options.oneofs) object._baseKeySignature = "baseKeySignature";
690
+ }
691
+ return object;
692
+ };
693
+ KeyExchangeMessage.prototype.toJSON = function toJSON() {
694
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
695
+ };
696
+ KeyExchangeMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
697
+ if (typeUrlPrefix === undefined) {
698
+ typeUrlPrefix = "type.googleapis.com";
699
+ }
700
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.KeyExchangeMessage";
701
+ };
702
+ return KeyExchangeMessage;
703
+ })();
704
+ SignalWhisperTextProtocol.PreKeySignalMessage = (function () {
705
+ function PreKeySignalMessage(properties) {
706
+ if (properties)
707
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
708
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
709
+ }
710
+ PreKeySignalMessage.prototype.registrationId = null;
711
+ PreKeySignalMessage.prototype.preKeyId = null;
712
+ PreKeySignalMessage.prototype.signedPreKeyId = null;
713
+ PreKeySignalMessage.prototype.baseKey = null;
714
+ PreKeySignalMessage.prototype.identityKey = null;
715
+ PreKeySignalMessage.prototype.message = null;
716
+ var $oneOfFields;
717
+ Object.defineProperty(PreKeySignalMessage.prototype, "_registrationId", {
718
+ get: $util.oneOfGetter(($oneOfFields = ["registrationId"])),
719
+ set: $util.oneOfSetter($oneOfFields),
720
+ });
721
+ Object.defineProperty(PreKeySignalMessage.prototype, "_preKeyId", {
722
+ get: $util.oneOfGetter(($oneOfFields = ["preKeyId"])),
723
+ set: $util.oneOfSetter($oneOfFields),
724
+ });
725
+ Object.defineProperty(PreKeySignalMessage.prototype, "_signedPreKeyId", {
726
+ get: $util.oneOfGetter(($oneOfFields = ["signedPreKeyId"])),
727
+ set: $util.oneOfSetter($oneOfFields),
728
+ });
729
+ Object.defineProperty(PreKeySignalMessage.prototype, "_baseKey", {
730
+ get: $util.oneOfGetter(($oneOfFields = ["baseKey"])),
731
+ set: $util.oneOfSetter($oneOfFields),
732
+ });
733
+ Object.defineProperty(PreKeySignalMessage.prototype, "_identityKey", {
734
+ get: $util.oneOfGetter(($oneOfFields = ["identityKey"])),
735
+ set: $util.oneOfSetter($oneOfFields),
736
+ });
737
+ Object.defineProperty(PreKeySignalMessage.prototype, "_message", {
738
+ get: $util.oneOfGetter(($oneOfFields = ["message"])),
739
+ set: $util.oneOfSetter($oneOfFields),
740
+ });
741
+ PreKeySignalMessage.create = function create(properties) {
742
+ return new PreKeySignalMessage(properties);
743
+ };
744
+ PreKeySignalMessage.encode = function encode(message, writer) {
745
+ if (!writer) writer = $Writer.create();
746
+ if (message.preKeyId != null && Object.hasOwnProperty.call(message, "preKeyId"))
747
+ writer.uint32(8).uint32(message.preKeyId);
748
+ if (message.baseKey != null && Object.hasOwnProperty.call(message, "baseKey"))
749
+ writer.uint32(18).bytes(message.baseKey);
750
+ if (message.identityKey != null && Object.hasOwnProperty.call(message, "identityKey"))
751
+ writer.uint32(26).bytes(message.identityKey);
752
+ if (message.message != null && Object.hasOwnProperty.call(message, "message"))
753
+ writer.uint32(34).bytes(message.message);
754
+ if (
755
+ message.registrationId != null &&
756
+ Object.hasOwnProperty.call(message, "registrationId")
757
+ )
758
+ writer.uint32(40).uint32(message.registrationId);
759
+ if (
760
+ message.signedPreKeyId != null &&
761
+ Object.hasOwnProperty.call(message, "signedPreKeyId")
762
+ )
763
+ writer.uint32(48).uint32(message.signedPreKeyId);
764
+ return writer;
765
+ };
766
+ PreKeySignalMessage.encodeDelimited = function encodeDelimited(message, writer) {
767
+ return this.encode(message, writer).ldelim();
768
+ };
769
+ PreKeySignalMessage.decode = function decode(reader, length, error) {
770
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
771
+ var end = length === undefined ? reader.len : reader.pos + length,
772
+ message = new $root.SignalWhisperTextProtocol.PreKeySignalMessage();
773
+ while (reader.pos < end) {
774
+ var tag = reader.uint32();
775
+ if (tag === error) break;
776
+ switch (tag >>> 3) {
777
+ case 5: {
778
+ message.registrationId = reader.uint32();
779
+ break;
780
+ }
781
+ case 1: {
782
+ message.preKeyId = reader.uint32();
783
+ break;
784
+ }
785
+ case 6: {
786
+ message.signedPreKeyId = reader.uint32();
787
+ break;
788
+ }
789
+ case 2: {
790
+ message.baseKey = reader.bytes();
791
+ break;
792
+ }
793
+ case 3: {
794
+ message.identityKey = reader.bytes();
795
+ break;
796
+ }
797
+ case 4: {
798
+ message.message = reader.bytes();
799
+ break;
800
+ }
801
+ default:
802
+ reader.skipType(tag & 7);
803
+ break;
804
+ }
805
+ }
806
+ return message;
807
+ };
808
+ PreKeySignalMessage.decodeDelimited = function decodeDelimited(reader) {
809
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
810
+ return this.decode(reader, reader.uint32());
811
+ };
812
+ PreKeySignalMessage.verify = function verify(message) {
813
+ if (typeof message !== "object" || message === null) return "object expected";
814
+ var properties = {};
815
+ if (message.registrationId != null && message.hasOwnProperty("registrationId")) {
816
+ properties._registrationId = 1;
817
+ if (!$util.isInteger(message.registrationId))
818
+ return "registrationId: integer expected";
819
+ }
820
+ if (message.preKeyId != null && message.hasOwnProperty("preKeyId")) {
821
+ properties._preKeyId = 1;
822
+ if (!$util.isInteger(message.preKeyId)) return "preKeyId: integer expected";
823
+ }
824
+ if (message.signedPreKeyId != null && message.hasOwnProperty("signedPreKeyId")) {
825
+ properties._signedPreKeyId = 1;
826
+ if (!$util.isInteger(message.signedPreKeyId))
827
+ return "signedPreKeyId: integer expected";
828
+ }
829
+ if (message.baseKey != null && message.hasOwnProperty("baseKey")) {
830
+ properties._baseKey = 1;
831
+ if (
832
+ !(
833
+ (message.baseKey && typeof message.baseKey.length === "number") ||
834
+ $util.isString(message.baseKey)
835
+ )
836
+ )
837
+ return "baseKey: buffer expected";
838
+ }
839
+ if (message.identityKey != null && message.hasOwnProperty("identityKey")) {
840
+ properties._identityKey = 1;
841
+ if (
842
+ !(
843
+ (message.identityKey && typeof message.identityKey.length === "number") ||
844
+ $util.isString(message.identityKey)
845
+ )
846
+ )
847
+ return "identityKey: buffer expected";
848
+ }
849
+ if (message.message != null && message.hasOwnProperty("message")) {
850
+ properties._message = 1;
851
+ if (
852
+ !(
853
+ (message.message && typeof message.message.length === "number") ||
854
+ $util.isString(message.message)
855
+ )
856
+ )
857
+ return "message: buffer expected";
858
+ }
859
+ return null;
860
+ };
861
+ PreKeySignalMessage.fromObject = function fromObject(object) {
862
+ if (object instanceof $root.SignalWhisperTextProtocol.PreKeySignalMessage)
863
+ return object;
864
+ var message = new $root.SignalWhisperTextProtocol.PreKeySignalMessage();
865
+ if (object.registrationId != null) message.registrationId = object.registrationId >>> 0;
866
+ if (object.preKeyId != null) message.preKeyId = object.preKeyId >>> 0;
867
+ if (object.signedPreKeyId != null) message.signedPreKeyId = object.signedPreKeyId >>> 0;
868
+ if (object.baseKey != null)
869
+ if (typeof object.baseKey === "string")
870
+ $util.base64.decode(
871
+ object.baseKey,
872
+ (message.baseKey = $util.newBuffer($util.base64.length(object.baseKey))),
873
+ 0
874
+ );
875
+ else if (object.baseKey.length >= 0) message.baseKey = object.baseKey;
876
+ if (object.identityKey != null)
877
+ if (typeof object.identityKey === "string")
878
+ $util.base64.decode(
879
+ object.identityKey,
880
+ (message.identityKey = $util.newBuffer(
881
+ $util.base64.length(object.identityKey)
882
+ )),
883
+ 0
884
+ );
885
+ else if (object.identityKey.length >= 0) message.identityKey = object.identityKey;
886
+ if (object.message != null)
887
+ if (typeof object.message === "string")
888
+ $util.base64.decode(
889
+ object.message,
890
+ (message.message = $util.newBuffer($util.base64.length(object.message))),
891
+ 0
892
+ );
893
+ else if (object.message.length >= 0) message.message = object.message;
894
+ return message;
895
+ };
896
+ PreKeySignalMessage.toObject = function toObject(message, options) {
897
+ if (!options) options = {};
898
+ var object = {};
899
+ if (message.preKeyId != null && message.hasOwnProperty("preKeyId")) {
900
+ object.preKeyId = message.preKeyId;
901
+ if (options.oneofs) object._preKeyId = "preKeyId";
902
+ }
903
+ if (message.baseKey != null && message.hasOwnProperty("baseKey")) {
904
+ object.baseKey =
905
+ options.bytes === String
906
+ ? $util.base64.encode(message.baseKey, 0, message.baseKey.length)
907
+ : options.bytes === Array
908
+ ? Array.prototype.slice.call(message.baseKey)
909
+ : message.baseKey;
910
+ if (options.oneofs) object._baseKey = "baseKey";
911
+ }
912
+ if (message.identityKey != null && message.hasOwnProperty("identityKey")) {
913
+ object.identityKey =
914
+ options.bytes === String
915
+ ? $util.base64.encode(message.identityKey, 0, message.identityKey.length)
916
+ : options.bytes === Array
917
+ ? Array.prototype.slice.call(message.identityKey)
918
+ : message.identityKey;
919
+ if (options.oneofs) object._identityKey = "identityKey";
920
+ }
921
+ if (message.message != null && message.hasOwnProperty("message")) {
922
+ object.message =
923
+ options.bytes === String
924
+ ? $util.base64.encode(message.message, 0, message.message.length)
925
+ : options.bytes === Array
926
+ ? Array.prototype.slice.call(message.message)
927
+ : message.message;
928
+ if (options.oneofs) object._message = "message";
929
+ }
930
+ if (message.registrationId != null && message.hasOwnProperty("registrationId")) {
931
+ object.registrationId = message.registrationId;
932
+ if (options.oneofs) object._registrationId = "registrationId";
933
+ }
934
+ if (message.signedPreKeyId != null && message.hasOwnProperty("signedPreKeyId")) {
935
+ object.signedPreKeyId = message.signedPreKeyId;
936
+ if (options.oneofs) object._signedPreKeyId = "signedPreKeyId";
937
+ }
938
+ return object;
939
+ };
940
+ PreKeySignalMessage.prototype.toJSON = function toJSON() {
941
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
942
+ };
943
+ PreKeySignalMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
944
+ if (typeUrlPrefix === undefined) {
945
+ typeUrlPrefix = "type.googleapis.com";
946
+ }
947
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.PreKeySignalMessage";
948
+ };
949
+ return PreKeySignalMessage;
950
+ })();
951
+ SignalWhisperTextProtocol.SignalMessage = (function () {
952
+ function SignalMessage(properties) {
953
+ if (properties)
954
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
955
+ if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]];
956
+ }
957
+ SignalMessage.prototype.ratchetKey = null;
958
+ SignalMessage.prototype.counter = null;
959
+ SignalMessage.prototype.previousCounter = null;
960
+ SignalMessage.prototype.ciphertext = null;
961
+ var $oneOfFields;
962
+ Object.defineProperty(SignalMessage.prototype, "_ratchetKey", {
963
+ get: $util.oneOfGetter(($oneOfFields = ["ratchetKey"])),
964
+ set: $util.oneOfSetter($oneOfFields),
965
+ });
966
+ Object.defineProperty(SignalMessage.prototype, "_counter", {
967
+ get: $util.oneOfGetter(($oneOfFields = ["counter"])),
968
+ set: $util.oneOfSetter($oneOfFields),
969
+ });
970
+ Object.defineProperty(SignalMessage.prototype, "_previousCounter", {
971
+ get: $util.oneOfGetter(($oneOfFields = ["previousCounter"])),
972
+ set: $util.oneOfSetter($oneOfFields),
973
+ });
974
+ Object.defineProperty(SignalMessage.prototype, "_ciphertext", {
975
+ get: $util.oneOfGetter(($oneOfFields = ["ciphertext"])),
976
+ set: $util.oneOfSetter($oneOfFields),
977
+ });
978
+ SignalMessage.create = function create(properties) {
979
+ return new SignalMessage(properties);
980
+ };
981
+ SignalMessage.encode = function encode(message, writer) {
982
+ if (!writer) writer = $Writer.create();
983
+ if (message.ratchetKey != null && Object.hasOwnProperty.call(message, "ratchetKey"))
984
+ writer.uint32(10).bytes(message.ratchetKey);
985
+ if (message.counter != null && Object.hasOwnProperty.call(message, "counter"))
986
+ writer.uint32(16).uint32(message.counter);
987
+ if (
988
+ message.previousCounter != null &&
989
+ Object.hasOwnProperty.call(message, "previousCounter")
990
+ )
991
+ writer.uint32(24).uint32(message.previousCounter);
992
+ if (message.ciphertext != null && Object.hasOwnProperty.call(message, "ciphertext"))
993
+ writer.uint32(34).bytes(message.ciphertext);
994
+ return writer;
995
+ };
996
+ SignalMessage.encodeDelimited = function encodeDelimited(message, writer) {
997
+ return this.encode(message, writer).ldelim();
998
+ };
999
+ SignalMessage.decode = function decode(reader, length, error) {
1000
+ if (!(reader instanceof $Reader)) reader = $Reader.create(reader);
1001
+ var end = length === undefined ? reader.len : reader.pos + length,
1002
+ message = new $root.SignalWhisperTextProtocol.SignalMessage();
1003
+ while (reader.pos < end) {
1004
+ var tag = reader.uint32();
1005
+ if (tag === error) break;
1006
+ switch (tag >>> 3) {
1007
+ case 1: {
1008
+ message.ratchetKey = reader.bytes();
1009
+ break;
1010
+ }
1011
+ case 2: {
1012
+ message.counter = reader.uint32();
1013
+ break;
1014
+ }
1015
+ case 3: {
1016
+ message.previousCounter = reader.uint32();
1017
+ break;
1018
+ }
1019
+ case 4: {
1020
+ message.ciphertext = reader.bytes();
1021
+ break;
1022
+ }
1023
+ default:
1024
+ reader.skipType(tag & 7);
1025
+ break;
1026
+ }
1027
+ }
1028
+ return message;
1029
+ };
1030
+ SignalMessage.decodeDelimited = function decodeDelimited(reader) {
1031
+ if (!(reader instanceof $Reader)) reader = new $Reader(reader);
1032
+ return this.decode(reader, reader.uint32());
1033
+ };
1034
+ SignalMessage.verify = function verify(message) {
1035
+ if (typeof message !== "object" || message === null) return "object expected";
1036
+ var properties = {};
1037
+ if (message.ratchetKey != null && message.hasOwnProperty("ratchetKey")) {
1038
+ properties._ratchetKey = 1;
1039
+ if (
1040
+ !(
1041
+ (message.ratchetKey && typeof message.ratchetKey.length === "number") ||
1042
+ $util.isString(message.ratchetKey)
1043
+ )
1044
+ )
1045
+ return "ratchetKey: buffer expected";
1046
+ }
1047
+ if (message.counter != null && message.hasOwnProperty("counter")) {
1048
+ properties._counter = 1;
1049
+ if (!$util.isInteger(message.counter)) return "counter: integer expected";
1050
+ }
1051
+ if (message.previousCounter != null && message.hasOwnProperty("previousCounter")) {
1052
+ properties._previousCounter = 1;
1053
+ if (!$util.isInteger(message.previousCounter))
1054
+ return "previousCounter: integer expected";
1055
+ }
1056
+ if (message.ciphertext != null && message.hasOwnProperty("ciphertext")) {
1057
+ properties._ciphertext = 1;
1058
+ if (
1059
+ !(
1060
+ (message.ciphertext && typeof message.ciphertext.length === "number") ||
1061
+ $util.isString(message.ciphertext)
1062
+ )
1063
+ )
1064
+ return "ciphertext: buffer expected";
1065
+ }
1066
+ return null;
1067
+ };
1068
+ SignalMessage.fromObject = function fromObject(object) {
1069
+ if (object instanceof $root.SignalWhisperTextProtocol.SignalMessage) return object;
1070
+ var message = new $root.SignalWhisperTextProtocol.SignalMessage();
1071
+ if (object.ratchetKey != null)
1072
+ if (typeof object.ratchetKey === "string")
1073
+ $util.base64.decode(
1074
+ object.ratchetKey,
1075
+ (message.ratchetKey = $util.newBuffer(
1076
+ $util.base64.length(object.ratchetKey)
1077
+ )),
1078
+ 0
1079
+ );
1080
+ else if (object.ratchetKey.length >= 0) message.ratchetKey = object.ratchetKey;
1081
+ if (object.counter != null) message.counter = object.counter >>> 0;
1082
+ if (object.previousCounter != null)
1083
+ message.previousCounter = object.previousCounter >>> 0;
1084
+ if (object.ciphertext != null)
1085
+ if (typeof object.ciphertext === "string")
1086
+ $util.base64.decode(
1087
+ object.ciphertext,
1088
+ (message.ciphertext = $util.newBuffer(
1089
+ $util.base64.length(object.ciphertext)
1090
+ )),
1091
+ 0
1092
+ );
1093
+ else if (object.ciphertext.length >= 0) message.ciphertext = object.ciphertext;
1094
+ return message;
1095
+ };
1096
+ SignalMessage.toObject = function toObject(message, options) {
1097
+ if (!options) options = {};
1098
+ var object = {};
1099
+ if (message.ratchetKey != null && message.hasOwnProperty("ratchetKey")) {
1100
+ object.ratchetKey =
1101
+ options.bytes === String
1102
+ ? $util.base64.encode(message.ratchetKey, 0, message.ratchetKey.length)
1103
+ : options.bytes === Array
1104
+ ? Array.prototype.slice.call(message.ratchetKey)
1105
+ : message.ratchetKey;
1106
+ if (options.oneofs) object._ratchetKey = "ratchetKey";
1107
+ }
1108
+ if (message.counter != null && message.hasOwnProperty("counter")) {
1109
+ object.counter = message.counter;
1110
+ if (options.oneofs) object._counter = "counter";
1111
+ }
1112
+ if (message.previousCounter != null && message.hasOwnProperty("previousCounter")) {
1113
+ object.previousCounter = message.previousCounter;
1114
+ if (options.oneofs) object._previousCounter = "previousCounter";
1115
+ }
1116
+ if (message.ciphertext != null && message.hasOwnProperty("ciphertext")) {
1117
+ object.ciphertext =
1118
+ options.bytes === String
1119
+ ? $util.base64.encode(message.ciphertext, 0, message.ciphertext.length)
1120
+ : options.bytes === Array
1121
+ ? Array.prototype.slice.call(message.ciphertext)
1122
+ : message.ciphertext;
1123
+ if (options.oneofs) object._ciphertext = "ciphertext";
1124
+ }
1125
+ return object;
1126
+ };
1127
+ SignalMessage.prototype.toJSON = function toJSON() {
1128
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1129
+ };
1130
+ SignalMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1131
+ if (typeUrlPrefix === undefined) {
1132
+ typeUrlPrefix = "type.googleapis.com";
1133
+ }
1134
+ return typeUrlPrefix + "/SignalWhisperTextProtocol.SignalMessage";
1135
+ };
1136
+ return SignalMessage;
1137
+ })();
1138
+ return SignalWhisperTextProtocol;
1139
+ })();
1140
+ module.exports = $root;