koilib 8.1.0 → 9.1.0

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.
package/dist/koinos.js CHANGED
@@ -22924,7 +22924,7 @@ class Contract {
22924
22924
  * ```ts
22925
22925
  * const { transaction, receipt } = await contract.deploy({
22926
22926
  * // contract options
22927
- * abi: "CssCChRrb2lub3Mvb3B0aW9ucy5wc...",
22927
+ * abi: JSON.stringify(contract.abi),
22928
22928
  * authorizesCallContract: true,
22929
22929
  * authorizesTransactionApplication: true,
22930
22930
  * authorizesUploadContract: true,
@@ -23130,7 +23130,12 @@ class Contract {
23130
23130
  throw new Error("Serializer is not defined");
23131
23131
  let typeName = event.name;
23132
23132
  if (this.abi && this.abi.events && this.abi.events[event.name]) {
23133
- typeName = this.abi.events[event.name].argument;
23133
+ typeName = this.abi.events[event.name].type;
23134
+ // temporary code for transition between "argument" and "type".
23135
+ // It should be removed in future versions
23136
+ if (!typeName) {
23137
+ typeName = this.abi.events[event.name].argument;
23138
+ }
23134
23139
  }
23135
23140
  const args = typeName
23136
23141
  ? await this.serializer.deserialize(event.data, typeName)
@@ -23575,16 +23580,10 @@ class Provider {
23575
23580
  /**
23576
23581
  * Function to wait for a transaction to be mined.
23577
23582
  * @param txId - transaction id
23578
- * @param type - Type must be "byBlock" (default) or "byTransactionId".
23583
+ * @param type - Type must be "byBlock" or "byTransactionId" (default).
23579
23584
  * _byBlock_ will query the blockchain to get blocks and search for the
23580
23585
  * transaction there. _byTransactionId_ will query the "transaction store"
23581
- * microservice to search the transaction by its id. If non of them is
23582
- * specified the function will use "byBlock" (as "byTransactionId"
23583
- * requires the transaction store, which is an optional microservice).
23584
- *
23585
- * When _byBlock_ is used it returns the block number.
23586
- *
23587
- * When _byTransactionId_ is used it returns the block id.
23586
+ * microservice to search the transaction by its id.
23588
23587
  *
23589
23588
  * @param timeout - Timeout in milliseconds. By default it is 15000
23590
23589
  * @example
@@ -23595,18 +23594,39 @@ class Provider {
23595
23594
  * console.log("Transaction mined")
23596
23595
  * ```
23597
23596
  */
23598
- async wait(txId, type = "byBlock", timeout = 15000) {
23599
- const iniTime = Date.now();
23597
+ async wait(txId, type = "byTransactionId", timeout = 15000) {
23598
+ const endTime = Date.now() + timeout;
23600
23599
  if (type === "byTransactionId") {
23601
- while (Date.now() < iniTime + timeout) {
23600
+ while (Date.now() < endTime) {
23602
23601
  await sleep(1000);
23603
23602
  const { transactions } = await this.getTransactionsById([txId]);
23603
+ // If the API node knows about the transaction and
23604
+ // the transaction has been included in a block
23604
23605
  if (transactions &&
23605
23606
  transactions[0] &&
23606
- transactions[0].containing_blocks)
23607
- return {
23608
- blockId: transactions[0].containing_blocks[0],
23609
- };
23607
+ transactions[0].containing_blocks) {
23608
+ // For each of the blocks containing the transaction,
23609
+ // check to see if that block is a parent of head
23610
+ // Get the height of the containing block
23611
+ const blockCandidates = transactions[0].containing_blocks;
23612
+ const blocks = await this.getBlocksById(blockCandidates, {
23613
+ returnBlock: false,
23614
+ returnReceipt: false,
23615
+ });
23616
+ if (blocks && blocks.block_items && blocks.block_items.length > 0) {
23617
+ for (let i = 0; i < blocks.block_items.length; i += 1) {
23618
+ // If the ancestor block of head at the height of the containing
23619
+ // block is the containing block, return that block
23620
+ const blockNumber = Number(blocks.block_items[i].block_height);
23621
+ const blocksHeight = await this.getBlocks(blockNumber);
23622
+ if (blocksHeight) {
23623
+ const blockId = blockCandidates.find((b) => b === blocksHeight[0].block_id);
23624
+ if (blockId)
23625
+ return { blockId, blockNumber };
23626
+ }
23627
+ }
23628
+ }
23629
+ }
23610
23630
  }
23611
23631
  throw new Error(`Transaction not mined after ${timeout} ms`);
23612
23632
  }
@@ -23633,7 +23653,7 @@ class Provider {
23633
23653
  let blockNumber = 0;
23634
23654
  let iniBlock = 0;
23635
23655
  let previousId = "";
23636
- while (Date.now() < iniTime + timeout) {
23656
+ while (Date.now() < endTime) {
23637
23657
  await sleep(1000);
23638
23658
  const { head_topology: headTopology } = await this.getHeadInfo();
23639
23659
  if (blockNumber === 0) {
@@ -23709,7 +23729,7 @@ class Provider {
23709
23729
  };
23710
23730
  }
23711
23731
  if (broadcast) {
23712
- transaction.wait = async (type = "byBlock", timeout = 15000) => {
23732
+ transaction.wait = async (type = "byTransactionId", timeout = 15000) => {
23713
23733
  return this.wait(transaction.id, type, timeout);
23714
23734
  };
23715
23735
  }
@@ -23760,7 +23780,7 @@ class Provider {
23760
23780
  caller_data: callerData,
23761
23781
  });
23762
23782
  if (!response || !response.value)
23763
- throw new Error("no value in the response");
23783
+ return undefined;
23764
23784
  const result = await serializer.deserialize(response.value, serializer.returnTypeName);
23765
23785
  return result;
23766
23786
  }
@@ -23849,7 +23869,7 @@ class Provider {
23849
23869
  * @param name - contract name
23850
23870
  *
23851
23871
  * @example
23852
- * * ```ts
23872
+ * ```ts
23853
23873
  * const provider = new Provider("https://api.koinos.io");
23854
23874
  * const result = await provider.invokeGetContractAddress("koin");
23855
23875
  * console.log(result);
@@ -25095,240 +25115,1166 @@ exports.Transaction = Transaction;
25095
25115
 
25096
25116
  /***/ }),
25097
25117
 
25098
- /***/ 5738:
25099
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
25100
-
25101
- "use strict";
25102
-
25103
- /*! koilib - MIT License (c) Julian Gonzalez (joticajulian@gmail.com) */
25104
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
25105
- if (k2 === undefined) k2 = k;
25106
- var desc = Object.getOwnPropertyDescriptor(m, k);
25107
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
25108
- desc = { enumerable: true, get: function() { return m[k]; } };
25109
- }
25110
- Object.defineProperty(o, k2, desc);
25111
- }) : (function(o, m, k, k2) {
25112
- if (k2 === undefined) k2 = k;
25113
- o[k2] = m[k];
25114
- }));
25115
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25116
- Object.defineProperty(o, "default", { enumerable: true, value: v });
25117
- }) : function(o, v) {
25118
- o["default"] = v;
25119
- });
25120
- var __importStar = (this && this.__importStar) || function (mod) {
25121
- if (mod && mod.__esModule) return mod;
25122
- var result = {};
25123
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25124
- __setModuleDefault(result, mod);
25125
- return result;
25126
- };
25127
- Object.defineProperty(exports, "__esModule", ({ value: true }));
25128
- const utils = __importStar(__webpack_require__(8593));
25129
- const Contract_1 = __webpack_require__(9822);
25130
- const Signer_1 = __webpack_require__(6991);
25131
- const Provider_1 = __webpack_require__(5635);
25132
- const Transaction_1 = __webpack_require__(7592);
25133
- const Serializer_1 = __webpack_require__(7187);
25134
- window.utils = utils;
25135
- window.Contract = Contract_1.Contract;
25136
- window.Signer = Signer_1.Signer;
25137
- window.Provider = Provider_1.Provider;
25138
- window.Transaction = Transaction_1.Transaction;
25139
- window.Serializer = Serializer_1.Serializer;
25140
-
25141
-
25142
- /***/ }),
25143
-
25144
- /***/ 8593:
25145
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
25118
+ /***/ 9154:
25119
+ /***/ ((__unused_webpack_module, exports) => {
25146
25120
 
25147
25121
  "use strict";
25148
25122
 
25149
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
25150
- if (k2 === undefined) k2 = k;
25151
- var desc = Object.getOwnPropertyDescriptor(m, k);
25152
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
25153
- desc = { enumerable: true, get: function() { return m[k]; } };
25154
- }
25155
- Object.defineProperty(o, k2, desc);
25156
- }) : (function(o, m, k, k2) {
25157
- if (k2 === undefined) k2 = k;
25158
- o[k2] = m[k];
25159
- }));
25160
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25161
- Object.defineProperty(o, "default", { enumerable: true, value: v });
25162
- }) : function(o, v) {
25163
- o["default"] = v;
25164
- });
25165
- var __importStar = (this && this.__importStar) || function (mod) {
25166
- if (mod && mod.__esModule) return mod;
25167
- var result = {};
25168
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25169
- __setModuleDefault(result, mod);
25170
- return result;
25171
- };
25172
25123
  Object.defineProperty(exports, "__esModule", ({ value: true }));
