koilib 5.1.1 → 5.2.1

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.
@@ -86,6 +86,13 @@ const btypesOperation = {
86
86
  },
87
87
  },
88
88
  },
89
+ set_system_contract: {
90
+ type: "object",
91
+ subtypes: {
92
+ contract_id: { type: "bytes", btype: "CONTRACT_ID" },
93
+ system_contract: { type: "bool" },
94
+ },
95
+ },
89
96
  };
90
97
  /**
91
98
  * The Signer Class contains the private key needed to sign transactions.
@@ -437,7 +444,7 @@ class Signer {
437
444
  if (!block.signature)
438
445
  throw new Error("Missing block signature");
439
446
  signatures = [block.signature];
440
- const headerDecoded = (0, utils_1.btypeDecode)(block.header, btypeBlockHeader);
447
+ const headerDecoded = (0, utils_1.btypeDecode)(block.header, btypeBlockHeader, false);
441
448
  const message = protocol_proto_js_1.koinos.protocol.block_header.create(headerDecoded);
442
449
  headerBytes = protocol_proto_js_1.koinos.protocol.block_header.encode(message).finish();
443
450
  }
@@ -448,7 +455,7 @@ class Signer {
448
455
  if (!transaction.signatures)
449
456
  throw new Error("Missing transaction signatures");
450
457
  signatures = transaction.signatures;
451
- const headerDecoded = (0, utils_1.btypeDecode)(transaction.header, btypeTransactionHeader);
458
+ const headerDecoded = (0, utils_1.btypeDecode)(transaction.header, btypeTransactionHeader, false);
452
459
  const message = protocol_proto_js_1.koinos.protocol.transaction_header.create(headerDecoded);
453
460
  headerBytes = protocol_proto_js_1.koinos.protocol.transaction_header.encode(message).finish();
454
461
  }
@@ -561,7 +568,7 @@ class Signer {
561
568
  const operationsHashes = [];
562
569
  if (tx.operations) {
563
570
  for (let index = 0; index < ((_b = tx.operations) === null || _b === void 0 ? void 0 : _b.length); index += 1) {
564
- const operationDecoded = (0, utils_1.btypeDecode)(tx.operations[index], btypesOperation);
571
+ const operationDecoded = (0, utils_1.btypeDecode)(tx.operations[index], btypesOperation, false);
565
572
  const message = protocol_proto_js_1.koinos.protocol.operation.create(operationDecoded);
566
573
  const operationEncoded = protocol_proto_js_1.koinos.protocol.operation
567
574
  .encode(message)
@@ -584,7 +591,7 @@ class Signer {
584
591
  ...(payee && { payee }),
585
592
  // TODO: Option to resolve names (payer, payee)
586
593
  };
587
- const headerDecoded = (0, utils_1.btypeDecode)(tx.header, btypeTransactionHeader);
594
+ const headerDecoded = (0, utils_1.btypeDecode)(tx.header, btypeTransactionHeader, false);
588
595
  const message = protocol_proto_js_1.koinos.protocol.transaction_header.create(headerDecoded);
589
596
  const headerBytes = protocol_proto_js_1.koinos.protocol.transaction_header
590
597
  .encode(message)
@@ -608,7 +615,7 @@ class Signer {
608
615
  if (block.transactions) {
609
616
  for (let index = 0; index < block.transactions.length; index++) {
610
617
  const tx = block.transactions[index];
611
- const headerDecoded = (0, utils_1.btypeDecode)(tx.header, btypeTransactionHeader);
618
+ const headerDecoded = (0, utils_1.btypeDecode)(tx.header, btypeTransactionHeader, false);
612
619
  const message = protocol_proto_js_1.koinos.protocol.transaction_header.create(headerDecoded);
613
620
  const headerBytes = protocol_proto_js_1.koinos.protocol.transaction_header
614
621
  .encode(message)
@@ -650,7 +657,7 @@ class Signer {
650
657
  ])),
651
658
  signer: this.address,
652
659
  };
653
- const headerDecoded = (0, utils_1.btypeDecode)(block.header, btypeBlockHeader);
660
+ const headerDecoded = (0, utils_1.btypeDecode)(block.header, btypeBlockHeader, false);
654
661
  const message = protocol_proto_js_1.koinos.protocol.block_header.create(headerDecoded);
655
662
  const headerBytes = protocol_proto_js_1.koinos.protocol.block_header
656
663
  .encode(message)
@@ -1 +1 @@
1
- {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../../src/Signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../../src/Signer.ts"],"names":[],"mappings":"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"}
@@ -160,6 +160,26 @@ export interface BaseTransactionOptions {
160
160
  * not set the blockchain will increase the payer's nonce.
161
161
  */
