git.delta.rocks / unique-network / refs/commits / 7c531595588c

difftreelog

chore generate stubs

PraetorP2022-12-15parent: #62800e3.patch.diff
in: master

11 files changed

modifiedpallets/fungible/src/stubs/UniqueFungible.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/fungible/src/stubs/UniqueFungible.soldiffbeforeafterboth
--- a/pallets/fungible/src/stubs/UniqueFungible.sol
+++ b/pallets/fungible/src/stubs/UniqueFungible.sol
@@ -18,7 +18,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 contract Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -191,6 +191,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -283,19 +284,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple21 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (Tuple26 memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple21(false, new uint256[](0));
+		return Tuple26(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple24[] memory) {
+	function collectionNestingPermissions() public view returns (Tuple29[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple24[](0);
+		return new Tuple29[](0);
 	}
 
 	/// Set the collection access method.
@@ -475,17 +476,36 @@
 }
 
 /// @dev anonymous struct
-struct Tuple24 {
+struct Tuple29 {
 	CollectionPermissions field_0;
 	bool field_1;
 }
 
 /// @dev anonymous struct
-struct Tuple21 {
+struct Tuple26 {
 	bool field_0;
 	uint256[] field_1;
 }
 
+enum CollectionLimits {
+	AccountTokenOwnership,
+	SponsoredDataSize,
+	SponsoredDataRateLimit,
+	TokenLimit,
+	SponsorTransferTimeout,
+	SponsorApproveTimeout,
+	OwnerCanTransfer,
+	OwnerCanDestroy,
+	TransferEnabled
+}
+
+/// @dev anonymous struct
+struct Tuple20 {
+	CollectionLimits field_0;
+	bool field_1;
+	uint256 field_2;
+}
+
 /// @dev Property struct
 struct Property {
 	string key;
modifiedpallets/nonfungible/src/stubs/UniqueNFT.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/nonfungible/src/stubs/UniqueNFT.soldiffbeforeafterboth
--- a/pallets/nonfungible/src/stubs/UniqueNFT.sol
+++ b/pallets/nonfungible/src/stubs/UniqueNFT.sol
@@ -151,7 +151,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 contract Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -324,6 +324,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -416,19 +417,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple34 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (Tuple39 memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple34(false, new uint256[](0));
+		return Tuple39(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple37[] memory) {
+	function collectionNestingPermissions() public view returns (Tuple42[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple37[](0);
+		return new Tuple42[](0);
 	}
 
 	/// Set the collection access method.
@@ -608,17 +609,36 @@
 }
 
 /// @dev anonymous struct
-struct Tuple37 {
+struct Tuple42 {
 	CollectionPermissions field_0;
 	bool field_1;
 }
 
 /// @dev anonymous struct
-struct Tuple34 {
+struct Tuple39 {
 	bool field_0;
 	uint256[] field_1;
 }
 
+enum CollectionLimits {
+	AccountTokenOwnership,
+	SponsoredDataSize,
+	SponsoredDataRateLimit,
+	TokenLimit,
+	SponsorTransferTimeout,
+	SponsorApproveTimeout,
+	OwnerCanTransfer,
+	OwnerCanDestroy,
+	TransferEnabled
+}
+
+/// @dev anonymous struct
+struct Tuple33 {
+	CollectionLimits field_0;
+	bool field_1;
+	uint256 field_2;
+}
+
 /// @dev anonymous struct
 struct Tuple30 {
 	address field_0;
modifiedpallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth
--- a/pallets/refungible/src/stubs/UniqueRefungible.sol
+++ b/pallets/refungible/src/stubs/UniqueRefungible.sol
@@ -152,7 +152,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 contract Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -325,6 +325,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -417,19 +418,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple33 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (Tuple38 memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple33(false, new uint256[](0));
+		return Tuple38(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple36[] memory) {
+	function collectionNestingPermissions() public view returns (Tuple41[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple36[](0);
+		return new Tuple41[](0);
 	}
 
 	/// Set the collection access method.
@@ -609,17 +610,36 @@
 }
 
 /// @dev anonymous struct
-struct Tuple36 {
+struct Tuple41 {
 	CollectionPermissions field_0;
 	bool field_1;
 }
 
 /// @dev anonymous struct
-struct Tuple33 {
+struct Tuple38 {
 	bool field_0;
 	uint256[] field_1;
 }
 
+enum CollectionLimits {
+	AccountTokenOwnership,
+	SponsoredDataSize,
+	SponsoredDataRateLimit,
+	TokenLimit,
+	SponsorTransferTimeout,
+	SponsorApproveTimeout,
+	OwnerCanTransfer,
+	OwnerCanDestroy,
+	TransferEnabled
+}
+
+/// @dev anonymous struct
+struct Tuple32 {
+	CollectionLimits field_0;
+	bool field_1;
+	uint256 field_2;
+}
+
 /// @dev anonymous struct
 struct Tuple29 {
 	address field_0;
modifiedtests/src/eth/abi/fungible.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/fungible.json
+++ b/tests/src/eth/abi/fungible.json
@@ -208,33 +208,40 @@
   },
   {
     "inputs": [],
-<<<<<<< HEAD
-    "name": "collectionNestingPermissions",
-=======
     "name": "collectionLimits",
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
     "outputs": [
       {
         "components": [
           {
-<<<<<<< HEAD
-            "internalType": "enum CollectionPermissions",
+            "internalType": "enum CollectionLimits",
             "name": "field_0",
             "type": "uint8"
           },
-          { "internalType": "bool", "name": "field_1", "type": "bool" }
+          { "internalType": "bool", "name": "field_1", "type": "bool" },
+          { "internalType": "uint256", "name": "field_2", "type": "uint256" }
         ],
-        "internalType": "struct Tuple24[]",
-=======
-            "internalType": "enum CollectionLimits",
+        "internalType": "struct Tuple20[]",
+        "name": "",
+        "type": "tuple[]"
+      }
+    ],
+    "stateMutability": "view",
+    "type": "function"
+  },
+  {
+    "inputs": [],
+    "name": "collectionNestingPermissions",
+    "outputs": [
+      {
+        "components": [
+          {
+            "internalType": "enum CollectionPermissions",
             "name": "field_0",
             "type": "uint8"
           },
-          { "internalType": "bool", "name": "field_1", "type": "bool" },
-          { "internalType": "uint256", "name": "field_2", "type": "uint256" }
+          { "internalType": "bool", "name": "field_1", "type": "bool" }
         ],
-        "internalType": "struct Tuple20[]",
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
+        "internalType": "struct Tuple29[]",
         "name": "",
         "type": "tuple[]"
       }
@@ -244,7 +251,6 @@
   },
   {
     "inputs": [],
-<<<<<<< HEAD
     "name": "collectionNestingRestrictedCollectionIds",
     "outputs": [
       {
@@ -256,7 +262,7 @@
             "type": "uint256[]"
           }
         ],
-        "internalType": "struct Tuple21",
+        "internalType": "struct Tuple26",
         "name": "",
         "type": "tuple"
       }
@@ -266,8 +272,6 @@
   },
   {
     "inputs": [],
-=======
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
     "name": "collectionOwner",
     "outputs": [
       {
modifiedtests/src/eth/abi/nonFungible.jsondiffbeforeafterboth
before · tests/src/eth/abi/nonFungible.json
1[2  {3    "anonymous": false,4    "inputs": [5      {6        "indexed": true,7        "internalType": "address",8        "name": "owner",9        "type": "address"10      },11      {12        "indexed": true,13        "internalType": "address",14        "name": "approved",15        "type": "address"16      },17      {18        "indexed": true,19        "internalType": "uint256",20        "name": "tokenId",21        "type": "uint256"22      }23    ],24    "name": "Approval",25    "type": "event"26  },27  {28    "anonymous": false,29    "inputs": [30      {31        "indexed": true,32        "internalType": "address",33        "name": "owner",34        "type": "address"35      },36      {37        "indexed": true,38        "internalType": "address",39        "name": "operator",40        "type": "address"41      },42      {43        "indexed": false,44        "internalType": "bool",45        "name": "approved",46        "type": "bool"47      }48    ],49    "name": "ApprovalForAll",50    "type": "event"51  },52  {53    "anonymous": false,54    "inputs": [],55    "name": "MintingFinished",56    "type": "event"57  },58  {59    "anonymous": false,60    "inputs": [61      {62        "indexed": true,63        "internalType": "address",64        "name": "from",65        "type": "address"66      },67      {68        "indexed": true,69        "internalType": "address",70        "name": "to",71        "type": "address"72      },73      {74        "indexed": true,75        "internalType": "uint256",76        "name": "tokenId",77        "type": "uint256"78      }79    ],80    "name": "Transfer",81    "type": "event"82  },83  {84    "inputs": [85      {86        "components": [87          { "internalType": "address", "name": "eth", "type": "address" },88          { "internalType": "uint256", "name": "sub", "type": "uint256" }89        ],90        "internalType": "struct EthCrossAccount",91        "name": "newAdmin",92        "type": "tuple"93      }94    ],95    "name": "addCollectionAdminCross",96    "outputs": [],97    "stateMutability": "nonpayable",98    "type": "function"99  },100  {101    "inputs": [102      {103        "components": [104          { "internalType": "address", "name": "eth", "type": "address" },105          { "internalType": "uint256", "name": "sub", "type": "uint256" }106        ],107        "internalType": "struct EthCrossAccount",108        "name": "user",109        "type": "tuple"110      }111    ],112    "name": "addToCollectionAllowListCross",113    "outputs": [],114    "stateMutability": "nonpayable",115    "type": "function"116  },117  {118    "inputs": [119      {120        "components": [121          { "internalType": "address", "name": "eth", "type": "address" },122          { "internalType": "uint256", "name": "sub", "type": "uint256" }123        ],124        "internalType": "struct EthCrossAccount",125        "name": "user",126        "type": "tuple"127      }128    ],129    "name": "allowlistedCross",130    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],131    "stateMutability": "view",132    "type": "function"133  },134  {135    "inputs": [136      { "internalType": "address", "name": "approved", "type": "address" },137      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }138    ],139    "name": "approve",140    "outputs": [],141    "stateMutability": "nonpayable",142    "type": "function"143  },144  {145    "inputs": [146      {147        "components": [148          { "internalType": "address", "name": "eth", "type": "address" },149          { "internalType": "uint256", "name": "sub", "type": "uint256" }150        ],151        "internalType": "struct EthCrossAccount",152        "name": "approved",153        "type": "tuple"154      },155      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }156    ],157    "name": "approveCross",158    "outputs": [],159    "stateMutability": "nonpayable",160    "type": "function"161  },162  {163    "inputs": [164      { "internalType": "address", "name": "owner", "type": "address" }165    ],166    "name": "balanceOf",167    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],168    "stateMutability": "view",169    "type": "function"170  },171  {172    "inputs": [173      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }174    ],175    "name": "burn",176    "outputs": [],177    "stateMutability": "nonpayable",178    "type": "function"179  },180  {181    "inputs": [182      {183        "components": [184          { "internalType": "address", "name": "eth", "type": "address" },185          { "internalType": "uint256", "name": "sub", "type": "uint256" }186        ],187        "internalType": "struct EthCrossAccount",188        "name": "from",189        "type": "tuple"190      },191      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }192    ],193    "name": "burnFromCross",194    "outputs": [],195    "stateMutability": "nonpayable",196    "type": "function"197  },198  {199    "inputs": [200      {201        "components": [202          { "internalType": "address", "name": "eth", "type": "address" },203          { "internalType": "uint256", "name": "sub", "type": "uint256" }204        ],205        "internalType": "struct EthCrossAccount",206        "name": "newOwner",207        "type": "tuple"208      }209    ],210    "name": "changeCollectionOwnerCross",211    "outputs": [],212    "stateMutability": "nonpayable",213    "type": "function"214  },215  {216    "inputs": [],217    "name": "collectionAdmins",218    "outputs": [219      {220        "components": [221          { "internalType": "address", "name": "eth", "type": "address" },222          { "internalType": "uint256", "name": "sub", "type": "uint256" }223        ],224        "internalType": "struct EthCrossAccount[]",225        "name": "",226        "type": "tuple[]"227      }228    ],229    "stateMutability": "view",230    "type": "function"231  },232  {233    "inputs": [],234    "name": "collectionHelperAddress",235    "outputs": [{ "internalType": "address", "name": "", "type": "address" }],236    "stateMutability": "view",237    "type": "function"238  },239  {240    "inputs": [],241    "name": "collectionNestingPermissions",242    "outputs": [243      {244        "components": [245          {246            "internalType": "enum CollectionPermissions",247            "name": "field_0",248            "type": "uint8"249          },250          { "internalType": "bool", "name": "field_1", "type": "bool" }251        ],252        "internalType": "struct Tuple37[]",253        "name": "",254        "type": "tuple[]"255      }256    ],257    "stateMutability": "view",258    "type": "function"259  },260  {261    "inputs": [],262    "name": "collectionNestingRestrictedCollectionIds",263    "outputs": [264      {265        "components": [266          { "internalType": "bool", "name": "field_0", "type": "bool" },267          {268            "internalType": "uint256[]",269            "name": "field_1",270            "type": "uint256[]"271          }272        ],273        "internalType": "struct Tuple34",274        "name": "",275        "type": "tuple"276      }277    ],278    "stateMutability": "view",279    "type": "function"280  },281  {282    "inputs": [],283    "name": "collectionOwner",284    "outputs": [285      {286        "components": [287          { "internalType": "address", "name": "eth", "type": "address" },288          { "internalType": "uint256", "name": "sub", "type": "uint256" }289        ],290        "internalType": "struct EthCrossAccount",291        "name": "",292        "type": "tuple"293      }294    ],295    "stateMutability": "view",296    "type": "function"297  },298  {299    "inputs": [300      { "internalType": "string[]", "name": "keys", "type": "string[]" }301    ],302    "name": "collectionProperties",303    "outputs": [304      {305        "components": [306          { "internalType": "string", "name": "key", "type": "string" },307          { "internalType": "bytes", "name": "value", "type": "bytes" }308        ],309        "internalType": "struct Property[]",310        "name": "",311        "type": "tuple[]"312      }313    ],314    "stateMutability": "view",315    "type": "function"316  },317  {318    "inputs": [{ "internalType": "string", "name": "key", "type": "string" }],319    "name": "collectionProperty",320    "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],321    "stateMutability": "view",322    "type": "function"323  },324  {325    "inputs": [],326    "name": "collectionSponsor",327    "outputs": [328      {329        "components": [330          { "internalType": "address", "name": "field_0", "type": "address" },331          { "internalType": "uint256", "name": "field_1", "type": "uint256" }332        ],333        "internalType": "struct Tuple30",334        "name": "",335        "type": "tuple"336      }337    ],338    "stateMutability": "view",339    "type": "function"340  },341  {342    "inputs": [],343    "name": "confirmCollectionSponsorship",344    "outputs": [],345    "stateMutability": "nonpayable",346    "type": "function"347  },348  {349    "inputs": [],350    "name": "contractAddress",351    "outputs": [{ "internalType": "address", "name": "", "type": "address" }],352    "stateMutability": "view",353    "type": "function"354  },355  {356    "inputs": [357      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }358    ],359    "name": "crossOwnerOf",360    "outputs": [361      {362        "components": [363          { "internalType": "address", "name": "eth", "type": "address" },364          { "internalType": "uint256", "name": "sub", "type": "uint256" }365        ],366        "internalType": "struct EthCrossAccount",367        "name": "",368        "type": "tuple"369      }370    ],371    "stateMutability": "view",372    "type": "function"373  },374  {375    "inputs": [376      { "internalType": "string[]", "name": "keys", "type": "string[]" }377    ],378    "name": "deleteCollectionProperties",379    "outputs": [],380    "stateMutability": "nonpayable",381    "type": "function"382  },383  {384    "inputs": [385      { "internalType": "uint256", "name": "tokenId", "type": "uint256" },386      { "internalType": "string[]", "name": "keys", "type": "string[]" }387    ],388    "name": "deleteProperties",389    "outputs": [],390    "stateMutability": "nonpayable",391    "type": "function"392  },393  {394    "inputs": [],395    "name": "description",396    "outputs": [{ "internalType": "string", "name": "", "type": "string" }],397    "stateMutability": "view",398    "type": "function"399  },400  {401    "inputs": [],402    "name": "finishMinting",403    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],404    "stateMutability": "nonpayable",405    "type": "function"406  },407  {408    "inputs": [409      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }410    ],411    "name": "getApproved",412    "outputs": [{ "internalType": "address", "name": "", "type": "address" }],413    "stateMutability": "view",414    "type": "function"415  },416  {417    "inputs": [],418    "name": "hasCollectionPendingSponsor",419    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],420    "stateMutability": "view",421    "type": "function"422  },423  {424    "inputs": [425      { "internalType": "address", "name": "owner", "type": "address" },426      { "internalType": "address", "name": "operator", "type": "address" }427    ],428    "name": "isApprovedForAll",429    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],430    "stateMutability": "view",431    "type": "function"432  },433  {434    "inputs": [435      {436        "components": [437          { "internalType": "address", "name": "eth", "type": "address" },438          { "internalType": "uint256", "name": "sub", "type": "uint256" }439        ],440        "internalType": "struct EthCrossAccount",441        "name": "user",442        "type": "tuple"443      }444    ],445    "name": "isOwnerOrAdminCross",446    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],447    "stateMutability": "view",448    "type": "function"449  },450  {451    "inputs": [{ "internalType": "address", "name": "to", "type": "address" }],452    "name": "mint",453    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],454    "stateMutability": "nonpayable",455    "type": "function"456  },457  {458    "inputs": [459      { "internalType": "address", "name": "to", "type": "address" },460      { "internalType": "string", "name": "tokenUri", "type": "string" }461    ],462    "name": "mintWithTokenURI",463    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],464    "stateMutability": "nonpayable",465    "type": "function"466  },467  {468    "inputs": [],469    "name": "mintingFinished",470    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],471    "stateMutability": "view",472    "type": "function"473  },474  {475    "inputs": [],476    "name": "name",477    "outputs": [{ "internalType": "string", "name": "", "type": "string" }],478    "stateMutability": "view",479    "type": "function"480  },481  {482    "inputs": [],483    "name": "nextTokenId",484    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],485    "stateMutability": "view",486    "type": "function"487  },488  {489    "inputs": [490      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }491    ],492    "name": "ownerOf",493    "outputs": [{ "internalType": "address", "name": "", "type": "address" }],494    "stateMutability": "view",495    "type": "function"496  },497  {498    "inputs": [499      { "internalType": "uint256", "name": "tokenId", "type": "uint256" },500      { "internalType": "string[]", "name": "keys", "type": "string[]" }501    ],502    "name": "properties",503    "outputs": [504      {505        "components": [506          { "internalType": "string", "name": "key", "type": "string" },507          { "internalType": "bytes", "name": "value", "type": "bytes" }508        ],509        "internalType": "struct Property[]",510        "name": "",511        "type": "tuple[]"512      }513    ],514    "stateMutability": "view",515    "type": "function"516  },517  {518    "inputs": [519      { "internalType": "uint256", "name": "tokenId", "type": "uint256" },520      { "internalType": "string", "name": "key", "type": "string" }521    ],522    "name": "property",523    "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],524    "stateMutability": "view",525    "type": "function"526  },527  {528    "inputs": [529      {530        "components": [531          { "internalType": "address", "name": "eth", "type": "address" },532          { "internalType": "uint256", "name": "sub", "type": "uint256" }533        ],534        "internalType": "struct EthCrossAccount",535        "name": "admin",536        "type": "tuple"537      }538    ],539    "name": "removeCollectionAdminCross",540    "outputs": [],541    "stateMutability": "nonpayable",542    "type": "function"543  },544  {545    "inputs": [],546    "name": "removeCollectionSponsor",547    "outputs": [],548    "stateMutability": "nonpayable",549    "type": "function"550  },551  {552    "inputs": [553      {554        "components": [555          { "internalType": "address", "name": "eth", "type": "address" },556          { "internalType": "uint256", "name": "sub", "type": "uint256" }557        ],558        "internalType": "struct EthCrossAccount",559        "name": "user",560        "type": "tuple"561      }562    ],563    "name": "removeFromCollectionAllowListCross",564    "outputs": [],565    "stateMutability": "nonpayable",566    "type": "function"567  },568  {569    "inputs": [570      { "internalType": "address", "name": "from", "type": "address" },571      { "internalType": "address", "name": "to", "type": "address" },572      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }573    ],574    "name": "safeTransferFrom",575    "outputs": [],576    "stateMutability": "nonpayable",577    "type": "function"578  },579  {580    "inputs": [581      { "internalType": "address", "name": "from", "type": "address" },582      { "internalType": "address", "name": "to", "type": "address" },583      { "internalType": "uint256", "name": "tokenId", "type": "uint256" },584      { "internalType": "bytes", "name": "data", "type": "bytes" }585    ],586    "name": "safeTransferFrom",587    "outputs": [],588    "stateMutability": "nonpayable",589    "type": "function"590  },591  {592    "inputs": [593      { "internalType": "address", "name": "operator", "type": "address" },594      { "internalType": "bool", "name": "approved", "type": "bool" }595    ],596    "name": "setApprovalForAll",597    "outputs": [],598    "stateMutability": "nonpayable",599    "type": "function"600  },601  {602    "inputs": [{ "internalType": "uint8", "name": "mode", "type": "uint8" }],603    "name": "setCollectionAccess",604    "outputs": [],605    "stateMutability": "nonpayable",606    "type": "function"607  },608  {609    "inputs": [610      {611        "internalType": "enum CollectionLimits",612        "name": "limit",613        "type": "uint8"614      },615      { "internalType": "bool", "name": "status", "type": "bool" },616      { "internalType": "uint256", "name": "value", "type": "uint256" }617    ],618    "name": "setCollectionLimit",619    "outputs": [],620    "stateMutability": "nonpayable",621    "type": "function"622  },623  {624    "inputs": [{ "internalType": "bool", "name": "mode", "type": "bool" }],625    "name": "setCollectionMintMode",626    "outputs": [],627    "stateMutability": "nonpayable",628    "type": "function"629  },630  {631    "inputs": [{ "internalType": "bool", "name": "enable", "type": "bool" }],632    "name": "setCollectionNesting",633    "outputs": [],634    "stateMutability": "nonpayable",635    "type": "function"636  },637  {638    "inputs": [639      { "internalType": "bool", "name": "enable", "type": "bool" },640      {641        "internalType": "address[]",642        "name": "collections",643        "type": "address[]"644      }645    ],646    "name": "setCollectionNesting",647    "outputs": [],648    "stateMutability": "nonpayable",649    "type": "function"650  },651  {652    "inputs": [653      {654        "components": [655          { "internalType": "string", "name": "key", "type": "string" },656          { "internalType": "bytes", "name": "value", "type": "bytes" }657        ],658        "internalType": "struct Property[]",659        "name": "properties",660        "type": "tuple[]"661      }662    ],663    "name": "setCollectionProperties",664    "outputs": [],665    "stateMutability": "nonpayable",666    "type": "function"667  },668  {669    "inputs": [670      {671        "components": [672          { "internalType": "address", "name": "eth", "type": "address" },673          { "internalType": "uint256", "name": "sub", "type": "uint256" }674        ],675        "internalType": "struct EthCrossAccount",676        "name": "sponsor",677        "type": "tuple"678      }679    ],680    "name": "setCollectionSponsorCross",681    "outputs": [],682    "stateMutability": "nonpayable",683    "type": "function"684  },685  {686    "inputs": [687      { "internalType": "uint256", "name": "tokenId", "type": "uint256" },688      {689        "components": [690          { "internalType": "string", "name": "key", "type": "string" },691          { "internalType": "bytes", "name": "value", "type": "bytes" }692        ],693        "internalType": "struct Property[]",694        "name": "properties",695        "type": "tuple[]"696      }697    ],698    "name": "setProperties",699    "outputs": [],700    "stateMutability": "nonpayable",701    "type": "function"702  },703  {704    "inputs": [705      {706        "components": [707          { "internalType": "string", "name": "field_0", "type": "string" },708          {709            "components": [710              {711                "internalType": "enum EthTokenPermissions",712                "name": "field_0",713                "type": "uint8"714              },715              { "internalType": "bool", "name": "field_1", "type": "bool" }716            ],717            "internalType": "struct Tuple46[]",718            "name": "field_1",719            "type": "tuple[]"720          }721        ],722        "internalType": "struct Tuple48[]",723        "name": "permissions",724        "type": "tuple[]"725      }726    ],727    "name": "setTokenPropertyPermissions",728    "outputs": [],729    "stateMutability": "nonpayable",730    "type": "function"731  },732  {733    "inputs": [734      { "internalType": "bytes4", "name": "interfaceID", "type": "bytes4" }735    ],736    "name": "supportsInterface",737    "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],738    "stateMutability": "view",739    "type": "function"740  },741  {742    "inputs": [],743    "name": "symbol",744    "outputs": [{ "internalType": "string", "name": "", "type": "string" }],745    "stateMutability": "view",746    "type": "function"747  },748  {749    "inputs": [750      { "internalType": "uint256", "name": "index", "type": "uint256" }751    ],752    "name": "tokenByIndex",753    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],754    "stateMutability": "view",755    "type": "function"756  },757  {758    "inputs": [759      { "internalType": "address", "name": "owner", "type": "address" },760      { "internalType": "uint256", "name": "index", "type": "uint256" }761    ],762    "name": "tokenOfOwnerByIndex",763    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],764    "stateMutability": "view",765    "type": "function"766  },767  {768    "inputs": [],769    "name": "tokenPropertyPermissions",770    "outputs": [771      {772        "components": [773          { "internalType": "string", "name": "field_0", "type": "string" },774          {775            "components": [776              {777                "internalType": "enum EthTokenPermissions",778                "name": "field_0",779                "type": "uint8"780              },781              { "internalType": "bool", "name": "field_1", "type": "bool" }782            ],783            "internalType": "struct Tuple46[]",784            "name": "field_1",785            "type": "tuple[]"786          }787        ],788        "internalType": "struct Tuple48[]",789        "name": "",790        "type": "tuple[]"791      }792    ],793    "stateMutability": "view",794    "type": "function"795  },796  {797    "inputs": [798      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }799    ],800    "name": "tokenURI",801    "outputs": [{ "internalType": "string", "name": "", "type": "string" }],802    "stateMutability": "view",803    "type": "function"804  },805  {806    "inputs": [],807    "name": "totalSupply",808    "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],809    "stateMutability": "view",810    "type": "function"811  },812  {813    "inputs": [814      { "internalType": "address", "name": "to", "type": "address" },815      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }816    ],817    "name": "transfer",818    "outputs": [],819    "stateMutability": "nonpayable",820    "type": "function"821  },822  {823    "inputs": [824      {825        "components": [826          { "internalType": "address", "name": "eth", "type": "address" },827          { "internalType": "uint256", "name": "sub", "type": "uint256" }828        ],829        "internalType": "struct EthCrossAccount",830        "name": "to",831        "type": "tuple"832      },833      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }834    ],835    "name": "transferCross",836    "outputs": [],837    "stateMutability": "nonpayable",838    "type": "function"839  },840  {841    "inputs": [842      { "internalType": "address", "name": "from", "type": "address" },843      { "internalType": "address", "name": "to", "type": "address" },844      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }845    ],846    "name": "transferFrom",847    "outputs": [],848    "stateMutability": "nonpayable",849    "type": "function"850  },851  {852    "inputs": [853      {854        "components": [855          { "internalType": "address", "name": "eth", "type": "address" },856          { "internalType": "uint256", "name": "sub", "type": "uint256" }857        ],858        "internalType": "struct EthCrossAccount",859        "name": "from",860        "type": "tuple"861      },862      {863        "components": [864          { "internalType": "address", "name": "eth", "type": "address" },865          { "internalType": "uint256", "name": "sub", "type": "uint256" }866        ],867        "internalType": "struct EthCrossAccount",868        "name": "to",869        "type": "tuple"870      },871      { "internalType": "uint256", "name": "tokenId", "type": "uint256" }872    ],873    "name": "transferFromCross",874    "outputs": [],875    "stateMutability": "nonpayable",876    "type": "function"877  },878  {879    "inputs": [],880    "name": "uniqueCollectionType",881    "outputs": [{ "internalType": "string", "name": "", "type": "string" }],882    "stateMutability": "view",883    "type": "function"884  }885]
modifiedtests/src/eth/abi/reFungible.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/reFungible.json
+++ b/tests/src/eth/abi/reFungible.json
@@ -220,6 +220,28 @@
   },
   {
     "inputs": [],
+    "name": "collectionLimits",
+    "outputs": [
+      {
+        "components": [
+          {
+            "internalType": "enum CollectionLimits",
+            "name": "field_0",
+            "type": "uint8"
+          },
+          { "internalType": "bool", "name": "field_1", "type": "bool" },
+          { "internalType": "uint256", "name": "field_2", "type": "uint256" }
+        ],
+        "internalType": "struct Tuple32[]",
+        "name": "",
+        "type": "tuple[]"
+      }
+    ],
+    "stateMutability": "view",
+    "type": "function"
+  },
+  {
+    "inputs": [],
     "name": "collectionNestingPermissions",
     "outputs": [
       {
@@ -231,7 +253,7 @@
           },
           { "internalType": "bool", "name": "field_1", "type": "bool" }
         ],
-        "internalType": "struct Tuple36[]",
+        "internalType": "struct Tuple41[]",
         "name": "",
         "type": "tuple[]"
       }
@@ -252,7 +274,7 @@
             "type": "uint256[]"
           }
         ],
-        "internalType": "struct Tuple33",
+        "internalType": "struct Tuple38",
         "name": "",
         "type": "tuple"
       }
modifiedtests/src/eth/api/UniqueFungible.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueFungible.sol
+++ b/tests/src/eth/api/UniqueFungible.sol
@@ -13,11 +13,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-<<<<<<< HEAD
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
-=======
-/// @dev the ERC-165 identifier for this interface is 0xf8ebdec0
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 interface Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -137,6 +133,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -194,12 +191,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple20 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (Tuple24 memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple23[] memory);
+	function collectionNestingPermissions() external view returns (Tuple27[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -313,9 +310,8 @@
 	uint256 sub;
 }
 
-<<<<<<< HEAD
 /// @dev anonymous struct
-struct Tuple23 {
+struct Tuple27 {
 	CollectionPermissions field_0;
 	bool field_1;
 }
@@ -326,10 +322,11 @@
 }
 
 /// @dev anonymous struct
-struct Tuple20 {
+struct Tuple24 {
 	bool field_0;
 	uint256[] field_1;
-=======
+}
+
 enum CollectionLimits {
 	AccountTokenOwnership,
 	SponsoredDataSize,
@@ -347,7 +344,6 @@
 	CollectionLimits field_0;
 	bool field_1;
 	uint256 field_2;
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
 }
 
 /// @dev Property struct
modifiedtests/src/eth/api/UniqueNFT.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueNFT.sol
+++ b/tests/src/eth/api/UniqueNFT.sol
@@ -104,11 +104,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-<<<<<<< HEAD
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
-=======
-/// @dev the ERC-165 identifier for this interface is 0xf8ebdec0
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 interface Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -228,6 +224,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -285,12 +282,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple31 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (Tuple35 memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple34[] memory);
+	function collectionNestingPermissions() external view returns (Tuple38[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -404,6 +401,23 @@
 	uint256 sub;
 }
 
+/// @dev anonymous struct
+struct Tuple38 {
+	CollectionPermissions field_0;
+	bool field_1;
+}
+
+enum CollectionPermissions {
+	CollectionAdmin,
+	TokenOwner
+}
+
+/// @dev anonymous struct
+struct Tuple35 {
+	bool field_0;
+	uint256[] field_1;
+}
+
 enum CollectionLimits {
 	AccountTokenOwnership,
 	SponsoredDataSize,
@@ -421,23 +435,6 @@
 	CollectionLimits field_0;
 	bool field_1;
 	uint256 field_2;
-}
-
-/// @dev anonymous struct
-struct Tuple34 {
-	CollectionPermissions field_0;
-	bool field_1;
-}
-
-enum CollectionPermissions {
-	CollectionAdmin,
-	TokenOwner
-}
-
-/// @dev anonymous struct
-struct Tuple31 {
-	bool field_0;
-	uint256[] field_1;
 }
 
 /// @dev anonymous struct
modifiedtests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueRefungible.sol
+++ b/tests/src/eth/api/UniqueRefungible.sol
@@ -105,11 +105,7 @@
 }
 
 /// @title A contract that allows you to work with collections.
-<<<<<<< HEAD
-/// @dev the ERC-165 identifier for this interface is 0xb5e1747f
-=======
-/// @dev the ERC-165 identifier for this interface is 0xf8ebdec0
->>>>>>> 32e011ce... added `collectionLimits` function in `Collection` interface,  changed signture for `setCollectionLimit`
+/// @dev the ERC-165 identifier for this interface is 0x81172a75
 interface Collection is Dummy, ERC165 {
 	// /// Set collection property.
 	// ///
@@ -229,6 +225,7 @@
 	///  	"ownerCanTransfer",
 	/// 	"ownerCanDestroy",
 	/// 	"transfersEnabled"
+	/// @param status enable\disable limit. Works only with `true`.
 	/// @param value Value of the limit.
 	/// @dev EVM selector for this function is: 0x88150bd0,
 	///  or in textual repr: setCollectionLimit(uint8,bool,uint256)
@@ -286,12 +283,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple30 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (Tuple34 memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple33[] memory);
+	function collectionNestingPermissions() external view returns (Tuple37[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -405,6 +402,23 @@
 	uint256 sub;
 }
 
+/// @dev anonymous struct
+struct Tuple37 {
+	CollectionPermissions field_0;
+	bool field_1;
+}
+
+enum CollectionPermissions {
+	CollectionAdmin,
+	TokenOwner
+}
+
+/// @dev anonymous struct
+struct Tuple34 {
+	bool field_0;
+	uint256[] field_1;
+}
+
 enum CollectionLimits {
 	AccountTokenOwnership,
 	SponsoredDataSize,
@@ -422,23 +436,6 @@
 	CollectionLimits field_0;
 	bool field_1;
 	uint256 field_2;
-}
-
-/// @dev anonymous struct
-struct Tuple33 {
-	CollectionPermissions field_0;
-	bool field_1;
-}
-
-enum CollectionPermissions {
-	CollectionAdmin,
-	TokenOwner
-}
-
-/// @dev anonymous struct
-struct Tuple30 {
-	bool field_0;
-	uint256[] field_1;
 }
 
 /// @dev anonymous struct