25173
- exports.nftAbi = 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;
25174
- const multibase = __importStar(__webpack_require__(6957));
25175
- const sha256_1 = __webpack_require__(3061);
25176
- const ripemd160_1 = __webpack_require__(830);
25177
- /**
25178
- * Converts an hex string to Uint8Array
25179
- */
25180
- function toUint8Array(hex) {
25181
- const pairs = hex.match(/[\dA-F]{2}/gi);
25182
- if (!pairs)
25183
- throw new Error("Invalid hex");
25184
- return new Uint8Array(pairs.map((s) => parseInt(s, 16)) // convert to integers
25185
- );
25186
- }
25187
- exports.toUint8Array = toUint8Array;
25188
- /**
25189
- * Converts Uint8Array to hex string
25190
- */
25191
- function toHexString(buffer) {
25192
- return Array.from(buffer)
25193
- .map((n) => `0${Number(n).toString(16)}`.slice(-2))
25194
- .join("");
25195
- }
25196
- exports.toHexString = toHexString;
25197
- /**
25198
- * Encodes an Uint8Array in base58
25199
- */
25200
- function encodeBase58(buffer) {
25201
- return new TextDecoder().decode(multibase.encode("z", buffer)).slice(1);
25202
- }
25203
- exports.encodeBase58 = encodeBase58;
25204
- /**
25205
- * Decodes a buffer formatted in base58
25206
- */
25207
- function decodeBase58(bs58) {
25208
- return multibase.decode(`z${bs58}`);
25209
- }
25210
- exports.decodeBase58 = decodeBase58;
25211
- /**
25212
- * Encodes an Uint8Array in base64url
25213
- */
25214
- function encodeBase64url(buffer) {
25215
- return new TextDecoder().decode(multibase.encode("U", buffer)).slice(1);
25216
- }
25217
- exports.encodeBase64url = encodeBase64url;
25218
- /**
25219
- * Decodes a buffer formatted in base64url
25220
- */
25221
- function decodeBase64url(bs64url) {
25222
- return multibase.decode(`U${bs64url}`);
25223
- }
25224
- exports.decodeBase64url = decodeBase64url;
25225
- /**
25226
- * Encodes an Uint8Array in base64
25227
- */
25228
- function encodeBase64(buffer) {
25229
- return new TextDecoder().decode(multibase.encode("M", buffer)).slice(1);
25230
- }
25231
- exports.encodeBase64 = encodeBase64;
25232
- function multihash(buffer, code = "sha2-256") {
25233
- switch (code) {
25234
- case "sha2-256": {
25235
- return new Uint8Array([18, buffer.length, ...buffer]);
25236
- }
25237
- default:
25238
- throw new Error(`multihash code ${code} not supported`);
25239
- }
25240
- }
25241
- exports.multihash = multihash;
25242
- /**
25243
- * Decodes a buffer formatted in base64
25244
- */
25245
- function decodeBase64(bs64) {
25246
- return multibase.decode(`M${bs64}`);
25247
- }
25248
- exports.decodeBase64 = decodeBase64;
25249
- /**
25250
- * Calculates the merkle root of sha256 hashes
25251
- */
25252
- function calculateMerkleRoot(hashes) {
25253
- if (!hashes.length)
25254
- return (0, sha256_1.sha256)(new Uint8Array());
25255
- while (hashes.length > 1) {
25256
- for (let i = 0; i < hashes.length; i += 2) {
25257
- if (i + 1 < hashes.length) {
25258
- const leftHash = hashes[i];
25259
- const rightHash = hashes[i + 1];
25260
- const sumHash = (0, sha256_1.sha256)(new Uint8Array([...leftHash, ...rightHash]));
25261
- hashes[i / 2] = new Uint8Array(sumHash);
25262
- }
25263
- else {
25264
- hashes[i / 2] = hashes[i];
25265
- }
25266
- }
25267
- hashes = hashes.slice(0, Math.ceil(hashes.length / 2));
25268
- }
25269
- return hashes[0];
25270
- }
25271
- exports.calculateMerkleRoot = calculateMerkleRoot;
25124
+ exports.nicknamesAbi = void 0;
25272
25125
  /**
25273
- * Encodes a public or private key in base58 using
25274
- * the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
25275
- * and [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format)).
25126
+ * ABI for Nicknames
25276
25127
  *
25277
- * For private keys this encode is also known as
25278
- * wallet import format (WIF).
25279
- */
25280
- function bitcoinEncode(buffer, type, compressed = false) {
25281
- let bufferCheck;
25282
- let prefixBuffer;
25283
- let offsetChecksum;
25284
- if (type === "public") {
25285
- bufferCheck = new Uint8Array(25);
25286
- prefixBuffer = new Uint8Array(21);
25287
- bufferCheck[0] = 0;
25288
- prefixBuffer[0] = 0;
25289
- offsetChecksum = 21;
25290
- }
25291
- else {
25292
- if (compressed) {
25293
- bufferCheck = new Uint8Array(38);
25294
- prefixBuffer = new Uint8Array(34);
25295
- offsetChecksum = 34;
25296
- bufferCheck[33] = 1;
25297
- prefixBuffer[33] = 1;
25298
- }
25299
- else {
25300
- bufferCheck = new Uint8Array(37);
25301
- prefixBuffer = new Uint8Array(33);
25302
- offsetChecksum = 33;
25303
- }
25304
- bufferCheck[0] = 128;
25305
- prefixBuffer[0] = 128;
25306
- }
25307
- prefixBuffer.set(buffer, 1);
25308
- const firstHash = (0, sha256_1.sha256)(prefixBuffer);
25309
- const doubleHash = (0, sha256_1.sha256)(firstHash);
25310
- const checksum = new Uint8Array(4);
25311
- checksum.set(doubleHash.slice(0, 4));
25312
- bufferCheck.set(buffer, 1);
25313
- bufferCheck.set(checksum, offsetChecksum);
25314
- return encodeBase58(bufferCheck);
25315
- }
25316
- exports.bitcoinEncode = bitcoinEncode;
25317
- /**
25318
- * Decodes a public or private key formatted in base58 using
25319
- * the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
25320
- * and [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format)).
25128
+ * @example
25129
+ * ```ts
25130
+ * import { Contract, Provider, utils } from "koilib";
25321
25131
  *
25322
- * For private keys this encode is also known as
25323
- * wallet import format (WIF).
25132
+ * const provider = new Provider("https://api.koinos.io");
25133
+ * const nicknamesContract = new Contract({
25134
+ * id: "1KD9Es7LBBjA1FY3ViCgQJ7e6WH1ipKbhz",
25135
+ * provider,
25136
+ * abi: utils.nicknamesAbi,
25137
+ * });
25138
+ * const nicknames = nicknamesContract.functions;
25139
+ *
25140
+ * ...
25141
+ *
25142
+ * // get the address linked to the nickname "pob"
25143
+ * const pobId = `0x${utils.toHexString(new TextEncoder().encode("pob"))}`;
25144
+ * const { result } = await nicknames.owner_of({ token_id: pobId });
25145
+ * console.log(result);
25146
+ *
25147
+ * // { value: '159myq5YUhhoVWu3wsHKHiJYKPKGUrGiyv' }
25148
+ })();
25149
+ * ```
25324
25150
  */