162
162
  payee?: string;
163
+ /**
164
+ * Only operation
165
+ *
166
+ * Boolean to define if the intention is to get only the operation.
167
+ * No transaction or connection with the provider established.
168
+ * By default it is false.
169
+ */
170
+ onlyOperation?: boolean;
171
+ /**
172
+ * Previous operations
173
+ *
174
+ * List of extra operations to be included before the actual one in the transaction
175
+ */
176
+ previousOperations?: OperationJson[];
177
+ /**
178
+ * Next operations
179
+ *
180
+ * List of extra operations to be included after the actual one in the transaction
181
+ */
182
+ nextOperations?: OperationJson[];
163
183
  /**
164
184
  * Sign transaction
165
185
  *
@@ -60,6 +60,44 @@ export declare function bitcoinDecode(value: string): Uint8Array;
60
60
  * address = bitcoinEncode( ripemd160 ( sha256 ( publicKey ) ) )
61
61
  */
62
62
  export declare function bitcoinAddress(publicKey: Uint8Array): string;
63
+ /**
64
+ * Checks if the last 4 bytes matches with the double sha256
65
+ * of the first part
66
+ */
67
+ export declare function isChecksum(buffer: Uint8Array): boolean;
68
+ /**
69
+ * Checks if the checksum of an address is correct.
70
+ *
71
+ * The address has 3 parts in this order:
72
+ * - prefix: 1 byte
73
+ * - data: 20 bytes
74
+ * - checksum: 4 bytes
75
+ *
76
+ * checks:
77
+ * - It must be "pay to public key hash" (P2PKH). That is prefix 0
78
+ * - checksum = first 4 bytes of sha256(sha256(prefix + data))
79
+ *
80
+ * See [How to generate a bitcoin address step by step](https://medium.com/coinmonks/how-to-generate-a-bitcoin-address-step-by-step-9d7fcbf1ad0b).
81
+ */
82
+ export declare function isChecksumAddress(address: string | Uint8Array): boolean;
83
+ /**
84
+ * Checks if the checksum of an private key WIF is correct.
85
+ *
86
+ * The private key WIF has 3 parts in this order:
87
+ * - prefix: 1 byte
88
+ * - private key: 32 bytes
89
+ * - compressed: 1 byte for compressed public key (no byte for uncompressed)
90
+ * - checksum: 4 bytes
91
+ *
92
+ * checks:
93
+ * - It must use version 0x80 in the prefix
94
+ * - If the corresponding public key is compressed the byte 33 must be 0x01
95
+ * - checksum = first 4 bytes of
96
+ * sha256(sha256(prefix + private key + compressed))
97
+ *
98
+ * See [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format).
99
+ */
100
+ export declare function isChecksumWif(wif: string | Uint8Array): boolean;
63
101
  /**
64
102
  * Function to format a number in a decimal point number
65
103
  * @example
@@ -80,10 +118,10 @@ export declare function formatUnits(value: string | number | bigint, decimals: n
80
118
  * ```
81
119
  */
82
120
  export declare function parseUnits(value: string, decimals: number): string;