25325
- function bitcoinDecode(value) {
25326
- const buffer = decodeBase58(value);
25327
- const privateKey = new Uint8Array(32);
25328
- const checksum = new Uint8Array(4);
25329
- // const prefix = buffer[0];
25330
- privateKey.set(buffer.slice(1, 33));
25331
- if (value[0] !== "5") {
25151
+ exports.nicknamesAbi = {
25152
+ methods: {
25153
+ verify_valid_name: {
25154
+ argument: "common.str",
25155
+ return: "common.str",
25156
+ description: "Verify if a new name is valid",
25157
+ entry_point: 0x5ad33d9a,
25158
+ read_only: true,
25159
+ },
25160
+ get_tabi: {
25161
+ argument: "nft.token",
25162
+ return: "nicknames.get_tabi_result",
25163
+ description: "Get TABI",
25164
+ entry_point: 0x653c5618,
25165
+ read_only: true,
25166
+ },
25167
+ get_main_token: {
25168
+ argument: "common.address",
25169
+ return: "nft.token",
25170
+ description: "Get main token of an account",
25171
+ entry_point: 0x3ecda7bf,
25172
+ read_only: true,
25173
+ },
25174
+ get_extended_metadata: {
25175
+ argument: "nft.token",
25176
+ return: "nicknames.extended_metadata",
25177
+ description: "Get extended metadata",
25178
+ entry_point: 0x0327b375,
25179
+ read_only: true,
25180
+ },
25181
+ get_address_by_token_id: {
25182
+ argument: "nft.token",
25183
+ return: "nicknames.address_data",
25184
+ description: "Resolve the address of a nickname by providing the token id",
25185
+ entry_point: 0x1d5eac7d,
25186
+ read_only: true,
25187
+ },
25188
+ get_address: {
25189
+ argument: "common.str",
25190
+ return: "nicknames.address_data",
25191
+ description: "Resolve the address of a nickname",
25192
+ entry_point: 0xa61ae5e8,
25193
+ read_only: true,
25194
+ },
25195
+ get_tokens_by_address: {
25196
+ argument: "nicknames.get_tokens_by_address_args",
25197
+ return: "nft.token_ids",
25198
+ description: "Get tokens owned by an address",
25199
+ entry_point: 0x606f788b,
25200
+ read_only: true,
25201
+ },
25202
+ mint: {
25203
+ argument: "nft.mint_args",
25204
+ return: "",
25205
+ description: "Create new name",
25206
+ entry_point: 0xdc6f17bb,
25207
+ read_only: false,
25208
+ },
25209
+ burn: {
25210
+ argument: "nft.burn_args",
25211
+ return: "",
25212
+ description: "Delete a name",
25213
+ entry_point: 0x859facc5,
25214
+ read_only: false,
25215
+ },
25216
+ transfer: {
25217
+ argument: "nft.transfer_args",
25218
+ return: "",
25219
+ description: "Transfer Name",
25220
+ entry_point: 0x27f576ca,
25221
+ read_only: false,
25222
+ },
25223
+ set_tabi: {
25224
+ argument: "nicknames.set_tabi_args",
25225
+ return: "",
25226
+ description: "Set Text ABI for a token",
25227
+ entry_point: 0xb2b70965,
25228
+ read_only: false,
25229
+ },
25230
+ set_metadata: {
25231
+ argument: "nft.metadata_args",
25232
+ return: "",
25233
+ description: "Set metadata",
25234
+ entry_point: 0x3d59af19,
25235
+ read_only: false,
25236
+ },
25237
+ set_main_token: {
25238
+ argument: "nft.token",
25239
+ return: "",
25240
+ description: "Set main token",
25241
+ entry_point: 0x0b6adde6,
25242
+ read_only: false,
25243
+ },
25244
+ set_address: {
25245
+ argument: "nicknames.set_address_args",
25246
+ return: "",
25247
+ description: "Set address",
25248
+ entry_point: 0x5cffdf33,
25249
+ read_only: false,
25250
+ },
25251
+ set_extended_metadata: {
25252
+ argument: "nicknames.set_extended_metadata_args",
25253
+ return: "",
25254
+ description: "Set extended metadata (including the address to which the name resolves)",
25255
+ entry_point: 0xef128ca3,
25256
+ read_only: false,
25257
+ },
25258
+ name: {
25259
+ argument: "",
25260
+ return: "common.str",
25261
+ description: "Get name of the NFT",
25262
+ entry_point: 0x82a3537f,
25263
+ read_only: true,
25264
+ },
25265
+ symbol: {
25266
+ argument: "",
25267
+ return: "common.str",
25268
+ description: "Get the symbol of the NFT",
25269
+ entry_point: 0xb76a7ca1,
25270
+ read_only: true,
25271
+ },
25272
+ uri: {
25273
+ argument: "",
25274
+ return: "common.str",
25275
+ description: "Get URI of the NFT",
25276
+ entry_point: 0x70e5d7b6,
25277
+ read_only: true,
25278
+ },
25279
+ get_info: {
25280
+ argument: "",
25281
+ return: "nft.info",
25282
+ description: "Get name, symbol and decimals",
25283
+ entry_point: 0xbd7f6850,
25284
+ read_only: true,
25285
+ },
25286
+ owner: {
25287
+ argument: "",
25288
+ return: "common.address",
25289
+ description: "Get the owner of the collection",
25290
+ entry_point: 0x4c102969,
25291
+ read_only: true,
25292
+ },
25293
+ total_supply: {
25294
+ argument: "",
25295
+ return: "common.uint64",
25296
+ description: "Get total supply",
25297
+ entry_point: 0xb0da3934,
25298
+ read_only: true,
25299
+ },
25300
+ royalties: {
25301
+ argument: "",
25302
+ return: "nft.royalties",
25303
+ description: "Get royalties",
25304
+ entry_point: 0x36e90cd0,
25305
+ read_only: true,
25306
+ },
25307
+ balance_of: {
25308
+ argument: "nft.balance_of_args",
25309
+ return: "common.uint64",
25310
+ description: "Get balance of an account",
25311
+ entry_point: 0x5c721497,
25312
+ read_only: true,
25313
+ },
25314
+ owner_of: {
25315
+ argument: "nft.token",
25316
+ return: "common.address",
25317
+ description: "Get the owner of a token",
25318
+ entry_point: 0xed61c847,
25319
+ read_only: true,
25320
+ },
25321
+ metadata_of: {
25322
+ argument: "nft.token",
25323
+ return: "common.str",
25324
+ description: "Get the metadata of a token",
25325
+ entry_point: 0x176c8f7f,
25326
+ read_only: true,
25327
+ },
25328
+ get_tokens: {
25329
+ argument: "nft.get_tokens_args",
25330
+ return: "nft.token_ids",
25331
+ description: "Get list of token IDs",
25332
+ entry_point: 0x7d5b5ed7,
25333
+ read_only: true,
25334
+ },
25335
+ get_tokens_by_owner: {
25336
+ argument: "nft.get_tokens_by_owner_args",
25337
+ return: "nft.token_ids",
25338
+ description: "Get tokens owned by an address",
25339
+ entry_point: 0xfc13eb75,
25340
+ read_only: true,
25341
+ },
25342
+ get_approved: {
25343
+ argument: "nft.token",
25344
+ return: "common.address",
25345
+ description: "Check if an account is approved to operate a token ID",
25346
+ entry_point: 0x4c731020,
25347
+ read_only: true,
25348
+ },
25349
+ is_approved_for_all: {
25350
+ argument: "nft.is_approved_for_all_args",
25351
+ return: "common.boole",
25352
+ description: "Check if an account is approved to operate all tokens owned by other account",
25353
+ entry_point: 0xe7ab8ce5,
25354
+ read_only: true,
25355
+ },
25356
+ get_operator_approvals: {
25357
+ argument: "nft.get_operators_args",
25358
+ return: "nft.get_operators_return",
25359
+ description: "Get allowances of an account",
25360
+ entry_point: 0xdb1bf60e,
25361
+ read_only: true,
25362
+ },
25363
+ transfer_ownership: {
25364
+ argument: "common.address",
25365
+ return: "",
25366
+ description: "Transfer ownership of the collection",
25367
+ entry_point: 0x394be702,
25368
+ read_only: false,
25369
+ },
25370
+ set_royalties: {
25371
+ argument: "nft.royalties",
25372
+ return: "",
25373
+ description: "Set royalties",
25374
+ entry_point: 0x3b5bb56b,
25375
+ read_only: false,
25376
+ },
25377
+ approve: {
25378
+ argument: "nft.approve_args",
25379
+ return: "",
25380
+ description: "Grant permissions to other account to manage a specific Token owned by the user. The user must approve only the accounts he trust.",
25381
+ entry_point: 0x74e21680,
25382
+ read_only: false,
25383
+ },
25384
+ set_approval_for_all: {
25385
+ argument: "nft.set_approval_for_all_args",
25386
+ return: "",
25387
+ description: "Grant permissions to other account to manage all Tokens owned by the user. The user must approve only the accounts he trust.",
25388
+ entry_point: 0x20442216,
25389
+ read_only: false,
25390
+ },
25391
+ },
25392
+ types: "CoQDCidrb2lub3Nib3gtcHJvdG8vbWFuYXNoYXJlci9jb21tb24ucHJvdG8SBmNvbW1vbhoUa29pbm9zL29wdGlvbnMucHJvdG8iGwoDc3RyEhQKBXZhbHVlGAEgASgJUgV2YWx1ZSIeCgZ1aW50MzISFAoFdmFsdWUYASABKA1SBXZhbHVlIiIKBnVpbnQ2NBIYCgV2YWx1ZRgBIAEoBEICMAFSBXZhbHVlIh0KBWJvb2xlEhQKBXZhbHVlGAEgASgIUgV2YWx1ZSIlCgdhZGRyZXNzEhoKBXZhbHVlGAEgASgMQgSAtRgGUgV2YWx1ZSJdCglsaXN0X2FyZ3MSGgoFc3RhcnQYASABKAxCBIC1GAZSBXN0YXJ0EhQKBWxpbWl0GAIgASgFUgVsaW1pdBIeCgpkZXNjZW5kaW5nGAMgASgIUgpkZXNjZW5kaW5nIi0KCWFkZHJlc3NlcxIgCghhY2NvdW50cxgBIAMoDEIEgLUYBlIIYWNjb3VudHNiBnByb3RvMwqkDAoda29pbm9zYm94LXByb3RvL25mdC9uZnQucHJvdG8SA25mdBoUa29pbm9zL29wdGlvbnMucHJvdG8iTQoHcm95YWx0eRIiCgpwZXJjZW50YWdlGAEgASgEQgIwAVIKcGVyY2VudGFnZRIeCgdhZGRyZXNzGAIgASgMQgSAtRgGUgdhZGRyZXNzIi8KCXJveWFsdGllcxIiCgV2YWx1ZRgBIAMoCzIMLm5mdC5yb3lhbHR5UgV2YWx1ZSJMCg1tZXRhZGF0YV9hcmdzEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkEhoKCG1ldGFkYXRhGAIgASgJUghtZXRhZGF0YSJmCgRpbmZvEhIKBG5hbWUYASABKAlSBG5hbWUSFgoGc3ltYm9sGAIgASgJUgZzeW1ib2wSEAoDdXJpGAMgASgJUgN1cmkSIAoLZGVzY3JpcHRpb24YBCABKAlSC2Rlc2NyaXB0aW9uIi0KD2JhbGFuY2Vfb2ZfYXJncxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXIiKAoFdG9rZW4SHwoIdG9rZW5faWQYASABKAxCBIC1GAJSB3Rva2VuSWQiWAoYaXNfYXBwcm92ZWRfZm9yX2FsbF9hcmdzEhoKBW93bmVyGAEgASgMQgSAtRgGUgVvd25lchIgCghvcGVyYXRvchgCIAEoDEIEgLUYBlIIb3BlcmF0b3IiQgoJbWludF9hcmdzEhQKAnRvGAEgASgMQgSAtRgGUgJ0bxIfCgh0b2tlbl9pZBgCIAEoDEIEgLUYAlIHdG9rZW5JZCIsCglidXJuX2FyZ3MSHwoIdG9rZW5faWQYASABKAxCBIC1GAJSB3Rva2VuSWQidAoNdHJhbnNmZXJfYXJncxIYCgRmcm9tGAEgASgMQgSAtRgGUgRmcm9tEhQKAnRvGAIgASgMQgSAtRgGUgJ0bxIfCgh0b2tlbl9pZBgDIAEoDEIEgLUYAlIHdG9rZW5JZBISCgRtZW1vGAQgASgJUgRtZW1vInYKDGFwcHJvdmVfYXJncxIvChBhcHByb3Zlcl9hZGRyZXNzGAEgASgMQgSAtRgGUg9hcHByb3ZlckFkZHJlc3MSFAoCdG8YAiABKAxCBIC1GAZSAnRvEh8KCHRva2VuX2lkGAMgASgMQgSAtRgCUgd0b2tlbklkIpkBChlzZXRfYXBwcm92YWxfZm9yX2FsbF9hcmdzEi8KEGFwcHJvdmVyX2FkZHJlc3MYASABKAxCBIC1GAZSD2FwcHJvdmVyQWRkcmVzcxIvChBvcGVyYXRvcl9hZGRyZXNzGAIgASgMQgSAtRgGUg9vcGVyYXRvckFkZHJlc3MSGgoIYXBwcm92ZWQYAyABKAhSCGFwcHJvdmVkIoIBChJnZXRfb3BlcmF0b3JzX2FyZ3MSGgoFb3duZXIYASABKAxCBIC1GAZSBW93bmVyEhoKBXN0YXJ0GAIgASgMQgSAtRgGUgVzdGFydBIUCgVsaW1pdBgDIAEoBVIFbGltaXQSHgoKZGVzY2VuZGluZxgEIAEoCFIKZGVzY2VuZGluZyJWChRnZXRfb3BlcmF0b3JzX3JldHVybhIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISIgoJb3BlcmF0b3JzGAIgAygMQgSAtRgGUglvcGVyYXRvcnMiYwoPZ2V0X3Rva2Vuc19hcmdzEhoKBXN0YXJ0GAEgASgMQgSAtRgCUgVzdGFydBIUCgVsaW1pdBgCIAEoBVIFbGltaXQSHgoKZGVzY2VuZGluZxgDIAEoCFIKZGVzY2VuZGluZyKIAQoYZ2V0X3Rva2Vuc19ieV9vd25lcl9hcmdzEhoKBW93bmVyGAEgASgMQgSAtRgGUgVvd25lchIaCgVzdGFydBgCIAEoDEIEgLUYAlIFc3RhcnQSFAoFbGltaXQYAyABKAVSBWxpbWl0Eh4KCmRlc2NlbmRpbmcYBCABKAhSCmRlc2NlbmRpbmciLgoJdG9rZW5faWRzEiEKCXRva2VuX2lkcxgBIAMoDEIEgLUYAlIIdG9rZW5JZHNiBnByb3RvMwrQCQoPbmlja25hbWVzLnByb3RvEgluaWNrbmFtZXMaFGtvaW5vcy9vcHRpb25zLnByb3RvIkYKCXRhYmlfaXRlbRIYCgdwYXR0ZXJuGAEgASgJUgdwYXR0ZXJuEh8KC2VudHJ5X3BvaW50GAIgASgNUgplbnRyeVBvaW50IjIKBHRhYmkSKgoFaXRlbXMYASADKAsyFC5uaWNrbmFtZXMudGFiaV9pdGVtUgVpdGVtcyJdCg9nZXRfdGFiaV9yZXN1bHQSKgoFaXRlbXMYASADKAsyFC5uaWNrbmFtZXMudGFiaV9pdGVtUgVpdGVtcxIeCgdhZGRyZXNzGAIgASgMQgSAtRgGUgdhZGRyZXNzIlUKDXNldF90YWJpX2FyZ3MSHwoIdG9rZW5faWQYASABKAxCBIC1GAJSB3Rva2VuSWQSIwoEdGFiaRgCIAEoCzIPLm5pY2tuYW1lcy50YWJpUgR0YWJpIoMBChBzZXRfYWRkcmVzc19hcmdzEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkEh4KB2FkZHJlc3MYAiABKAxCBIC1GAZSB2FkZHJlc3MSLgoTZ292X3Byb3Bvc2FsX3VwZGF0ZRgDIAEoCFIRZ292UHJvcG9zYWxVcGRhdGUi0gEKGnNldF9leHRlbmRlZF9tZXRhZGF0YV9hcmdzEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkEisKEXBlcm1hbmVudF9hZGRyZXNzGAMgASgIUhBwZXJtYW5lbnRBZGRyZXNzElAKJWFkZHJlc3NfbW9kaWZpYWJsZV9vbmx5X2J5X2dvdmVybmFuY2UYBCABKAhSIWFkZHJlc3NNb2RpZmlhYmxlT25seUJ5R292ZXJuYW5jZRIUCgVvdGhlchgKIAEoDFIFb3RoZXIiyQEKEWV4dGVuZGVkX21ldGFkYXRhEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkEisKEXBlcm1hbmVudF9hZGRyZXNzGAMgASgIUhBwZXJtYW5lbnRBZGRyZXNzElAKJWFkZHJlc3NfbW9kaWZpYWJsZV9vbmx5X2J5X2dvdmVybmFuY2UYBCABKAhSIWFkZHJlc3NNb2RpZmlhYmxlT25seUJ5R292ZXJuYW5jZRIUCgVvdGhlchgKIAEoDFIFb3RoZXIiqQEKDGFkZHJlc3NfZGF0YRIaCgV2YWx1ZRgBIAEoDEIEgLUYBlIFdmFsdWUSKwoRcGVybWFuZW50X2FkZHJlc3MYAiABKAhSEHBlcm1hbmVudEFkZHJlc3MSUAolYWRkcmVzc19tb2RpZmlhYmxlX29ubHlfYnlfZ292ZXJuYW5jZRgDIAEoCFIhYWRkcmVzc01vZGlmaWFibGVPbmx5QnlHb3Zlcm5hbmNlIo4BChpnZXRfdG9rZW5zX2J5X2FkZHJlc3NfYXJncxIeCgdhZGRyZXNzGAEgASgMQgSAtRgGUgdhZGRyZXNzEhoKBXN0YXJ0GAIgASgMQgSAtRgCUgVzdGFydBIUCgVsaW1pdBgDIAEoBVIFbGltaXQSHgoKZGVzY2VuZGluZxgEIAEoCFIKZGVzY2VuZGluZ2IGcHJvdG8z",
25393
+ koilib_types: {
25394
+ nested: {
25395
+ common: {
25396
+ nested: {
25397
+ str: {
25398
+ fields: {
25399
+ value: {
25400
+ type: "string",
25401
+ id: 1,
25402
+ },
25403
+ },
25404
+ },
25405
+ uint32: {
25406
+ fields: {
25407
+ value: {
25408
+ type: "uint32",
25409
+ id: 1,
25410
+ },
25411
+ },
25412
+ },
25413
+ uint64: {
25414
+ fields: {
25415
+ value: {
25416
+ type: "uint64",
25417
+ id: 1,
25418
+ options: {
25419
+ jstype: "JS_STRING",
25420
+ },
25421
+ },
25422
+ },
25423
+ },
25424
+ boole: {
25425
+ fields: {
25426
+ value: {
25427
+ type: "bool",
25428
+ id: 1,
25429
+ },
25430
+ },
25431
+ },
25432
+ address: {
25433
+ fields: {
25434
+ value: {
25435
+ type: "bytes",
25436
+ id: 1,
25437
+ options: {
25438
+ "(koinos.btype)": "ADDRESS",
25439
+ },
25440
+ },
25441
+ },
25442
+ },
25443
+ list_args: {
25444
+ fields: {
25445
+ start: {
25446
+ type: "bytes",
25447
+ id: 1,
25448
+ options: {
25449
+ "(koinos.btype)": "ADDRESS",
25450
+ },
25451
+ },
25452
+ limit: {
25453
+ type: "int32",
25454
+ id: 2,
25455
+ },
25456
+ descending: {
25457
+ type: "bool",
25458
+ id: 3,
25459
+ },
25460
+ },
25461
+ },
25462
+ addresses: {
25463
+ fields: {
25464
+ accounts: {
25465
+ rule: "repeated",
25466
+ type: "bytes",
25467
+ id: 1,
25468
+ options: {
25469
+ "(koinos.btype)": "ADDRESS",
25470
+ },
25471
+ },
25472
+ },
25473
+ },
25474
+ },
25475
+ },
25476
+ koinos: {
25477
+ options: {
25478
+ go_package: "github.com/koinos/koinos-proto-golang/koinos",
25479
+ },
25480
+ nested: {
25481
+ bytes_type: {
25482
+ values: {
25483
+ BASE64: 0,
25484
+ BASE58: 1,
25485
+ HEX: 2,
25486
+ BLOCK_ID: 3,
25487
+ TRANSACTION_ID: 4,
25488
+ CONTRACT_ID: 5,
25489
+ ADDRESS: 6,
25490
+ },
25491
+ },
25492
+ _btype: {
25493
+ oneof: ["btype"],
25494
+ },
25495
+ btype: {
25496
+ type: "bytes_type",
25497
+ id: 50000,
25498
+ extend: "google.protobuf.FieldOptions",
25499
+ options: {
25500
+ proto3_optional: true,
25501
+ },
25502
+ },
25503
+ },
25504
+ },
25505
+ nft: {
25506
+ nested: {
25507
+ royalty: {
25508
+ fields: {
25509
+ percentage: {
25510
+ type: "uint64",
25511
+ id: 1,
25512
+ options: {
25513
+ jstype: "JS_STRING",
25514
+ },
25515
+ },
25516
+ address: {
25517
+ type: "bytes",
25518
+ id: 2,
25519
+ options: {
25520
+ "(koinos.btype)": "ADDRESS",
25521
+ },
25522
+ },
25523
+ },
25524
+ },
25525
+ royalties: {
25526
+ fields: {
25527
+ value: {
25528
+ rule: "repeated",
25529
+ type: "royalty",
25530
+ id: 1,
25531
+ },
25532
+ },
25533
+ },
25534
+ metadata_args: {
25535
+ fields: {
25536
+ token_id: {
25537
+ type: "bytes",
25538
+ id: 1,
25539
+ options: {
25540
+ "(koinos.btype)": "HEX",
25541
+ },
25542
+ },
25543
+ metadata: {
25544
+ type: "string",
25545
+ id: 2,
25546
+ },
25547
+ },
25548
+ },
25549
+ info: {
25550
+ fields: {
25551
+ name: {
25552
+ type: "string",
25553
+ id: 1,
25554
+ },
25555
+ symbol: {
25556
+ type: "string",
25557
+ id: 2,
25558
+ },
25559
+ uri: {
25560
+ type: "string",
25561
+ id: 3,
25562
+ },
25563
+ description: {
25564
+ type: "string",
25565
+ id: 4,
25566
+ },
25567
+ },
25568
+ },
25569
+ balance_of_args: {
25570
+ fields: {
25571
+ owner: {
25572
+ type: "bytes",
25573
+ id: 1,
25574
+ options: {
25575
+ "(koinos.btype)": "ADDRESS",
25576
+ },
25577
+ },
25578
+ },
25579
+ },
25580
+ token: {
25581
+ fields: {
25582
+ token_id: {
25583
+ type: "bytes",
25584
+ id: 1,
25585
+ options: {
25586
+ "(koinos.btype)": "HEX",
25587
+ },
25588
+ },
25589
+ },
25590
+ },
25591
+ is_approved_for_all_args: {
25592
+ fields: {
25593
+ owner: {
25594
+ type: "bytes",
25595
+ id: 1,
25596
+ options: {
25597
+ "(koinos.btype)": "ADDRESS",
25598
+ },
25599
+ },
25600
+ operator: {
25601
+ type: "bytes",
25602
+ id: 2,
25603
+ options: {
25604
+ "(koinos.btype)": "ADDRESS",
25605
+ },
25606
+ },
25607
+ },
25608
+ },
25609
+ mint_args: {
25610
+ fields: {
25611
+ to: {
25612
+ type: "bytes",
25613
+ id: 1,
25614
+ options: {
25615
+ "(koinos.btype)": "ADDRESS",
25616
+ },
25617
+ },
25618
+ token_id: {
25619
+ type: "bytes",
25620
+ id: 2,
25621
+ options: {
25622
+ "(koinos.btype)": "HEX",
25623
+ },
25624
+ },
25625
+ },
25626
+ },
25627
+ burn_args: {
25628
+ fields: {
25629
+ token_id: {
25630
+ type: "bytes",
25631
+ id: 1,
25632
+ options: {
25633
+ "(koinos.btype)": "HEX",
25634
+ },
25635
+ },
25636
+ },
25637
+ },
25638
+ transfer_args: {
25639
+ fields: {
25640
+ from: {
25641
+ type: "bytes",
25642
+ id: 1,
25643
+ options: {
25644
+ "(koinos.btype)": "ADDRESS",
25645
+ },
25646
+ },
25647
+ to: {
25648
+ type: "bytes",
25649
+ id: 2,
25650
+ options: {
25651
+ "(koinos.btype)": "ADDRESS",
25652
+ },
25653
+ },
25654
+ token_id: {
25655
+ type: "bytes",
25656
+ id: 3,
25657
+ options: {
25658
+ "(koinos.btype)": "HEX",
25659
+ },
25660
+ },
25661
+ memo: {
25662
+ type: "string",
25663
+ id: 4,
25664
+ },
25665
+ },
25666
+ },
25667
+ approve_args: {
25668
+ fields: {
25669
+ approver_address: {
25670
+ type: "bytes",
25671
+ id: 1,
25672
+ options: {
25673
+ "(koinos.btype)": "ADDRESS",
25674
+ },
25675
+ },
25676
+ to: {
25677
+ type: "bytes",
25678
+ id: 2,
25679
+ options: {
25680
+ "(koinos.btype)": "ADDRESS",
25681
+ },
25682
+ },
25683
+ token_id: {
25684
+ type: "bytes",
25685
+ id: 3,
25686
+ options: {
25687
+ "(koinos.btype)": "HEX",
25688
+ },
25689
+ },
25690
+ },
25691
+ },
25692
+ set_approval_for_all_args: {
25693
+ fields: {
25694
+ approver_address: {
25695
+ type: "bytes",
25696
+ id: 1,
25697
+ options: {
25698
+ "(koinos.btype)": "ADDRESS",
25699
+ },
25700
+ },
25701
+ operator_address: {
25702
+ type: "bytes",
25703
+ id: 2,
25704
+ options: {
25705
+ "(koinos.btype)": "ADDRESS",
25706
+ },
25707
+ },
25708
+ approved: {
25709
+ type: "bool",
25710
+ id: 3,
25711
+ },
25712
+ },
25713
+ },
25714
+ get_operators_args: {
25715
+ fields: {
25716
+ owner: {
25717
+ type: "bytes",
25718
+ id: 1,
25719
+ options: {
25720
+ "(koinos.btype)": "ADDRESS",
25721
+ },
25722
+ },
25723
+ start: {
25724
+ type: "bytes",
25725
+ id: 2,
25726
+ options: {
25727
+ "(koinos.btype)": "ADDRESS",
25728
+ },
25729
+ },
25730
+ limit: {
25731
+ type: "int32",
25732
+ id: 3,
25733
+ },
25734
+ descending: {
25735
+ type: "bool",
25736
+ id: 4,
25737
+ },
25738
+ },
25739
+ },
25740
+ get_operators_return: {
25741
+ fields: {
25742
+ owner: {
25743
+ type: "bytes",
25744
+ id: 1,
25745
+ options: {
25746
+ "(koinos.btype)": "ADDRESS",
25747
+ },
25748
+ },
25749
+ operators: {
25750
+ rule: "repeated",
25751
+ type: "bytes",
25752
+ id: 2,
25753
+ options: {
25754
+ "(koinos.btype)": "ADDRESS",
25755
+ },
25756
+ },
25757
+ },
25758
+ },
25759
+ get_tokens_args: {
25760
+ fields: {
25761
+ start: {
25762
+ type: "bytes",
25763
+ id: 1,
25764
+ options: {
25765
+ "(koinos.btype)": "HEX",
25766
+ },
25767
+ },
25768
+ limit: {
25769
+ type: "int32",
25770
+ id: 2,
25771
+ },
25772
+ descending: {
25773
+ type: "bool",
25774
+ id: 3,
25775
+ },
25776
+ },
25777
+ },
25778
+ get_tokens_by_owner_args: {
25779
+ fields: {
25780
+ owner: {
25781
+ type: "bytes",
25782
+ id: 1,
25783
+ options: {
25784
+ "(koinos.btype)": "ADDRESS",
25785
+ },
25786
+ },
25787
+ start: {
25788
+ type: "bytes",
25789
+ id: 2,
25790
+ options: {
25791
+ "(koinos.btype)": "HEX",
25792
+ },
25793
+ },
25794
+ limit: {
25795
+ type: "int32",
25796
+ id: 3,
25797
+ },
25798
+ descending: {
25799
+ type: "bool",
25800
+ id: 4,
25801
+ },
25802
+ },
25803
+ },
25804
+ token_ids: {
25805
+ fields: {
25806
+ token_ids: {
25807
+ rule: "repeated",
25808
+ type: "bytes",
25809
+ id: 1,
25810
+ options: {
25811
+ "(koinos.btype)": "HEX",
25812
+ },
25813
+ },
25814
+ },
25815
+ },
25816
+ },
25817
+ },
25818
+ nicknames: {
25819
+ nested: {
25820
+ tabi_item: {
25821
+ fields: {
25822
+ pattern: {
25823
+ type: "string",
25824
+ id: 1,
25825
+ },
25826
+ entry_point: {
25827
+ type: "uint32",
25828
+ id: 2,
25829
+ },
25830
+ },
25831
+ },
25832
+ tabi: {
25833
+ fields: {
25834
+ items: {
25835
+ rule: "repeated",
25836
+ type: "tabi_item",
25837
+ id: 1,
25838
+ },
25839
+ },
25840
+ },
25841
+ get_tabi_result: {
25842
+ fields: {
25843
+ items: {
25844
+ rule: "repeated",
25845
+ type: "tabi_item",
25846
+ id: 1,
25847
+ },
25848
+ address: {
25849
+ type: "bytes",
25850
+ id: 2,
25851
+ options: {
25852
+ "(koinos.btype)": "ADDRESS",
25853
+ },
25854
+ },
25855
+ },
25856
+ },
25857
+ set_tabi_args: {
25858
+ fields: {
25859
+ token_id: {
25860
+ type: "bytes",
25861
+ id: 1,
25862
+ options: {
25863
+ "(koinos.btype)": "HEX",
25864
+ },
25865
+ },
25866
+ tabi: {
25867
+ type: "tabi",
25868
+ id: 2,
25869
+ },
25870
+ },
25871
+ },
25872
+ set_address_args: {
25873
+ fields: {
25874
+ token_id: {
25875
+ type: "bytes",
25876
+ id: 1,
25877
+ options: {
25878
+ "(koinos.btype)": "HEX",
25879
+ },
25880
+ },
25881
+ address: {
25882
+ type: "bytes",
25883
+ id: 2,
25884
+ options: {
25885
+ "(koinos.btype)": "ADDRESS",
25886
+ },
25887
+ },
25888
+ gov_proposal_update: {
25889
+ type: "bool",
25890
+ id: 3,
25891
+ },
25892
+ },
25893
+ },
25894
+ set_extended_metadata_args: {
25895
+ fields: {
25896
+ token_id: {
25897
+ type: "bytes",
25898
+ id: 1,
25899
+ options: {
25900
+ "(koinos.btype)": "HEX",
25901
+ },
25902
+ },
25903
+ permanent_address: {
25904
+ type: "bool",
25905
+ id: 3,
25906
+ },
25907
+ address_modifiable_only_by_governance: {
25908
+ type: "bool",
25909
+ id: 4,
25910
+ },
25911
+ other: {
25912
+ type: "bytes",
25913
+ id: 10,
25914
+ },
25915
+ },
25916
+ },
25917
+ extended_metadata: {
25918
+ fields: {
25919
+ token_id: {
25920
+ type: "bytes",
25921
+ id: 1,
25922
+ options: {
25923
+ "(koinos.btype)": "HEX",
25924
+ },
25925
+ },
25926
+ permanent_address: {
25927
+ type: "bool",
25928
+ id: 3,
25929
+ },
25930
+ address_modifiable_only_by_governance: {
25931
+ type: "bool",
25932
+ id: 4,
25933
+ },
25934
+ other: {
25935
+ type: "bytes",
25936
+ id: 10,
25937
+ },
25938
+ },
25939
+ },
25940
+ address_data: {
25941
+ fields: {
25942
+ value: {
25943
+ type: "bytes",
25944
+ id: 1,
25945
+ options: {
25946
+ "(koinos.btype)": "ADDRESS",
25947
+ },
25948
+ },
25949
+ permanent_address: {
25950
+ type: "bool",
25951
+ id: 2,
25952
+ },
25953
+ address_modifiable_only_by_governance: {
25954
+ type: "bool",
25955
+ id: 3,
25956
+ },
25957
+ },
25958
+ },
25959
+ get_tokens_by_address_args: {
25960
+ fields: {
25961
+ address: {
25962
+ type: "bytes",
25963
+ id: 1,
25964
+ options: {
25965
+ "(koinos.btype)": "ADDRESS",
25966
+ },
25967
+ },
25968
+ start: {
25969
+ type: "bytes",
25970
+ id: 2,
25971
+ options: {
25972
+ "(koinos.btype)": "HEX",
25973
+ },
25974
+ },
25975
+ limit: {
25976
+ type: "int32",
25977
+ id: 3,
25978
+ },
25979
+ descending: {
25980
+ type: "bool",
25981
+ id: 4,
25982
+ },
25983
+ },
25984
+ },
25985
+ },
25986
+ },
25987
+ },
25988
+ },
25989
+ events: {
25990
+ "collections.mint_event": {
25991
+ type: "nft.mint_args",
25992
+ argument: "nft.mint_args",
25993
+ },
25994
+ "collections.burn_event": {
25995
+ type: "nft.burn_args",
25996
+ argument: "nft.burn_args",
25997
+ },
25998
+ "collections.transfer_event": {
25999
+ type: "nft.transfer_args",
26000
+ argument: "nft.transfer_args",
26001
+ },
26002
+ "nicknames.set_tabi": {
26003
+ type: "nicknames.set_tabi_args",
26004
+ argument: "nicknames.set_tabi_args",
26005
+ },
26006
+ "collections.set_metadata_event": {
26007
+ type: "nft.metadata_args",
26008
+ argument: "nft.metadata_args",
26009
+ },
26010
+ address_updated: {
26011
+ type: "nicknames.set_address_args",
26012
+ argument: "nicknames.set_address_args",
26013
+ },
26014
+ extended_metadata_updated: {
26015
+ type: "nicknames.extended_metadata",
26016
+ argument: "nicknames.extended_metadata",
26017
+ },
26018
+ "collections.owner_event": {
26019
+ type: "common.address",
26020
+ argument: "common.address",
26021
+ },
26022
+ "collections.royalties_event": {
26023
+ type: "nft.royalties",
26024
+ argument: "nft.royalties",
26025
+ },
26026
+ "collections.token_approval_event": {
26027
+ type: "nft.approve_args",
26028
+ argument: "nft.approve_args",
26029
+ },
26030
+ "collections.operator_approval_event": {
26031
+ type: "nft.set_approval_for_all_args",
26032
+ argument: "nft.set_approval_for_all_args",
26033
+ },
26034
+ },
26035
+ };
26036
+ exports["default"] = exports.nicknamesAbi;
26037
+
26038
+
26039
+ /***/ }),
26040
+
26041
+ /***/ 5738:
26042
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
26043
+
26044
+ "use strict";
26045
+
26046
+ /*! koilib - MIT License (c) Julian Gonzalez (joticajulian@gmail.com) */
26047
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
26048
+ if (k2 === undefined) k2 = k;
26049
+ var desc = Object.getOwnPropertyDescriptor(m, k);
26050
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
26051
+ desc = { enumerable: true, get: function() { return m[k]; } };
26052
+ }
26053
+ Object.defineProperty(o, k2, desc);
26054
+ }) : (function(o, m, k, k2) {
26055
+ if (k2 === undefined) k2 = k;
26056
+ o[k2] = m[k];
26057
+ }));
26058
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
26059
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26060
+ }) : function(o, v) {
26061
+ o["default"] = v;
26062
+ });
26063
+ var __importStar = (this && this.__importStar) || function (mod) {
26064
+ if (mod && mod.__esModule) return mod;
26065
+ var result = {};
26066
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26067
+ __setModuleDefault(result, mod);
26068
+ return result;
26069
+ };
26070
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
26071
+ const utils = __importStar(__webpack_require__(8593));
26072
+ const Contract_1 = __webpack_require__(9822);
26073
+ const Signer_1 = __webpack_require__(6991);
26074
+ const Provider_1 = __webpack_require__(5635);
26075
+ const Transaction_1 = __webpack_require__(7592);
26076
+ const Serializer_1 = __webpack_require__(7187);
26077
+ window.utils = utils;
26078
+ window.Contract = Contract_1.Contract;
26079
+ window.Signer = Signer_1.Signer;
26080
+ window.Provider = Provider_1.Provider;
26081
+ window.Transaction = Transaction_1.Transaction;
26082
+ window.Serializer = Serializer_1.Serializer;
26083
+
26084
+
26085
+ /***/ }),
26086
+
26087
+ /***/ 8593:
26088
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
26089
+
26090
+ "use strict";
26091
+
26092
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
26093
+ if (k2 === undefined) k2 = k;
26094
+ var desc = Object.getOwnPropertyDescriptor(m, k);
26095
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
26096
+ desc = { enumerable: true, get: function() { return m[k]; } };
26097
+ }
26098
+ Object.defineProperty(o, k2, desc);
26099
+ }) : (function(o, m, k, k2) {
26100
+ if (k2 === undefined) k2 = k;
26101
+ o[k2] = m[k];
26102
+ }));
26103
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
26104
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26105
+ }) : function(o, v) {
26106
+ o["default"] = v;
26107
+ });
26108
+ var __importStar = (this && this.__importStar) || function (mod) {
26109
+ if (mod && mod.__esModule) return mod;
26110
+ var result = {};
26111
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26112
+ __setModuleDefault(result, mod);
26113
+ return result;
26114
+ };
26115
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26116
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
26117
+ };
26118
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
26119
+ exports.nftAbi = 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;
26120
+ const multibase = __importStar(__webpack_require__(6957));
26121
+ const sha256_1 = __webpack_require__(3061);
26122
+ const ripemd160_1 = __webpack_require__(830);
26123
+ /**
26124
+ * Converts an hex string to Uint8Array
26125
+ */
26126
+ function toUint8Array(hex) {
26127
+ const pairs = hex.match(/[\dA-F]{2}/gi);
26128
+ if (!pairs)
26129
+ throw new Error("Invalid hex");
26130
+ return new Uint8Array(pairs.map((s) => parseInt(s, 16)) // convert to integers
26131
+ );
26132
+ }
26133
+ exports.toUint8Array = toUint8Array;
26134
+ /**
26135
+ * Converts Uint8Array to hex string
26136
+ */
26137
+ function toHexString(buffer) {
26138
+ return Array.from(buffer)
26139
+ .map((n) => `0${Number(n).toString(16)}`.slice(-2))
26140
+ .join("");
26141
+ }
26142
+ exports.toHexString = toHexString;
26143
+ /**
26144
+ * Encodes an Uint8Array in base58
26145
+ */
26146
+ function encodeBase58(buffer) {
26147
+ return new TextDecoder().decode(multibase.encode("z", buffer)).slice(1);
26148
+ }
26149
+ exports.encodeBase58 = encodeBase58;
26150
+ /**
26151
+ * Decodes a buffer formatted in base58
26152
+ */
26153
+ function decodeBase58(bs58) {
26154
+ return multibase.decode(`z${bs58}`);
26155
+ }
26156
+ exports.decodeBase58 = decodeBase58;
26157
+ /**
26158
+ * Encodes an Uint8Array in base64url
26159
+ */
26160
+ function encodeBase64url(buffer) {
26161
+ return new TextDecoder().decode(multibase.encode("U", buffer)).slice(1);
26162
+ }
26163
+ exports.encodeBase64url = encodeBase64url;
26164
+ /**
26165
+ * Decodes a buffer formatted in base64url
26166
+ */
26167
+ function decodeBase64url(bs64url) {
26168
+ return multibase.decode(`U${bs64url}`);
26169
+ }
26170
+ exports.decodeBase64url = decodeBase64url;
26171
+ /**
26172
+ * Encodes an Uint8Array in base64
26173
+ */
26174
+ function encodeBase64(buffer) {
26175
+ return new TextDecoder().decode(multibase.encode("M", buffer)).slice(1);
26176
+ }
26177
+ exports.encodeBase64 = encodeBase64;
26178
+ function multihash(buffer, code = "sha2-256") {
26179
+ switch (code) {
26180
+ case "sha2-256": {
26181
+ return new Uint8Array([18, buffer.length, ...buffer]);
26182
+ }
26183
+ default:
26184
+ throw new Error(`multihash code ${code} not supported`);
26185
+ }
26186
+ }
26187
+ exports.multihash = multihash;
26188
+ /**
26189
+ * Decodes a buffer formatted in base64
26190
+ */
26191
+ function decodeBase64(bs64) {
26192
+ return multibase.decode(`M${bs64}`);
26193
+ }
26194
+ exports.decodeBase64 = decodeBase64;
26195
+ /**
26196
+ * Calculates the merkle root of sha256 hashes
26197
+ */
26198
+ function calculateMerkleRoot(hashes) {
26199
+ if (!hashes.length)
26200
+ return (0, sha256_1.sha256)(new Uint8Array());
26201
+ while (hashes.length > 1) {
26202
+ for (let i = 0; i < hashes.length; i += 2) {
26203
+ if (i + 1 < hashes.length) {
26204
+ const leftHash = hashes[i];
26205
+ const rightHash = hashes[i + 1];
26206
+ const sumHash = (0, sha256_1.sha256)(new Uint8Array([...leftHash, ...rightHash]));
26207
+ hashes[i / 2] = new Uint8Array(sumHash);
26208
+ }
26209
+ else {
26210
+ hashes[i / 2] = hashes[i];
26211
+ }
26212
+ }
26213
+ hashes = hashes.slice(0, Math.ceil(hashes.length / 2));
26214
+ }
26215
+ return hashes[0];
26216
+ }
26217
+ exports.calculateMerkleRoot = calculateMerkleRoot;
26218
+ /**
26219
+ * Encodes a public or private key in base58 using
26220
+ * the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
26221
+ * and [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format)).
26222
+ *
26223
+ * For private keys this encode is also known as
26224
+ * wallet import format (WIF).
26225
+ */
26226
+ function bitcoinEncode(buffer, type, compressed = false) {
26227
+ let bufferCheck;
26228
+ let prefixBuffer;
26229
+ let offsetChecksum;
26230
+ if (type === "public") {
26231
+ bufferCheck = new Uint8Array(25);
26232
+ prefixBuffer = new Uint8Array(21);
26233
+ bufferCheck[0] = 0;
26234
+ prefixBuffer[0] = 0;
26235
+ offsetChecksum = 21;
26236
+ }
26237
+ else {
26238
+ if (compressed) {
26239
+ bufferCheck = new Uint8Array(38);
26240
+ prefixBuffer = new Uint8Array(34);
26241
+ offsetChecksum = 34;
26242
+ bufferCheck[33] = 1;
26243
+ prefixBuffer[33] = 1;
26244
+ }
26245
+ else {
26246
+ bufferCheck = new Uint8Array(37);
26247
+ prefixBuffer = new Uint8Array(33);
26248
+ offsetChecksum = 33;
26249
+ }
26250
+ bufferCheck[0] = 128;
26251
+ prefixBuffer[0] = 128;
26252
+ }
26253
+ prefixBuffer.set(buffer, 1);
26254
+ const firstHash = (0, sha256_1.sha256)(prefixBuffer);
26255
+ const doubleHash = (0, sha256_1.sha256)(firstHash);
26256
+ const checksum = new Uint8Array(4);
26257
+ checksum.set(doubleHash.slice(0, 4));
26258
+ bufferCheck.set(buffer, 1);
26259
+ bufferCheck.set(checksum, offsetChecksum);
26260
+ return encodeBase58(bufferCheck);
26261
+ }
26262
+ exports.bitcoinEncode = bitcoinEncode;
26263
+ /**
26264
+ * Decodes a public or private key formatted in base58 using
26265
+ * the bitcoin format (see [Bitcoin Base58Check encoding](https://en.bitcoin.it/wiki/Base58Check_encoding)
26266
+ * and [Bitcoin WIF](https://en.bitcoin.it/wiki/Wallet_import_format)).
26267
+ *
26268
+ * For private keys this encode is also known as
26269
+ * wallet import format (WIF).
26270
+ */
26271
+ function bitcoinDecode(value) {
26272
+ const buffer = decodeBase58(value);
26273
+ const privateKey = new Uint8Array(32);
26274
+ const checksum = new Uint8Array(4);
26275
+ // const prefix = buffer[0];
26276
+ privateKey.set(buffer.slice(1, 33));
26277
+ if (value[0] !== "5") {
25332
26278
  // compressed
25333
26279
  checksum.set(buffer.slice(34, 38));
25334
26280
  }
@@ -25437,6 +26383,8 @@ exports.isChecksumWif = isChecksumWif;
25437
26383
  */
25438
26384
  function formatUnits(value, decimals) {
25439
26385
  let v = typeof value === "string" ? value : BigInt(value).toString();
26386
+ if (!decimals)
26387
+ return v;
25440
26388
  const sign = v[0] === "-" ? "-" : "";
25441
26389
  v = v.replace("-", "").padStart(decimals + 1, "0");
25442
26390
  const integerPart = v
@@ -25690,6 +26638,13 @@ exports.tokenAbi = {
25690
26638
  read_only: false,
25691
26639
  entry_point: 0xdc6f17bb,
25692
26640
  },
26641
+ burn: {
26642
+ argument: "token.burn_args",
26643
+ return: "",
26644
+ description: "Burn tokens",
26645
+ read_only: false,
26646
+ entry_point: 0x859facc5,
26647
+ },
25693
26648
  },
25694
26649
  types: "CpoICiJrb2lub3MvY29udHJhY3RzL3Rva2VuL3Rva2VuLnByb3RvEhZrb2lub3MuY29udHJhY3RzLnRva2VuGhRrb2lub3Mvb3B0aW9ucy5wcm90byIQCg5uYW1lX2FyZ3VtZW50cyIjCgtuYW1lX3Jlc3VsdBIUCgV2YWx1ZRgBIAEoCVIFdmFsdWUiEgoQc3ltYm9sX2FyZ3VtZW50cyIlCg1zeW1ib2xfcmVzdWx0EhQKBXZhbHVlGAEgASgJUgV2YWx1ZSIUChJkZWNpbWFsc19hcmd1bWVudHMiJwoPZGVjaW1hbHNfcmVzdWx0EhQKBXZhbHVlGAEgASgNUgV2YWx1ZSIYChZ0b3RhbF9zdXBwbHlfYXJndW1lbnRzIi8KE3RvdGFsX3N1cHBseV9yZXN1bHQSGAoFdmFsdWUYASABKARCAjABUgV2YWx1ZSIyChRiYWxhbmNlX29mX2FyZ3VtZW50cxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXIiLQoRYmFsYW5jZV9vZl9yZXN1bHQSGAoFdmFsdWUYASABKARCAjABUgV2YWx1ZSJeChJ0cmFuc2Zlcl9hcmd1bWVudHMSGAoEZnJvbRgBIAEoDEIEgLUYBlIEZnJvbRIUCgJ0bxgCIAEoDEIEgLUYBlICdG8SGAoFdmFsdWUYAyABKARCAjABUgV2YWx1ZSIRCg90cmFuc2Zlcl9yZXN1bHQiQAoObWludF9hcmd1bWVudHMSFAoCdG8YASABKAxCBIC1GAZSAnRvEhgKBXZhbHVlGAIgASgEQgIwAVIFdmFsdWUiDQoLbWludF9yZXN1bHQiRAoOYnVybl9hcmd1bWVudHMSGAoEZnJvbRgBIAEoDEIEgLUYBlIEZnJvbRIYCgV2YWx1ZRgCIAEoBEICMAFSBXZhbHVlIg0KC2J1cm5fcmVzdWx0IioKDmJhbGFuY2Vfb2JqZWN0EhgKBXZhbHVlGAEgASgEQgIwAVIFdmFsdWUiQAoKYnVybl9ldmVudBIYCgRmcm9tGAEgASgMQgSAtRgGUgRmcm9tEhgKBXZhbHVlGAIgASgEQgIwAVIFdmFsdWUiPAoKbWludF9ldmVudBIUCgJ0bxgBIAEoDEIEgLUYBlICdG8SGAoFdmFsdWUYAiABKARCAjABUgV2YWx1ZSJaCg50cmFuc2Zlcl9ldmVudBIYCgRmcm9tGAEgASgMQgSAtRgGUgRmcm9tEhQKAnRvGAIgASgMQgSAtRgGUgJ0bxIYCgV2YWx1ZRgDIAEoBEICMAFSBXZhbHVlQj5aPGdpdGh1Yi5jb20va29pbm9zL2tvaW5vcy1wcm90by1nb2xhbmcva29pbm9zL2NvbnRyYWN0cy90b2tlbmIGcHJvdG8zCvMKCgt0b2tlbi5wcm90bxIFdG9rZW4aFGtvaW5vcy9vcHRpb25zLnByb3RvIhsKA3N0chIUCgV2YWx1ZRgBIAEoCVIFdmFsdWUiHgoGdWludDMyEhQKBXZhbHVlGAEgASgNUgV2YWx1ZSIiCgZ1aW50NjQSGAoFdmFsdWUYASABKARCAjABUgV2YWx1ZSIdCgVib29sZRIUCgV2YWx1ZRgBIAEoCFIFdmFsdWUicAoEaW5mbxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBnN5bWJvbBgCIAEoCVIGc3ltYm9sEhoKCGRlY2ltYWxzGAMgASgNUghkZWNpbWFscxIgCgtkZXNjcmlwdGlvbhgEIAEoCVILZGVzY3JpcHRpb24iLQoPYmFsYW5jZV9vZl9hcmdzEhoKBW93bmVyGAEgASgMQgSAtRgGUgVvd25lciJtCg10cmFuc2Zlcl9hcmdzEhgKBGZyb20YASABKAxCBIC1GAZSBGZyb20SFAoCdG8YAiABKAxCBIC1GAZSAnRvEhgKBXZhbHVlGAMgASgEQgIwAVIFdmFsdWUSEgoEbWVtbxgEIAEoCVIEbWVtbyI7CgltaW50X2FyZ3MSFAoCdG8YASABKAxCBIC1GAZSAnRvEhgKBXZhbHVlGAIgASgEQgIwAVIFdmFsdWUiPwoJYnVybl9hcmdzEhgKBGZyb20YASABKAxCBIC1GAZSBGZyb20SGAoFdmFsdWUYAiABKARCAjABUgV2YWx1ZSJkCgxhcHByb3ZlX2FyZ3MSGgoFb3duZXIYASABKAxCBIC1GAZSBW93bmVyEh4KB3NwZW5kZXIYAiABKAxCBIC1GAZSB3NwZW5kZXISGAoFdmFsdWUYAyABKARCAjABUgV2YWx1ZSJMCg5hbGxvd2FuY2VfYXJncxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISHgoHc3BlbmRlchgCIAEoDEIEgLUYBlIHc3BlbmRlciKDAQoTZ2V0X2FsbG93YW5jZXNfYXJncxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISGgoFc3RhcnQYAiABKAxCBIC1GAZSBXN0YXJ0EhQKBWxpbWl0GAMgASgFUgVsaW1pdBIeCgpkZXNjZW5kaW5nGAQgASgIUgpkZXNjZW5kaW5nIkkKDXNwZW5kZXJfdmFsdWUSHgoHc3BlbmRlchgBIAEoDEIEgLUYBlIHc3BlbmRlchIYCgV2YWx1ZRgCIAEoBEICMAFSBXZhbHVlImkKFWdldF9hbGxvd2FuY2VzX3JldHVybhIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISNAoKYWxsb3dhbmNlcxgCIAMoCzIULnRva2VuLnNwZW5kZXJfdmFsdWVSCmFsbG93YW5jZXMiWgoOdHJhbnNmZXJfZXZlbnQSGAoEZnJvbRgBIAEoDEIEgLUYBlIEZnJvbRIUCgJ0bxgCIAEoDEIEgLUYBlICdG8SGAoFdmFsdWUYAyABKARCAjABUgV2YWx1ZSI8CgptaW50X2V2ZW50EhQKAnRvGAEgASgMQgSAtRgGUgJ0bxIYCgV2YWx1ZRgCIAEoBEICMAFSBXZhbHVlIkAKCmJ1cm5fZXZlbnQSGAoEZnJvbRgBIAEoDEIEgLUYBlIEZnJvbRIYCgV2YWx1ZRgCIAEoBEICMAFSBXZhbHVlImUKDWFwcHJvdmVfZXZlbnQSGgoFb3duZXIYASABKAxCBIC1GAZSBW93bmVyEh4KB3NwZW5kZXIYAiABKAxCBIC1GAZSB3NwZW5kZXISGAoFdmFsdWUYAyABKARCAjABUgV2YWx1ZWIGcHJvdG8z",
25695
26650
  koilib_types: {
@@ -26268,6 +27223,20 @@ exports.tokenAbi = {
26268
27223
  },
26269
27224
  },
26270
27225
  },
27226
+ events: {
27227
+ "token.mint_event": {
27228
+ argument: "token.mint_args",
27229
+ type: "token.mint_args",
27230
+ },
27231
+ "token.transfer_event": {
27232
+ argument: "token.transfer_args",
27233
+ type: "token.transfer_args",
27234
+ },
27235
+ "token.burn_event": {
27236
+ argument: "token.burn_args",
27237
+ type: "token.burn_args",
27238
+ },
27239
+ },
26271
27240
  };
26272
27241
  /**
26273
27242
  * ABI for NFTs
@@ -26452,6 +27421,13 @@ exports.nftAbi = {
26452
27421
  read_only: false,
26453
27422
  entry_point: 0xdc6f17bb,
26454
27423
  },
27424
+ burn: {
27425
+ argument: "nft.burn_args",
27426
+ return: "",
27427
+ description: "Burn NFT",
27428
+ read_only: false,
27429
+ entry_point: 0x859facc5,
27430
+ },
26455
27431
  },
26456
27432
  types: "CoQDCidrb2lub3Nib3gtcHJvdG8vbWFuYXNoYXJlci9jb21tb24ucHJvdG8SBmNvbW1vbhoUa29pbm9zL29wdGlvbnMucHJvdG8iGwoDc3RyEhQKBXZhbHVlGAEgASgJUgV2YWx1ZSIeCgZ1aW50MzISFAoFdmFsdWUYASABKA1SBXZhbHVlIiIKBnVpbnQ2NBIYCgV2YWx1ZRgBIAEoBEICMAFSBXZhbHVlIh0KBWJvb2xlEhQKBXZhbHVlGAEgASgIUgV2YWx1ZSIlCgdhZGRyZXNzEhoKBXZhbHVlGAEgASgMQgSAtRgGUgV2YWx1ZSJdCglsaXN0X2FyZ3MSGgoFc3RhcnQYASABKAxCBIC1GAZSBXN0YXJ0EhQKBWxpbWl0GAIgASgFUgVsaW1pdBIeCgpkZXNjZW5kaW5nGAMgASgIUgpkZXNjZW5kaW5nIi0KCWFkZHJlc3NlcxIgCghhY2NvdW50cxgBIAMoDEIEgLUYBlIIYWNjb3VudHNiBnByb3RvMwqQDAoJbmZ0LnByb3RvEgNuZnQaFGtvaW5vcy9vcHRpb25zLnByb3RvIk0KB3JveWFsdHkSIgoKcGVyY2VudGFnZRgBIAEoBEICMAFSCnBlcmNlbnRhZ2USHgoHYWRkcmVzcxgCIAEoDEIEgLUYBlIHYWRkcmVzcyIvCglyb3lhbHRpZXMSIgoFdmFsdWUYASADKAsyDC5uZnQucm95YWx0eVIFdmFsdWUiTAoNbWV0YWRhdGFfYXJncxIfCgh0b2tlbl9pZBgBIAEoDEIEgLUYAlIHdG9rZW5JZBIaCghtZXRhZGF0YRgCIAEoCVIIbWV0YWRhdGEiZgoEaW5mbxISCgRuYW1lGAEgASgJUgRuYW1lEhYKBnN5bWJvbBgCIAEoCVIGc3ltYm9sEhAKA3VyaRgDIAEoCVIDdXJpEiAKC2Rlc2NyaXB0aW9uGAQgASgJUgtkZXNjcmlwdGlvbiItCg9iYWxhbmNlX29mX2FyZ3MSGgoFb3duZXIYASABKAxCBIC1GAZSBW93bmVyIigKBXRva2VuEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkIlgKGGlzX2FwcHJvdmVkX2Zvcl9hbGxfYXJncxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISIAoIb3BlcmF0b3IYAiABKAxCBIC1GAZSCG9wZXJhdG9yIkIKCW1pbnRfYXJncxIUCgJ0bxgBIAEoDEIEgLUYBlICdG8SHwoIdG9rZW5faWQYAiABKAxCBIC1GAJSB3Rva2VuSWQiLAoJYnVybl9hcmdzEh8KCHRva2VuX2lkGAEgASgMQgSAtRgCUgd0b2tlbklkInQKDXRyYW5zZmVyX2FyZ3MSGAoEZnJvbRgBIAEoDEIEgLUYBlIEZnJvbRIUCgJ0bxgCIAEoDEIEgLUYBlICdG8SHwoIdG9rZW5faWQYAyABKAxCBIC1GAJSB3Rva2VuSWQSEgoEbWVtbxgEIAEoCVIEbWVtbyJ2CgxhcHByb3ZlX2FyZ3MSLwoQYXBwcm92ZXJfYWRkcmVzcxgBIAEoDEIEgLUYBlIPYXBwcm92ZXJBZGRyZXNzEhQKAnRvGAIgASgMQgSAtRgGUgJ0bxIfCgh0b2tlbl9pZBgDIAEoDEIEgLUYAlIHdG9rZW5JZCKZAQoZc2V0X2FwcHJvdmFsX2Zvcl9hbGxfYXJncxIvChBhcHByb3Zlcl9hZGRyZXNzGAEgASgMQgSAtRgGUg9hcHByb3ZlckFkZHJlc3MSLwoQb3BlcmF0b3JfYWRkcmVzcxgCIAEoDEIEgLUYBlIPb3BlcmF0b3JBZGRyZXNzEhoKCGFwcHJvdmVkGAMgASgIUghhcHByb3ZlZCKCAQoSZ2V0X29wZXJhdG9yc19hcmdzEhoKBW93bmVyGAEgASgMQgSAtRgGUgVvd25lchIaCgVzdGFydBgCIAEoDEIEgLUYBlIFc3RhcnQSFAoFbGltaXQYAyABKAVSBWxpbWl0Eh4KCmRlc2NlbmRpbmcYBCABKAhSCmRlc2NlbmRpbmciVgoUZ2V0X29wZXJhdG9yc19yZXR1cm4SGgoFb3duZXIYASABKAxCBIC1GAZSBW93bmVyEiIKCW9wZXJhdG9ycxgCIAMoDEIEgLUYBlIJb3BlcmF0b3JzImMKD2dldF90b2tlbnNfYXJncxIaCgVzdGFydBgBIAEoDEIEgLUYAlIFc3RhcnQSFAoFbGltaXQYAiABKAVSBWxpbWl0Eh4KCmRlc2NlbmRpbmcYAyABKAhSCmRlc2NlbmRpbmciiAEKGGdldF90b2tlbnNfYnlfb3duZXJfYXJncxIaCgVvd25lchgBIAEoDEIEgLUYBlIFb3duZXISGgoFc3RhcnQYAiABKAxCBIC1GAJSBXN0YXJ0EhQKBWxpbWl0GAMgASgFUgVsaW1pdBIeCgpkZXNjZW5kaW5nGAQgASgIUgpkZXNjZW5kaW5nIi4KCXRva2VuX2lkcxIhCgl0b2tlbl9pZHMYASADKAxCBIC1GAJSCHRva2VuSWRzYgZwcm90bzM=",
26457
27433
  koilib_types: {
@@ -26881,27 +27857,39 @@ exports.nftAbi = {
26881
27857
  events: {
26882
27858
  "collections.owner_event": {
26883
27859
  argument: "common.address",
27860
+ type: "common.address",
26884
27861
  },
26885
27862
  "collections.royalties_event": {
26886
27863
  argument: "nft.royalties",
27864
+ type: "nft.royalties",
26887
27865
  },
26888
27866
  "collections.set_metadata_event": {
26889
27867
  argument: "nft.metadata_args",
27868
+ type: "nft.metadata_args",
26890
27869
  },
26891
27870
  "collections.token_approval_event": {
26892
27871
  argument: "nft.approve_args",
27872
+ type: "nft.approve_args",
26893
27873
  },
26894
27874
  "collections.operator_approval_event": {
26895
27875
  argument: "nft.set_approval_for_all_args",
27876
+ type: "nft.set_approval_for_all_args",
26896
27877
  },
26897
27878
  "collections.transfer_event": {
26898
27879
  argument: "nft.transfer_args",
27880
+ type: "nft.transfer_args",
26899
27881
  },
26900
27882
  "collections.mint_event": {
26901
27883
  argument: "nft.mint_args",
27884
+ type: "nft.mint_args",
27885
+ },
27886
+ "collections.burn_event": {
27887
+ argument: "nft.burn_args",
27888
+ type: "nft.burn_args",
26902
27889
  },
26903
27890
  },
26904
27891
  };
27892
+ __exportStar(__webpack_require__(9154), exports);
26905
27893
  //export const ProtocolTypes = protocolJson;
26906
27894
 
26907
27895