83
- export declare function btypeDecodeValue(valueEncoded: unknown, typeField: TypeField): unknown;
84
- export declare function btypeEncodeValue(valueDecoded: unknown, typeField: TypeField): unknown;
85
- export declare function btypeDecode(valueEncoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>): Record<string, unknown>;
86
- export declare function btypeEncode(valueDecoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>): Record<string, unknown>;
121
+ export declare function btypeDecodeValue(valueEncoded: unknown, typeField: TypeField, verifyChecksum: boolean): unknown;
122
+ export declare function btypeEncodeValue(valueDecoded: unknown, typeField: TypeField, verifyChecksum: boolean): unknown;
123
+ export declare function btypeDecode(valueEncoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>, verifyChecksum: boolean): Record<string, unknown>;
124
+ export declare function btypeEncode(valueDecoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>, verifyChecksum: boolean): Record<string, unknown>;
87
125
  /**
88
126
  * ABI for tokens
89
127
  */
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.tokenAbi = exports.btypeEncode = exports.btypeDecode = exports.btypeEncodeValue = exports.btypeDecodeValue = exports.parseUnits = exports.formatUnits = exports.bitcoinAddress = exports.bitcoinDecode = exports.bitcoinEncode = exports.calculateMerkleRoot = exports.decodeBase64 = exports.multihash = exports.encodeBase64 = exports.decodeBase64url = exports.encodeBase64url = exports.decodeBase58 = exports.encodeBase58 = exports.toHexString = exports.toUint8Array = void 0;
29
+ exports.tokenAbi = exports.btypeEncode = exports.btypeDecode = exports.btypeEncodeValue = exports.btypeDecodeValue = exports.parseUnits = exports.formatUnits = exports.isChecksumWif = exports.isChecksumAddress = exports.isChecksum = exports.bitcoinAddress = exports.bitcoinDecode = exports.bitcoinEncode = exports.calculateMerkleRoot = exports.decodeBase64 = exports.multihash = exports.encodeBase64 = exports.decodeBase64url = exports.encodeBase64url = exports.decodeBase58 = exports.encodeBase58 = exports.toHexString = exports.toUint8Array = void 0;
30
30
  const multibase = __importStar(require("multibase"));
31
31
  const sha256_1 = require("@noble/hashes/sha256");
32
32
  const ripemd160_1 = require("@noble/hashes/ripemd160");
@@ -207,6 +207,82 @@ function bitcoinAddress(publicKey) {
207
207
  return bitcoinEncode(hash160, "public");
208
208
  }
209
209
  exports.bitcoinAddress = bitcoinAddress;
210
+ /**
211
+ * Checks if the last 4 bytes matches with the double sha256
212
+ * of the first part
213
+ */
214
+ function isChecksum(buffer) {
215
+ const dataLength = buffer.length - 4;
216
+ const data = new Uint8Array(dataLength);
217
+ data.set(buffer.slice(0, dataLength));
218
+ const checksum = new Uint8Array(4);
219
+ checksum.set(buffer.slice(dataLength));
220
+ const doubleHash = (0, sha256_1.sha256)((0, sha256_1.sha256)(data));
221
+ // checksum must be the first 4 bytes of the double hash
222
+ for (let i = 0; i < 4; i += 1) {
223
+ if (checksum[i] !== doubleHash[i])
224
+ return false;
225
+ }
226
+ return true;
227
+ }
228
+ exports.isChecksum = isChecksum;
229
+ /**
230
+ * Checks if the checksum of an address is correct.
231
+ *
232
+ * The address has 3 parts in this order:
233
+ * - prefix: 1 byte
234
+ * - data: 20 bytes
235
+ * - checksum: 4 bytes
236
+ *
237
+ * checks:
238
+ * - It must be "pay to public key hash" (P2PKH). That is prefix 0
239
+ * - checksum = first 4 bytes of sha256(sha256(prefix + data))
240
+ *
241
+ * See [How to generate a bitcoin address step by step](https://medium.com/coinmonks/how-to-generate-a-bitcoin-address-step-by-step-9d7fcbf1ad0b).
242
+ */
243
+ function isChecksumAddress(address) {
244
+ const bufferAddress = typeof address === "string" ? decodeBase58(address) : address;
245
+ // it must have 25 bytes
246
+ if (bufferAddress.length !== 25)
247
+ return false;
248
+ // it must have prefix 0 (P2PKH address)
249
+ if (bufferAddress[0] !== 0)
250
+ return false;
251
+ return isChecksum(bufferAddress);
252
+ }
253
+ exports.isChecksumAddress = isChecksumAddress;
254
+ /**
255
+ * Checks if the checksum of an private key WIF is correct.
256
+ *
257
+ * The private key WIF has 3 parts in this order:
258
+ * - prefix: 1 byte
259
+ * - private key: 32 bytes
260
+ * - compressed: 1 byte for compressed public key (no byte for uncompressed)
261
+ * - checksum: 4 bytes
262
+ *
263
+ * checks:
264
+ * - It must use version 0x80 in the prefix
265
+ * - If the corresponding public key is compressed the byte 33 must be 0x01
266
+ * - checksum = first 4 bytes of
267
+ * sha256(sha256(prefix + private key + compressed))
268
+ *
269
+ * See [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format).
270
+ */
271
+ function isChecksumWif(wif) {
272
+ const bufferWif = typeof wif === "string" ? decodeBase58(wif) : wif;
273
+ // it must have 37 or 38 bytes
274
+ if (bufferWif.length !== 37 && bufferWif.length !== 38)
275
+ return false;
276
+ const compressed = bufferWif.length === 38;
277
+ // if compressed then the last byte must be 0x01
278
+ if (compressed && bufferWif[33] !== 1)
279
+ return false;
280
+ // it must have prefix version for private keys (0x80)
281
+ if (bufferWif[0] !== 128)
282
+ return false;
283
+ return isChecksum(bufferWif);
284
+ }
285
+ exports.isChecksumWif = isChecksumWif;
210
286
  /**
211
287
  * Function to format a number in a decimal point number
212
288
  * @example
@@ -264,7 +340,7 @@ function copyValue(value) {
264
340
  }
265
341
  return JSON.parse(JSON.stringify(value));
266
342
  }
267
- function btypeDecodeValue(valueEncoded, typeField) {
343
+ function btypeDecodeValue(valueEncoded, typeField, verifyChecksum) {
268
344
  // No byte conversion
269
345
  if (typeField.type !== "bytes")
270
346
  return copyValue(valueEncoded);
@@ -276,9 +352,14 @@ function btypeDecodeValue(valueEncoded, typeField) {
276
352
  // Specific byte conversion
277
353
  switch (typeField.btype) {
278
354
  case "BASE58":
355
+ return decodeBase58(value);
279
356
  case "CONTRACT_ID":
280
357
  case "ADDRESS":
281
- return decodeBase58(value);
358
+ const valueDecoded = decodeBase58(value);
359
+ if (verifyChecksum && !isChecksumAddress(valueDecoded)) {
360
+ throw new Error(`${value} is an invalid address`);
361
+ }
362
+ return valueDecoded;
282
363
  case "BASE64":
283
364
  return decodeBase64url(value);
284
365
  case "HEX":
@@ -290,7 +371,7 @@ function btypeDecodeValue(valueEncoded, typeField) {
290
371
  }
291
372
  }
292
373
  exports.btypeDecodeValue = btypeDecodeValue;
293
- function btypeEncodeValue(valueDecoded, typeField) {
374
+ function btypeEncodeValue(valueDecoded, typeField, verifyChecksum) {
294
375
  // No byte conversion
295
376
  if (typeField.type !== "bytes")
296
377
  return copyValue(valueDecoded);
@@ -302,9 +383,14 @@ function btypeEncodeValue(valueDecoded, typeField) {
302
383
  // Specific byte conversion
303
384
  switch (typeField.btype) {
304
385
  case "BASE58":
386
+ return encodeBase58(value);
305
387
  case "CONTRACT_ID":
306
388
  case "ADDRESS":
307
- return encodeBase58(value);
389
+ const valueEncoded = encodeBase58(value);
390
+ if (verifyChecksum && !isChecksumAddress(value)) {
391
+ throw new Error(`${valueEncoded} is an invalid address`);
392
+ }
393
+ return valueEncoded;
308
394
  case "BASE64":
309
395
  return encodeBase64url(value);
310
396
  case "HEX":
@@ -316,7 +402,7 @@ function btypeEncodeValue(valueDecoded, typeField) {
316
402
  }
317
403
  }
318
404
  exports.btypeEncodeValue = btypeEncodeValue;
319
- function btypeDecode(valueEncoded, fields) {
405
+ function btypeDecode(valueEncoded, fields, verifyChecksum) {
320
406
  if (typeof valueEncoded !== "object")
321
407
  return valueEncoded;
322
408
  const valueDecoded = {};
@@ -326,18 +412,18 @@ function btypeDecode(valueEncoded, fields) {
326
412
  if (fields[name].rule === "repeated")
327
413
  valueDecoded[name] = valueEncoded[name].map((itemEncoded) => {
328
414
  if (fields[name].subtypes)
329
- return btypeDecode(itemEncoded, fields[name].subtypes);
330
- return btypeDecodeValue(itemEncoded, fields[name]);
415
+ return btypeDecode(itemEncoded, fields[name].subtypes, verifyChecksum);
416
+ return btypeDecodeValue(itemEncoded, fields[name], verifyChecksum);
331
417
  });
332
418
  else if (fields[name].subtypes)
333
- valueDecoded[name] = btypeDecode(valueEncoded[name], fields[name].subtypes);
419
+ valueDecoded[name] = btypeDecode(valueEncoded[name], fields[name].subtypes, verifyChecksum);
334
420
  else
335
- valueDecoded[name] = btypeDecodeValue(valueEncoded[name], fields[name]);
421
+ valueDecoded[name] = btypeDecodeValue(valueEncoded[name], fields[name], verifyChecksum);
336
422
  });
337
423
  return valueDecoded;
338
424
  }
339
425
  exports.btypeDecode = btypeDecode;
340
- function btypeEncode(valueDecoded, fields) {
426
+ function btypeEncode(valueDecoded, fields, verifyChecksum) {
341
427
  if (typeof valueDecoded !== "object")
342
428
  return valueDecoded;
343
429
  const valueEncoded = {};
@@ -347,13 +433,13 @@ function btypeEncode(valueDecoded, fields) {
347
433
  if (fields[name].rule === "repeated")
348
434
  valueEncoded[name] = valueDecoded[name].map((itemDecoded) => {
349
435
  if (fields[name].subtypes)
350
- return btypeEncode(itemDecoded, fields[name].subtypes);
351
- return btypeEncodeValue(itemDecoded, fields[name]);
436
+ return btypeEncode(itemDecoded, fields[name].subtypes, verifyChecksum);
437
+ return btypeEncodeValue(itemDecoded, fields[name], verifyChecksum);
352
438
  });
353
439
  else if (fields[name].subtypes)
354
- valueEncoded[name] = btypeEncode(valueDecoded[name], fields[name].subtypes);
440
+ valueEncoded[name] = btypeEncode(valueDecoded[name], fields[name].subtypes, verifyChecksum);
355
441
  else
356
- valueEncoded[name] = btypeEncodeValue(valueDecoded[name], fields[name]);
442
+ valueEncoded[name] = btypeEncodeValue(valueDecoded[name], fields[name], verifyChecksum);
357
443
  });
358
444
  return valueEncoded;
359
445
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
@@ -160,6 +160,26 @@ export interface BaseTransactionOptions {
160
160
  * not set the blockchain will increase the payer's nonce.
161
161
  */
162
162
  payee?: string;
163
+ /**
164
+ * Only operation
165
+ *
166
+ * Boolean to define if the intention is to get only the operation.
167
+ * No transaction or connection with the provider established.
168
+ * By default it is false.
169
+ */
170
+ onlyOperation?: boolean;
171
+ /**
172
+ * Previous operations
173
+ *
174
+ * List of extra operations to be included before the actual one in the transaction
175
+ */
176
+ previousOperations?: OperationJson[];
177
+ /**
178
+ * Next operations
179
+ *
180
+ * List of extra operations to be included after the actual one in the transaction
181
+ */
182
+ nextOperations?: OperationJson[];
163
183
  /**
164
184
  * Sign transaction
165
185
  *
package/lib/utils.d.ts CHANGED
@@ -60,6 +60,44 @@ export declare function bitcoinDecode(value: string): Uint8Array;
60
60
  * address = bitcoinEncode( ripemd160 ( sha256 ( publicKey ) ) )
61
61
  */
62
62
  export declare function bitcoinAddress(publicKey: Uint8Array): string;
63
+ /**
64
+ * Checks if the last 4 bytes matches with the double sha256
65
+ * of the first part
66
+ */
67
+ export declare function isChecksum(buffer: Uint8Array): boolean;
68
+ /**
69
+ * Checks if the checksum of an address is correct.
70
+ *
71
+ * The address has 3 parts in this order:
72
+ * - prefix: 1 byte
73
+ * - data: 20 bytes
74
+ * - checksum: 4 bytes
75
+ *
76
+ * checks:
77
+ * - It must be "pay to public key hash" (P2PKH). That is prefix 0
78
+ * - checksum = first 4 bytes of sha256(sha256(prefix + data))
79
+ *
80
+ * See [How to generate a bitcoin address step by step](https://medium.com/coinmonks/how-to-generate-a-bitcoin-address-step-by-step-9d7fcbf1ad0b).
81
+ */
82
+ export declare function isChecksumAddress(address: string | Uint8Array): boolean;
83
+ /**
84
+ * Checks if the checksum of an private key WIF is correct.
85
+ *
86
+ * The private key WIF has 3 parts in this order:
87
+ * - prefix: 1 byte
88
+ * - private key: 32 bytes
89
+ * - compressed: 1 byte for compressed public key (no byte for uncompressed)
90
+ * - checksum: 4 bytes
91
+ *
92
+ * checks:
93
+ * - It must use version 0x80 in the prefix
94
+ * - If the corresponding public key is compressed the byte 33 must be 0x01
95
+ * - checksum = first 4 bytes of
96
+ * sha256(sha256(prefix + private key + compressed))
97
+ *
98
+ * See [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format).
99
+ */
100
+ export declare function isChecksumWif(wif: string | Uint8Array): boolean;
63
101
  /**
64
102
  * Function to format a number in a decimal point number
65
103
  * @example
@@ -80,10 +118,10 @@ export declare function formatUnits(value: string | number | bigint, decimals: n
80
118
  * ```
81
119
  */
82
120
  export declare function parseUnits(value: string, decimals: number): string;
83
- export declare function btypeDecodeValue(valueEncoded: unknown, typeField: TypeField): unknown;
84
- export declare function btypeEncodeValue(valueDecoded: unknown, typeField: TypeField): unknown;
85
- export declare function btypeDecode(valueEncoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>): Record<string, unknown>;
86
- export declare function btypeEncode(valueDecoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>): Record<string, unknown>;
121
+ export declare function btypeDecodeValue(valueEncoded: unknown, typeField: TypeField, verifyChecksum: boolean): unknown;
122
+ export declare function btypeEncodeValue(valueDecoded: unknown, typeField: TypeField, verifyChecksum: boolean): unknown;
123
+ export declare function btypeDecode(valueEncoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>, verifyChecksum: boolean): Record<string, unknown>;
124
+ export declare function btypeEncode(valueDecoded: Record<string, unknown> | unknown[], fields: Record<string, TypeField>, verifyChecksum: boolean): Record<string, unknown>;
87
125
  /**
88
126
  * ABI for tokens
89
127
  */