git.delta.rocks / unique-network / refs/commits / 6afd9fe97b2d

difftreelog

misk: update stubs

Trubnikov Sergey2022-10-25parent: #846b910.patch.diff
in: master

7 files changed

modifiedpallets/nonfungible/src/stubs/UniqueNFT.soldiffbeforeafterboth
106/// @title A contract that allows you to work with collections.106/// @title A contract that allows you to work with collections.
107<<<<<<< HEAD107<<<<<<< HEAD
108<<<<<<< HEAD108<<<<<<< HEAD
109<<<<<<< HEAD
109/// @dev the ERC-165 identifier for this interface is 0xb3152af3110/// @dev the ERC-165 identifier for this interface is 0xb3152af3
110=======111=======
111/// @dev the ERC-165 identifier for this interface is 0x674be726112/// @dev the ERC-165 identifier for this interface is 0x674be726
112>>>>>>> feat: Add custum signature with unlimited nesting.113>>>>>>> feat: Add custum signature with unlimited nesting.
113=======114=======
114/// @dev the ERC-165 identifier for this interface is 0x943ee094115/// @dev the ERC-165 identifier for this interface is 0x943ee094
115>>>>>>> fix: after rebase116>>>>>>> fix: after rebase
117=======
118/// @dev the ERC-165 identifier for this interface is 0xefe988e0
119>>>>>>> misk: update stubs
116contract Collection is Dummy, ERC165 {120contract Collection is Dummy, ERC165 {
117 /// Set collection property.121 /// Set collection property.
118 ///122 ///
130 /// Set collection properties.134 /// Set collection properties.
131 ///135 ///
132 /// @param properties Vector of properties key/value pair.136 /// @param properties Vector of properties key/value pair.
133 /// @dev EVM selector for this function is: 0xf90c1ce9,137 /// @dev EVM selector for this function is: 0x50b26b2a,
134 /// or in textual repr: setCollectionProperties((string,bytes)[])138 /// or in textual repr: setCollectionProperties((string,bytes)[])
135 function setCollectionProperties(Tuple21[] memory properties) public {139 function setCollectionProperties(Tuple21[] memory properties) public {
136 require(false, stub_error);140 require(false, stub_error);
152 /// Delete collection properties.156 /// Delete collection properties.
153 ///157 ///
154 /// @param keys Properties keys.158 /// @param keys Properties keys.
155 /// @dev EVM selector for this function is: 0x56d4684a,159 /// @dev EVM selector for this function is: 0xee206ee3,
156 /// or in textual repr: deleteCollectionProperties(string[])160 /// or in textual repr: deleteCollectionProperties(string[])
157 function deleteCollectionProperties(string[] memory keys) public {161 function deleteCollectionProperties(string[] memory keys) public {
158 require(false, stub_error);162 require(false, stub_error);
179 ///183 ///
180 /// @param keys Properties keys. Empty keys for all propertyes.184 /// @param keys Properties keys. Empty keys for all propertyes.
181 /// @return Vector of properties key/value pairs.185 /// @return Vector of properties key/value pairs.
182 /// @dev EVM selector for this function is: 0x5cad7311,186 /// @dev EVM selector for this function is: 0x285fb8e6,
183 /// or in textual repr: collectionProperties(string[])187 /// or in textual repr: collectionProperties(string[])
184 function collectionProperties(string[] memory keys) public view returns (Tuple21[] memory) {188 function collectionProperties(string[] memory keys) public view returns (Tuple21[] memory) {
185 require(false, stub_error);189 require(false, stub_error);
206 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.210 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.
207 ///211 ///
208 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.212 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.
213<<<<<<< HEAD
209 /// @dev EVM selector for this function is: 0x403e96a7,214 /// @dev EVM selector for this function is: 0x403e96a7,
210 /// or in textual repr: setCollectionSponsorCross((address,uint256))215 /// or in textual repr: setCollectionSponsorCross((address,uint256))
211 function setCollectionSponsorCross(Tuple6 memory sponsor) public {216 function setCollectionSponsorCross(Tuple6 memory sponsor) public {
217=======
218 /// @dev EVM selector for this function is: 0x84a1d5a8,
219 /// or in textual repr: setCollectionSponsorCross(EthCrossAccount)
220 /// or in the expanded repr: setCollectionSponsorCross((address,uint256))
221 function setCollectionSponsorCross(EthCrossAccount memory sponsor) public {
222>>>>>>> misk: update stubs
212 require(false, stub_error);223 require(false, stub_error);
213 sponsor;224 sponsor;
214 dummy = 0;225 dummy = 0;
248 /// or in textual repr: collectionSponsor()259 /// or in textual repr: collectionSponsor()
249<<<<<<< HEAD260<<<<<<< HEAD
250<<<<<<< HEAD261<<<<<<< HEAD
262<<<<<<< HEAD
251 function collectionSponsor() public view returns (Tuple6 memory) {263 function collectionSponsor() public view returns (Tuple6 memory) {
252 require(false, stub_error);264 require(false, stub_error);
253 dummy;265 dummy;
264 dummy;276 dummy;
265 return Tuple8(0x0000000000000000000000000000000000000000, 0);277 return Tuple8(0x0000000000000000000000000000000000000000, 0);
266>>>>>>> feat: Add custum signature with unlimited nesting.278>>>>>>> feat: Add custum signature with unlimited nesting.
279=======
280 function collectionSponsor() public view returns (Tuple24 memory) {
281 require(false, stub_error);
282 dummy;
283 return Tuple24(0x0000000000000000000000000000000000000000, 0);
284>>>>>>> misk: update stubs
267 }285 }
268286
269 /// Set limits for the collection.287 /// Set limits for the collection.
312330
313 /// Add collection admin.331 /// Add collection admin.
314 /// @param newAdmin Cross account administrator address.332 /// @param newAdmin Cross account administrator address.
333<<<<<<< HEAD
315 /// @dev EVM selector for this function is: 0x62e3c7c2,334 /// @dev EVM selector for this function is: 0x62e3c7c2,
316 /// or in textual repr: addCollectionAdminCross((address,uint256))335 /// or in textual repr: addCollectionAdminCross((address,uint256))
317 function addCollectionAdminCross(Tuple6 memory newAdmin) public {336 function addCollectionAdminCross(Tuple6 memory newAdmin) public {
337=======
338 /// @dev EVM selector for this function is: 0x859aa7d6,
339 /// or in textual repr: addCollectionAdminCross(EthCrossAccount)
340 /// or in the expanded repr: addCollectionAdminCross((address,uint256))
341 function addCollectionAdminCross(EthCrossAccount memory newAdmin) public {
342>>>>>>> misk: update stubs
318 require(false, stub_error);343 require(false, stub_error);
319 newAdmin;344 newAdmin;
320 dummy = 0;345 dummy = 0;
321 }346 }
322347
323 /// Remove collection admin.348 /// Remove collection admin.
324 /// @param admin Cross account administrator address.349 /// @param admin Cross account administrator address.
350<<<<<<< HEAD
325 /// @dev EVM selector for this function is: 0x810d1503,351 /// @dev EVM selector for this function is: 0x810d1503,
326 /// or in textual repr: removeCollectionAdminCross((address,uint256))352 /// or in textual repr: removeCollectionAdminCross((address,uint256))
327 function removeCollectionAdminCross(Tuple6 memory admin) public {353 function removeCollectionAdminCross(Tuple6 memory admin) public {
354=======
355 /// @dev EVM selector for this function is: 0x6c0cd173,
356 /// or in textual repr: removeCollectionAdminCross(EthCrossAccount)
357 /// or in the expanded repr: removeCollectionAdminCross((address,uint256))
358 function removeCollectionAdminCross(EthCrossAccount memory admin) public {
359>>>>>>> misk: update stubs
328 require(false, stub_error);360 require(false, stub_error);
329 admin;361 admin;
330 dummy = 0;362 dummy = 0;
366 ///398 ///
367 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'399 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'
368 /// @param collections Addresses of collections that will be available for nesting.400 /// @param collections Addresses of collections that will be available for nesting.
369 /// @dev EVM selector for this function is: 0x112d4586,401 /// @dev EVM selector for this function is: 0x64872396,
370 /// or in textual repr: setCollectionNesting(bool,address[])402 /// or in textual repr: setCollectionNesting(bool,address[])
371 function setCollectionNesting(bool enable, address[] memory collections) public {403 function setCollectionNesting(bool enable, address[] memory collections) public {
372 require(false, stub_error);404 require(false, stub_error);
413 /// Add user to allowed list.445 /// Add user to allowed list.
414 ///446 ///
415 /// @param user User cross account address.447 /// @param user User cross account address.
448<<<<<<< HEAD
416 /// @dev EVM selector for this function is: 0xf074da88,449 /// @dev EVM selector for this function is: 0xf074da88,
417 /// or in textual repr: addToCollectionAllowListCross((address,uint256))450 /// or in textual repr: addToCollectionAllowListCross((address,uint256))
418 function addToCollectionAllowListCross(Tuple6 memory user) public {451 function addToCollectionAllowListCross(Tuple6 memory user) public {
452=======
453 /// @dev EVM selector for this function is: 0xa0184a3a,
454 /// or in textual repr: addToCollectionAllowListCross(EthCrossAccount)
455 /// or in the expanded repr: addToCollectionAllowListCross((address,uint256))
456 function addToCollectionAllowListCross(EthCrossAccount memory user) public {
457>>>>>>> misk: update stubs
419 require(false, stub_error);458 require(false, stub_error);
420 user;459 user;
421 dummy = 0;460 dummy = 0;
435 /// Remove user from allowed list.474 /// Remove user from allowed list.
436 ///475 ///
437 /// @param user User cross account address.476 /// @param user User cross account address.
477<<<<<<< HEAD
438 /// @dev EVM selector for this function is: 0xc00df45c,478 /// @dev EVM selector for this function is: 0xc00df45c,
439 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))479 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))
440 function removeFromCollectionAllowListCross(Tuple6 memory user) public {480 function removeFromCollectionAllowListCross(Tuple6 memory user) public {
481=======
482 /// @dev EVM selector for this function is: 0x09ba452a,
483 /// or in textual repr: removeFromCollectionAllowListCross(EthCrossAccount)
484 /// or in the expanded repr: removeFromCollectionAllowListCross((address,uint256))
485 function removeFromCollectionAllowListCross(EthCrossAccount memory user) public {
486>>>>>>> misk: update stubs
441 require(false, stub_error);487 require(false, stub_error);
442 user;488 user;
443 dummy = 0;489 dummy = 0;
471 ///517 ///
472 /// @param user User cross account to verify518 /// @param user User cross account to verify
473 /// @return "true" if account is the owner or admin519 /// @return "true" if account is the owner or admin
520<<<<<<< HEAD
474 /// @dev EVM selector for this function is: 0x5aba3351,521 /// @dev EVM selector for this function is: 0x5aba3351,
475 /// or in textual repr: isOwnerOrAdminCross((address,uint256))522 /// or in textual repr: isOwnerOrAdminCross((address,uint256))
476 function isOwnerOrAdminCross(Tuple6 memory user) public view returns (bool) {523 function isOwnerOrAdminCross(Tuple6 memory user) public view returns (bool) {
524=======
525 /// @dev EVM selector for this function is: 0x3e75a905,
526 /// or in textual repr: isOwnerOrAdminCross(EthCrossAccount)
527 /// or in the expanded repr: isOwnerOrAdminCross((address,uint256))
528 function isOwnerOrAdminCross(EthCrossAccount memory user) public view returns (bool) {
529>>>>>>> misk: update stubs
477 require(false, stub_error);530 require(false, stub_error);
478 user;531 user;
479 dummy;532 dummy;
499 /// or in textual repr: collectionOwner()552 /// or in textual repr: collectionOwner()
500<<<<<<< HEAD553<<<<<<< HEAD
501<<<<<<< HEAD554<<<<<<< HEAD
555<<<<<<< HEAD
502 function collectionOwner() public view returns (Tuple6 memory) {556 function collectionOwner() public view returns (Tuple6 memory) {
503 require(false, stub_error);557 require(false, stub_error);
504 dummy;558 dummy;
515 dummy;569 dummy;
516 return Tuple8(0x0000000000000000000000000000000000000000, 0);570 return Tuple8(0x0000000000000000000000000000000000000000, 0);
517>>>>>>> feat: Add custum signature with unlimited nesting.571>>>>>>> feat: Add custum signature with unlimited nesting.
572=======
573 function collectionOwner() public view returns (EthCrossAccount memory) {
574 require(false, stub_error);
575 dummy;
576 return EthCrossAccount(0x0000000000000000000000000000000000000000, 0);
577>>>>>>> misk: update stubs
518 }578 }
519579
520 /// Changes collection owner to another account580 /// Changes collection owner to another account
535 /// If address is canonical then substrate mirror is zero and vice versa.595 /// If address is canonical then substrate mirror is zero and vice versa.
536 /// @dev EVM selector for this function is: 0x5813216b,596 /// @dev EVM selector for this function is: 0x5813216b,
537 /// or in textual repr: collectionAdmins()597 /// or in textual repr: collectionAdmins()
598<<<<<<< HEAD
538 function collectionAdmins() public view returns (Tuple6[] memory) {599 function collectionAdmins() public view returns (Tuple6[] memory) {
539 require(false, stub_error);600 require(false, stub_error);
540 dummy;601 dummy;
541 return new Tuple6[](0);602 return new Tuple6[](0);
603=======
604 function collectionAdmins() public view returns (EthCrossAccount[] memory) {
605 require(false, stub_error);
606 dummy;
607 return new EthCrossAccount[](0);
608>>>>>>> misk: update stubs
542 }609 }
543610
544 /// Changes collection owner to another account611 /// Changes collection owner to another account
545 ///612 ///
546 /// @dev Owner can be changed only by current owner613 /// @dev Owner can be changed only by current owner
547 /// @param newOwner new owner cross account614 /// @param newOwner new owner cross account
615<<<<<<< HEAD
548 /// @dev EVM selector for this function is: 0xbdff793d,616 /// @dev EVM selector for this function is: 0xbdff793d,
549 /// or in textual repr: setOwnerCross((address,uint256))617 /// or in textual repr: setOwnerCross((address,uint256))
550 function setOwnerCross(Tuple6 memory newOwner) public {618 function setOwnerCross(Tuple6 memory newOwner) public {
619=======
620 /// @dev EVM selector for this function is: 0xe5c9913f,
621 /// or in textual repr: setOwnerCross(EthCrossAccount)
622 /// or in the expanded repr: setOwnerCross((address,uint256))
623 function setOwnerCross(EthCrossAccount memory newOwner) public {
624>>>>>>> misk: update stubs
551 require(false, stub_error);625 require(false, stub_error);
552 newOwner;626 newOwner;
553 dummy = 0;627 dummy = 0;
556630
557<<<<<<< HEAD631<<<<<<< HEAD
558<<<<<<< HEAD632<<<<<<< HEAD
633<<<<<<< HEAD
559/// @dev anonymous struct634/// @dev anonymous struct
560struct Tuple19 {635struct Tuple19 {
636=======
637/// @dev Cross account struct
638struct EthCrossAccount {
639 address eth;
640 uint256 sub;
641}
642
643/// @dev anonymous struct
644struct Tuple24 {
645>>>>>>> misk: update stubs
561 address field_0;646 address field_0;
562 uint256 field_1;647 uint256 field_1;
563}648}
564649
650<<<<<<< HEAD
565/// @title ERC-721 Non-Fungible Token Standard, optional metadata extension651/// @title ERC-721 Non-Fungible Token Standard, optional metadata extension
566/// @dev See https://eips.ethereum.org/EIPS/eip-721652/// @dev See https://eips.ethereum.org/EIPS/eip-721
567/// @dev the ERC-165 identifier for this interface is 0x5b5e139f653/// @dev the ERC-165 identifier for this interface is 0x5b5e139f
608=======694=======
609>>>>>>> feat: Add custum signature with unlimited nesting.695>>>>>>> feat: Add custum signature with unlimited nesting.
610=======696=======
697=======
698>>>>>>> misk: update stubs
611/// @dev anonymous struct699/// @dev anonymous struct
612struct Tuple21 {700struct Tuple21 {
613 string field_0;701 string field_0;
717805
718/// @title Unique extensions for ERC721.806/// @title Unique extensions for ERC721.
719<<<<<<< HEAD807<<<<<<< HEAD
808<<<<<<< HEAD
720/// @dev the ERC-165 identifier for this interface is 0x244543ee809/// @dev the ERC-165 identifier for this interface is 0x244543ee
721=======810=======
722/// @dev the ERC-165 identifier for this interface is 0xcc97cb35811/// @dev the ERC-165 identifier for this interface is 0xcc97cb35
723>>>>>>> feat: Add custum signature with unlimited nesting.812>>>>>>> feat: Add custum signature with unlimited nesting.
813=======
814/// @dev the ERC-165 identifier for this interface is 0xb76006ac
815>>>>>>> misk: update stubs
724contract ERC721UniqueExtensions is Dummy, ERC165 {816contract ERC721UniqueExtensions is Dummy, ERC165 {
725 /// @notice A descriptive name for a collection of NFTs in this contract817 /// @notice A descriptive name for a collection of NFTs in this contract
726 /// @dev EVM selector for this function is: 0x06fdde03,818 /// @dev EVM selector for this function is: 0x06fdde03,
746 /// operator of the current owner.838 /// operator of the current owner.
747 /// @param approved The new substrate address approved NFT controller839 /// @param approved The new substrate address approved NFT controller
748 /// @param tokenId The NFT to approve840 /// @param tokenId The NFT to approve
841<<<<<<< HEAD
749 /// @dev EVM selector for this function is: 0x106fdb59,842 /// @dev EVM selector for this function is: 0x106fdb59,
750 /// or in textual repr: approveCross((address,uint256),uint256)843 /// or in textual repr: approveCross((address,uint256),uint256)
751 function approveCross(Tuple6 memory approved, uint256 tokenId) public {844 function approveCross(Tuple6 memory approved, uint256 tokenId) public {
845=======
846 /// @dev EVM selector for this function is: 0x0ecd0ab0,
847 /// or in textual repr: approveCross(EthCrossAccount,uint256)
848 /// or in the expanded repr: approveCross((address,uint256),uint256)
849 function approveCross(EthCrossAccount memory approved, uint256 tokenId) public {
850>>>>>>> misk: update stubs
752 require(false, stub_error);851 require(false, stub_error);
753 approved;852 approved;
754 tokenId;853 tokenId;
777 /// @param tokenId The NFT to transfer876 /// @param tokenId The NFT to transfer
778 /// @dev EVM selector for this function is: 0xd5cf430b,877 /// @dev EVM selector for this function is: 0xd5cf430b,
779 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)878 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)
879 /// or in the expanded repr: transferFromCross((address,uint256),(address,uint256),uint256)
780 function transferFromCross(880 function transferFromCross(
781<<<<<<< HEAD881<<<<<<< HEAD
782 Tuple6 memory from,882 Tuple6 memory from,
815 /// if `to` is the zero address. Throws if `tokenId` is not a valid NFT.915 /// if `to` is the zero address. Throws if `tokenId` is not a valid NFT.
816 /// @param from The current owner of the NFT916 /// @param from The current owner of the NFT
817 /// @param tokenId The NFT to transfer917 /// @param tokenId The NFT to transfer
918<<<<<<< HEAD
818 /// @dev EVM selector for this function is: 0xa8106d4a,919 /// @dev EVM selector for this function is: 0xa8106d4a,
819 /// or in textual repr: burnFromCross((address,uint256),uint256)920 /// or in textual repr: burnFromCross((address,uint256),uint256)
820 function burnFromCross(Tuple6 memory from, uint256 tokenId) public {921 function burnFromCross(Tuple6 memory from, uint256 tokenId) public {
922=======
923 /// @dev EVM selector for this function is: 0xbb2f5a58,
924 /// or in textual repr: burnFromCross(EthCrossAccount,uint256)
925 /// or in the expanded repr: burnFromCross((address,uint256),uint256)
926 function burnFromCross(EthCrossAccount memory from, uint256 tokenId) public {
927>>>>>>> misk: update stubs
821 require(false, stub_error);928 require(false, stub_error);
822 from;929 from;
823 tokenId;930 tokenId;
873 /// should be obtained with `nextTokenId` method980 /// should be obtained with `nextTokenId` method
874 /// @param to The new owner981 /// @param to The new owner
875 /// @param tokenIds IDs of the minted NFTs982 /// @param tokenIds IDs of the minted NFTs
876 /// @dev EVM selector for this function is: 0xf9d9a5a3,983 /// @dev EVM selector for this function is: 0x44a9945e,
877 /// or in textual repr: mintBulk(address,uint256[])984 /// or in textual repr: mintBulk(address,uint256[])
878 function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) {985 function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) {
879 require(false, stub_error);986 require(false, stub_error);
888 /// numbers and first number should be obtained with `nextTokenId` method995 /// numbers and first number should be obtained with `nextTokenId` method
889 /// @param to The new owner996 /// @param to The new owner
890 /// @param tokens array of pairs of token ID and token URI for minted tokens997 /// @param tokens array of pairs of token ID and token URI for minted tokens
891 /// @dev EVM selector for this function is: 0xfd4e2a99,998 /// @dev EVM selector for this function is: 0x36543006,
892 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])999 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
893 function mintBulkWithTokenURI(address to, Tuple12[] memory tokens) public returns (bool) {1000 function mintBulkWithTokenURI(address to, Tuple12[] memory tokens) public returns (bool) {
894 require(false, stub_error);1001 require(false, stub_error);
907}1014}
9081015
909<<<<<<< HEAD1016<<<<<<< HEAD
1017<<<<<<< HEAD
910/// @dev anonymous struct1018/// @dev anonymous struct
911struct Tuple6 {1019struct Tuple6 {
912 address field_0;1020 address field_0;
925 uint256 field_1;1033 uint256 field_1;
926}1034}
9271035
1036=======
1037>>>>>>> misk: update stubs
928/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension1038/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
929/// @dev See https://eips.ethereum.org/EIPS/eip-7211039/// @dev See https://eips.ethereum.org/EIPS/eip-721
930/// @dev the ERC-165 identifier for this interface is 0x780e9d631040/// @dev the ERC-165 identifier for this interface is 0x780e9d63
modifiedpallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth
124 /// @param properties Vector of properties key/value pair.124 /// @param properties Vector of properties key/value pair.
125 /// @dev EVM selector for this function is: 0x50b26b2a,125 /// @dev EVM selector for this function is: 0x50b26b2a,
126 /// or in textual repr: setCollectionProperties((string,bytes)[])126 /// or in textual repr: setCollectionProperties((string,bytes)[])
127 function setCollectionProperties(Tuple19[] memory properties) public {127 function setCollectionProperties(Tuple20[] memory properties) public {
128 require(false, stub_error);128 require(false, stub_error);
129 properties;129 properties;
130 dummy = 0;130 dummy = 0;
173 /// @return Vector of properties key/value pairs.173 /// @return Vector of properties key/value pairs.
174 /// @dev EVM selector for this function is: 0x285fb8e6,174 /// @dev EVM selector for this function is: 0x285fb8e6,
175 /// or in textual repr: collectionProperties(string[])175 /// or in textual repr: collectionProperties(string[])
176 function collectionProperties(string[] memory keys) public view returns (Tuple19[] memory) {176 function collectionProperties(string[] memory keys) public view returns (Tuple20[] memory) {
177 require(false, stub_error);177 require(false, stub_error);
178 keys;178 keys;
179 dummy;179 dummy;
180 return new Tuple19[](0);180 return new Tuple20[](0);
181 }181 }
182182
183 /// Set the sponsor of the collection.183 /// Set the sponsor of the collection.
199 ///199 ///
200 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.200 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.
201 /// @dev EVM selector for this function is: 0x84a1d5a8,201 /// @dev EVM selector for this function is: 0x84a1d5a8,
202<<<<<<< HEAD
202 /// or in textual repr: setCollectionSponsorCross((address,uint256))203 /// or in textual repr: setCollectionSponsorCross((address,uint256))
203 function setCollectionSponsorCross(Tuple6 memory sponsor) public {204 function setCollectionSponsorCross(Tuple6 memory sponsor) public {
205=======
206 /// or in textual repr: setCollectionSponsorCross(EthCrossAccount)
207 /// or in the expanded repr: setCollectionSponsorCross((address,uint256))
208 function setCollectionSponsorCross(EthCrossAccount memory sponsor) public {
209>>>>>>> misk: update stubs
204 require(false, stub_error);210 require(false, stub_error);
205 sponsor;211 sponsor;
206 dummy = 0;212 dummy = 0;
238 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.244 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
239 /// @dev EVM selector for this function is: 0x6ec0a9f1,245 /// @dev EVM selector for this function is: 0x6ec0a9f1,
240 /// or in textual repr: collectionSponsor()246 /// or in textual repr: collectionSponsor()
247<<<<<<< HEAD
241 function collectionSponsor() public view returns (Tuple6 memory) {248 function collectionSponsor() public view returns (Tuple6 memory) {
242 require(false, stub_error);249 require(false, stub_error);
243 dummy;250 dummy;
244 return Tuple6(0x0000000000000000000000000000000000000000, 0);251 return Tuple6(0x0000000000000000000000000000000000000000, 0);
252=======
253 function collectionSponsor() public view returns (Tuple23 memory) {
254 require(false, stub_error);
255 dummy;
256 return Tuple23(0x0000000000000000000000000000000000000000, 0);
257>>>>>>> misk: update stubs
245 }258 }
246259
247 /// Set limits for the collection.260 /// Set limits for the collection.
291 /// Add collection admin.304 /// Add collection admin.
292 /// @param newAdmin Cross account administrator address.305 /// @param newAdmin Cross account administrator address.
293 /// @dev EVM selector for this function is: 0x859aa7d6,306 /// @dev EVM selector for this function is: 0x859aa7d6,
307<<<<<<< HEAD
294 /// or in textual repr: addCollectionAdminCross((address,uint256))308 /// or in textual repr: addCollectionAdminCross((address,uint256))
295 function addCollectionAdminCross(Tuple6 memory newAdmin) public {309 function addCollectionAdminCross(Tuple6 memory newAdmin) public {
310=======
311 /// or in textual repr: addCollectionAdminCross(EthCrossAccount)
312 /// or in the expanded repr: addCollectionAdminCross((address,uint256))
313 function addCollectionAdminCross(EthCrossAccount memory newAdmin) public {
314>>>>>>> misk: update stubs
296 require(false, stub_error);315 require(false, stub_error);
297 newAdmin;316 newAdmin;
298 dummy = 0;317 dummy = 0;
301 /// Remove collection admin.320 /// Remove collection admin.
302 /// @param admin Cross account administrator address.321 /// @param admin Cross account administrator address.
303 /// @dev EVM selector for this function is: 0x6c0cd173,322 /// @dev EVM selector for this function is: 0x6c0cd173,
323<<<<<<< HEAD
304 /// or in textual repr: removeCollectionAdminCross((address,uint256))324 /// or in textual repr: removeCollectionAdminCross((address,uint256))
305 function removeCollectionAdminCross(Tuple6 memory admin) public {325 function removeCollectionAdminCross(Tuple6 memory admin) public {
326=======
327 /// or in textual repr: removeCollectionAdminCross(EthCrossAccount)
328 /// or in the expanded repr: removeCollectionAdminCross((address,uint256))
329 function removeCollectionAdminCross(EthCrossAccount memory admin) public {
330>>>>>>> misk: update stubs
306 require(false, stub_error);331 require(false, stub_error);
307 admin;332 admin;
308 dummy = 0;333 dummy = 0;
392 ///417 ///
393 /// @param user User cross account address.418 /// @param user User cross account address.
394 /// @dev EVM selector for this function is: 0xa0184a3a,419 /// @dev EVM selector for this function is: 0xa0184a3a,
420<<<<<<< HEAD
395 /// or in textual repr: addToCollectionAllowListCross((address,uint256))421 /// or in textual repr: addToCollectionAllowListCross((address,uint256))
396 function addToCollectionAllowListCross(Tuple6 memory user) public {422 function addToCollectionAllowListCross(Tuple6 memory user) public {
423=======
424 /// or in textual repr: addToCollectionAllowListCross(EthCrossAccount)
425 /// or in the expanded repr: addToCollectionAllowListCross((address,uint256))
426 function addToCollectionAllowListCross(EthCrossAccount memory user) public {
427>>>>>>> misk: update stubs
397 require(false, stub_error);428 require(false, stub_error);
398 user;429 user;
399 dummy = 0;430 dummy = 0;
414 ///445 ///
415 /// @param user User cross account address.446 /// @param user User cross account address.
416 /// @dev EVM selector for this function is: 0x09ba452a,447 /// @dev EVM selector for this function is: 0x09ba452a,
448<<<<<<< HEAD
417 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))449 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))
418 function removeFromCollectionAllowListCross(Tuple6 memory user) public {450 function removeFromCollectionAllowListCross(Tuple6 memory user) public {
451=======
452 /// or in textual repr: removeFromCollectionAllowListCross(EthCrossAccount)
453 /// or in the expanded repr: removeFromCollectionAllowListCross((address,uint256))
454 function removeFromCollectionAllowListCross(EthCrossAccount memory user) public {
455>>>>>>> misk: update stubs
419 require(false, stub_error);456 require(false, stub_error);
420 user;457 user;
421 dummy = 0;458 dummy = 0;
450 /// @param user User cross account to verify487 /// @param user User cross account to verify
451 /// @return "true" if account is the owner or admin488 /// @return "true" if account is the owner or admin
452 /// @dev EVM selector for this function is: 0x3e75a905,489 /// @dev EVM selector for this function is: 0x3e75a905,
490<<<<<<< HEAD
453 /// or in textual repr: isOwnerOrAdminCross((address,uint256))491 /// or in textual repr: isOwnerOrAdminCross((address,uint256))
454 function isOwnerOrAdminCross(Tuple6 memory user) public view returns (bool) {492 function isOwnerOrAdminCross(Tuple6 memory user) public view returns (bool) {
493=======
494 /// or in textual repr: isOwnerOrAdminCross(EthCrossAccount)
495 /// or in the expanded repr: isOwnerOrAdminCross((address,uint256))
496 function isOwnerOrAdminCross(EthCrossAccount memory user) public view returns (bool) {
497>>>>>>> misk: update stubs
455 require(false, stub_error);498 require(false, stub_error);
456 user;499 user;
457 dummy;500 dummy;
471514
472 /// Get collection owner.515 /// Get collection owner.
473 ///516 ///
474 /// @return Tuble with sponsor address and his substrate mirror.517 /// @return Tuple with sponsor address and his substrate mirror.
475 /// If address is canonical then substrate mirror is zero and vice versa.518 /// If address is canonical then substrate mirror is zero and vice versa.
476 /// @dev EVM selector for this function is: 0xdf727d3b,519 /// @dev EVM selector for this function is: 0xdf727d3b,
477 /// or in textual repr: collectionOwner()520 /// or in textual repr: collectionOwner()
521<<<<<<< HEAD
478 function collectionOwner() public view returns (Tuple6 memory) {522 function collectionOwner() public view returns (Tuple6 memory) {
479 require(false, stub_error);523 require(false, stub_error);
480 dummy;524 dummy;
481 return Tuple6(0x0000000000000000000000000000000000000000, 0);525 return Tuple6(0x0000000000000000000000000000000000000000, 0);
526=======
527 function collectionOwner() public view returns (EthCrossAccount memory) {
528 require(false, stub_error);
529 dummy;
530 return EthCrossAccount(0x0000000000000000000000000000000000000000, 0);
531>>>>>>> misk: update stubs
482 }532 }
483533
484 /// Changes collection owner to another account534 /// Changes collection owner to another account
499 /// If address is canonical then substrate mirror is zero and vice versa.549 /// If address is canonical then substrate mirror is zero and vice versa.
500 /// @dev EVM selector for this function is: 0x5813216b,550 /// @dev EVM selector for this function is: 0x5813216b,
501 /// or in textual repr: collectionAdmins()551 /// or in textual repr: collectionAdmins()
552<<<<<<< HEAD
502 function collectionAdmins() public view returns (Tuple6[] memory) {553 function collectionAdmins() public view returns (Tuple6[] memory) {
503 require(false, stub_error);554 require(false, stub_error);
504 dummy;555 dummy;
505 return new Tuple6[](0);556 return new Tuple6[](0);
557=======
558 function collectionAdmins() public view returns (EthCrossAccount[] memory) {
559 require(false, stub_error);
560 dummy;
561 return new EthCrossAccount[](0);
562>>>>>>> misk: update stubs
506 }563 }
507564
508 /// Changes collection owner to another account565 /// Changes collection owner to another account
509 ///566 ///
510 /// @dev Owner can be changed only by current owner567 /// @dev Owner can be changed only by current owner
511 /// @param newOwner new owner cross account568 /// @param newOwner new owner cross account
512 /// @dev EVM selector for this function is: 0xe5c9913f,569 /// @dev EVM selector for this function is: 0xe5c9913f,
570<<<<<<< HEAD
513 /// or in textual repr: setOwnerCross((address,uint256))571 /// or in textual repr: setOwnerCross((address,uint256))
514 function setOwnerCross(Tuple6 memory newOwner) public {572 function setOwnerCross(Tuple6 memory newOwner) public {
573=======
574 /// or in textual repr: setOwnerCross(EthCrossAccount)
575 /// or in the expanded repr: setOwnerCross((address,uint256))
576 function setOwnerCross(EthCrossAccount memory newOwner) public {
577>>>>>>> misk: update stubs
515 require(false, stub_error);578 require(false, stub_error);
516 newOwner;579 newOwner;
517 dummy = 0;580 dummy = 0;
518 }581 }
519}582}
520583
584/// @dev Cross account struct
585struct EthCrossAccount {
586 address eth;
587 uint256 sub;
588}
589
521/// @dev anonymous struct590/// @dev anonymous struct
522struct Tuple19 {591struct Tuple23 {
592 address field_0;
593 uint256 field_1;
594}
595
596/// @dev anonymous struct
597struct Tuple20 {
523 string field_0;598 string field_0;
524 bytes field_1;599 bytes field_1;
525}600}
708 /// @param to The new owner783 /// @param to The new owner
709 /// @param tokenId The RFT to transfer784 /// @param tokenId The RFT to transfer
710 /// @dev EVM selector for this function is: 0xd5cf430b,785 /// @dev EVM selector for this function is: 0xd5cf430b,
711 /// or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)786 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)
787 /// or in the expanded repr: transferFromCross((address,uint256),(address,uint256),uint256)
712 function transferFromCross(788 function transferFromCross(
789<<<<<<< HEAD
713 Tuple6 memory from,790 Tuple6 memory from,
714 Tuple6 memory to,791 Tuple6 memory to,
792=======
793 EthCrossAccount memory from,
794 EthCrossAccount memory to,
795>>>>>>> misk: update stubs
715 uint256 tokenId796 uint256 tokenId
716 ) public {797 ) public {
717 require(false, stub_error);798 require(false, stub_error);
745 /// @param from The current owner of the RFT826 /// @param from The current owner of the RFT
746 /// @param tokenId The RFT to transfer827 /// @param tokenId The RFT to transfer
747 /// @dev EVM selector for this function is: 0xbb2f5a58,828 /// @dev EVM selector for this function is: 0xbb2f5a58,
829<<<<<<< HEAD
748 /// or in textual repr: burnFromCross((address,uint256),uint256)830 /// or in textual repr: burnFromCross((address,uint256),uint256)
749 function burnFromCross(Tuple6 memory from, uint256 tokenId) public {831 function burnFromCross(Tuple6 memory from, uint256 tokenId) public {
832=======
833 /// or in textual repr: burnFromCross(EthCrossAccount,uint256)
834 /// or in the expanded repr: burnFromCross((address,uint256),uint256)
835 function burnFromCross(EthCrossAccount memory from, uint256 tokenId) public {
836>>>>>>> misk: update stubs
750 require(false, stub_error);837 require(false, stub_error);
751 from;838 from;
752 tokenId;839 tokenId;
762 return 0;849 return 0;
763 }850 }
764851
852<<<<<<< HEAD
765 // /// @notice Function to mint multiple tokens.853 // /// @notice Function to mint multiple tokens.
766 // /// @dev `tokenIds` should be an array of consecutive numbers and first number854 // /// @dev `tokenIds` should be an array of consecutive numbers and first number
767 // /// should be obtained with `nextTokenId` method855 // /// should be obtained with `nextTokenId` method
791 // dummy = 0;879 // dummy = 0;
792 // return false;880 // return false;
793 // }881 // }
882=======
883 /// @notice Function to mint multiple tokens.
884 /// @dev `tokenIds` should be an array of consecutive numbers and first number
885 /// should be obtained with `nextTokenId` method
886 /// @param to The new owner
887 /// @param tokenIds IDs of the minted RFTs
888 /// @dev EVM selector for this function is: 0x44a9945e,
889 /// or in textual repr: mintBulk(address,uint256[])
890 function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) {
891 require(false, stub_error);
892 to;
893 tokenIds;
894 dummy = 0;
895 return false;
896 }
897
898 /// @notice Function to mint multiple tokens with the given tokenUris.
899 /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive
900 /// numbers and first number should be obtained with `nextTokenId` method
901 /// @param to The new owner
902 /// @param tokens array of pairs of token ID and token URI for minted tokens
903 /// @dev EVM selector for this function is: 0x36543006,
904 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
905 function mintBulkWithTokenURI(address to, Tuple11[] memory tokens) public returns (bool) {
906 require(false, stub_error);
907 to;
908 tokens;
909 dummy = 0;
910 return false;
911 }
912>>>>>>> misk: update stubs
794913
795 /// Returns EVM address for refungible token914 /// Returns EVM address for refungible token
796 ///915 ///
806}925}
807926
808/// @dev anonymous struct927/// @dev anonymous struct
928<<<<<<< HEAD
809struct Tuple8 {929struct Tuple8 {
930=======
931struct Tuple11 {
932>>>>>>> misk: update stubs
810 uint256 field_0;933 uint256 field_0;
811 string field_1;934 string field_1;
812}935}
813936
937<<<<<<< HEAD
814/// @dev anonymous struct938/// @dev anonymous struct
815struct Tuple6 {939struct Tuple6 {
816 address field_0;940 address field_0;
817 uint256 field_1;941 uint256 field_1;
818}942}
819943
944=======
945>>>>>>> misk: update stubs
820/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension946/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
821/// @dev See https://eips.ethereum.org/EIPS/eip-721947/// @dev See https://eips.ethereum.org/EIPS/eip-721
822/// @dev the ERC-165 identifier for this interface is 0x780e9d63948/// @dev the ERC-165 identifier for this interface is 0x780e9d63
modifiedtests/src/eth/api/UniqueNFT.soldiffbeforeafterboth
72/// @title A contract that allows you to work with collections.72/// @title A contract that allows you to work with collections.
73<<<<<<< HEAD73<<<<<<< HEAD
74<<<<<<< HEAD74<<<<<<< HEAD
75<<<<<<< HEAD
75/// @dev the ERC-165 identifier for this interface is 0xb3152af376/// @dev the ERC-165 identifier for this interface is 0xb3152af3
76=======77=======
77/// @dev the ERC-165 identifier for this interface is 0x674be72678/// @dev the ERC-165 identifier for this interface is 0x674be726
78>>>>>>> feat: Add custum signature with unlimited nesting.79>>>>>>> feat: Add custum signature with unlimited nesting.
79=======80=======
80/// @dev the ERC-165 identifier for this interface is 0x943ee09481/// @dev the ERC-165 identifier for this interface is 0x943ee094
81>>>>>>> fix: after rebase82>>>>>>> fix: after rebase
83=======
84/// @dev the ERC-165 identifier for this interface is 0xefe988e0
85>>>>>>> misk: update stubs
82interface Collection is Dummy, ERC165 {86interface Collection is Dummy, ERC165 {
83 /// Set collection property.87 /// Set collection property.
84 ///88 ///
91 /// Set collection properties.95 /// Set collection properties.
92 ///96 ///
93 /// @param properties Vector of properties key/value pair.97 /// @param properties Vector of properties key/value pair.
94 /// @dev EVM selector for this function is: 0xf90c1ce9,98 /// @dev EVM selector for this function is: 0x50b26b2a,
95 /// or in textual repr: setCollectionProperties((string,bytes)[])99 /// or in textual repr: setCollectionProperties((string,bytes)[])
96 function setCollectionProperties(Tuple21[] memory properties) external;100 function setCollectionProperties(Tuple21[] memory properties) external;
97101
105 /// Delete collection properties.109 /// Delete collection properties.
106 ///110 ///
107 /// @param keys Properties keys.111 /// @param keys Properties keys.
108 /// @dev EVM selector for this function is: 0x56d4684a,112 /// @dev EVM selector for this function is: 0xee206ee3,
109 /// or in textual repr: deleteCollectionProperties(string[])113 /// or in textual repr: deleteCollectionProperties(string[])
110 function deleteCollectionProperties(string[] memory keys) external;114 function deleteCollectionProperties(string[] memory keys) external;
111115
123 ///127 ///
124 /// @param keys Properties keys. Empty keys for all propertyes.128 /// @param keys Properties keys. Empty keys for all propertyes.
125 /// @return Vector of properties key/value pairs.129 /// @return Vector of properties key/value pairs.
126 /// @dev EVM selector for this function is: 0x5cad7311,130 /// @dev EVM selector for this function is: 0x285fb8e6,
127 /// or in textual repr: collectionProperties(string[])131 /// or in textual repr: collectionProperties(string[])
128 function collectionProperties(string[] memory keys) external view returns (Tuple21[] memory);132 function collectionProperties(string[] memory keys) external view returns (Tuple21[] memory);
129133
141 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.145 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.
142 ///146 ///
143 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.147 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.
148<<<<<<< HEAD
144 /// @dev EVM selector for this function is: 0x403e96a7,149 /// @dev EVM selector for this function is: 0x403e96a7,
145 /// or in textual repr: setCollectionSponsorCross((address,uint256))150 /// or in textual repr: setCollectionSponsorCross((address,uint256))
146 function setCollectionSponsorCross(Tuple6 memory sponsor) external;151 function setCollectionSponsorCross(Tuple6 memory sponsor) external;
152=======
153 /// @dev EVM selector for this function is: 0x84a1d5a8,
154 /// or in textual repr: setCollectionSponsorCross(EthCrossAccount)
155 /// or in the expanded repr: setCollectionSponsorCross((address,uint256))
156 function setCollectionSponsorCross(EthCrossAccount memory sponsor) external;
157>>>>>>> misk: update stubs
147158
148 /// Whether there is a pending sponsor.159 /// Whether there is a pending sponsor.
149 /// @dev EVM selector for this function is: 0x058ac185,160 /// @dev EVM selector for this function is: 0x058ac185,
167 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.178 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
168 /// @dev EVM selector for this function is: 0x6ec0a9f1,179 /// @dev EVM selector for this function is: 0x6ec0a9f1,
169 /// or in textual repr: collectionSponsor()180 /// or in textual repr: collectionSponsor()
170 function collectionSponsor() external view returns (Tuple8 memory);181 function collectionSponsor() external view returns (Tuple24 memory);
171182
172 /// Set limits for the collection.183 /// Set limits for the collection.
173 /// @dev Throws error if limit not found.184 /// @dev Throws error if limit not found.
201212
202 /// Add collection admin.213 /// Add collection admin.
203 /// @param newAdmin Cross account administrator address.214 /// @param newAdmin Cross account administrator address.
215<<<<<<< HEAD
204 /// @dev EVM selector for this function is: 0x62e3c7c2,216 /// @dev EVM selector for this function is: 0x62e3c7c2,
205 /// or in textual repr: addCollectionAdminCross((address,uint256))217 /// or in textual repr: addCollectionAdminCross((address,uint256))
206 function addCollectionAdminCross(Tuple6 memory newAdmin) external;218 function addCollectionAdminCross(Tuple6 memory newAdmin) external;
210 /// @dev EVM selector for this function is: 0x810d1503,222 /// @dev EVM selector for this function is: 0x810d1503,
211 /// or in textual repr: removeCollectionAdminCross((address,uint256))223 /// or in textual repr: removeCollectionAdminCross((address,uint256))
212 function removeCollectionAdminCross(Tuple6 memory admin) external;224 function removeCollectionAdminCross(Tuple6 memory admin) external;
225=======
226 /// @dev EVM selector for this function is: 0x859aa7d6,
227 /// or in textual repr: addCollectionAdminCross(EthCrossAccount)
228 /// or in the expanded repr: addCollectionAdminCross((address,uint256))
229 function addCollectionAdminCross(EthCrossAccount memory newAdmin) external;
213230
231 /// Remove collection admin.
232 /// @param admin Cross account administrator address.
233 /// @dev EVM selector for this function is: 0x6c0cd173,
234 /// or in textual repr: removeCollectionAdminCross(EthCrossAccount)
235 /// or in the expanded repr: removeCollectionAdminCross((address,uint256))
236 function removeCollectionAdminCross(EthCrossAccount memory admin) external;
237>>>>>>> misk: update stubs
238
214 /// Add collection admin.239 /// Add collection admin.
215 /// @param newAdmin Address of the added administrator.240 /// @param newAdmin Address of the added administrator.
216 /// @dev EVM selector for this function is: 0x92e462c7,241 /// @dev EVM selector for this function is: 0x92e462c7,
235 ///260 ///
236 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'261 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'
237 /// @param collections Addresses of collections that will be available for nesting.262 /// @param collections Addresses of collections that will be available for nesting.
238 /// @dev EVM selector for this function is: 0x112d4586,263 /// @dev EVM selector for this function is: 0x64872396,
239 /// or in textual repr: setCollectionNesting(bool,address[])264 /// or in textual repr: setCollectionNesting(bool,address[])
240 function setCollectionNesting(bool enable, address[] memory collections) external;265 function setCollectionNesting(bool enable, address[] memory collections) external;
241266
264 /// Add user to allowed list.289 /// Add user to allowed list.
265 ///290 ///
266 /// @param user User cross account address.291 /// @param user User cross account address.
292<<<<<<< HEAD
267 /// @dev EVM selector for this function is: 0xf074da88,293 /// @dev EVM selector for this function is: 0xf074da88,
268 /// or in textual repr: addToCollectionAllowListCross((address,uint256))294 /// or in textual repr: addToCollectionAllowListCross((address,uint256))
269 function addToCollectionAllowListCross(Tuple6 memory user) external;295 function addToCollectionAllowListCross(Tuple6 memory user) external;
296=======
297 /// @dev EVM selector for this function is: 0xa0184a3a,
298 /// or in textual repr: addToCollectionAllowListCross(EthCrossAccount)
299 /// or in the expanded repr: addToCollectionAllowListCross((address,uint256))
300 function addToCollectionAllowListCross(EthCrossAccount memory user) external;
301>>>>>>> misk: update stubs
270302
271 /// Remove the user from the allowed list.303 /// Remove the user from the allowed list.
272 ///304 ///
278 /// Remove user from allowed list.310 /// Remove user from allowed list.
279 ///311 ///
280 /// @param user User cross account address.312 /// @param user User cross account address.
313<<<<<<< HEAD
281 /// @dev EVM selector for this function is: 0xc00df45c,314 /// @dev EVM selector for this function is: 0xc00df45c,
282 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))315 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))
283 function removeFromCollectionAllowListCross(Tuple6 memory user) external;316 function removeFromCollectionAllowListCross(Tuple6 memory user) external;
317=======
318 /// @dev EVM selector for this function is: 0x09ba452a,
319 /// or in textual repr: removeFromCollectionAllowListCross(EthCrossAccount)
320 /// or in the expanded repr: removeFromCollectionAllowListCross((address,uint256))
321 function removeFromCollectionAllowListCross(EthCrossAccount memory user) external;
322>>>>>>> misk: update stubs
284323
285 /// Switch permission for minting.324 /// Switch permission for minting.
286 ///325 ///
301 ///340 ///
302 /// @param user User cross account to verify341 /// @param user User cross account to verify
303 /// @return "true" if account is the owner or admin342 /// @return "true" if account is the owner or admin
343<<<<<<< HEAD
304 /// @dev EVM selector for this function is: 0x5aba3351,344 /// @dev EVM selector for this function is: 0x5aba3351,
305 /// or in textual repr: isOwnerOrAdminCross((address,uint256))345 /// or in textual repr: isOwnerOrAdminCross((address,uint256))
306 function isOwnerOrAdminCross(Tuple6 memory user) external view returns (bool);346 function isOwnerOrAdminCross(Tuple6 memory user) external view returns (bool);
347=======
348 /// @dev EVM selector for this function is: 0x3e75a905,
349 /// or in textual repr: isOwnerOrAdminCross(EthCrossAccount)
350 /// or in the expanded repr: isOwnerOrAdminCross((address,uint256))
351 function isOwnerOrAdminCross(EthCrossAccount memory user) external view returns (bool);
352>>>>>>> misk: update stubs
307353
308 /// Returns collection type354 /// Returns collection type
309 ///355 ///
318 /// If address is canonical then substrate mirror is zero and vice versa.364 /// If address is canonical then substrate mirror is zero and vice versa.
319 /// @dev EVM selector for this function is: 0xdf727d3b,365 /// @dev EVM selector for this function is: 0xdf727d3b,
320 /// or in textual repr: collectionOwner()366 /// or in textual repr: collectionOwner()
321 function collectionOwner() external view returns (Tuple8 memory);367 function collectionOwner() external view returns (EthCrossAccount memory);
322368
323 /// Changes collection owner to another account369 /// Changes collection owner to another account
324 ///370 ///
334 /// If address is canonical then substrate mirror is zero and vice versa.380 /// If address is canonical then substrate mirror is zero and vice versa.
335 /// @dev EVM selector for this function is: 0x5813216b,381 /// @dev EVM selector for this function is: 0x5813216b,
336 /// or in textual repr: collectionAdmins()382 /// or in textual repr: collectionAdmins()
383<<<<<<< HEAD
337 function collectionAdmins() external view returns (Tuple6[] memory);384 function collectionAdmins() external view returns (Tuple6[] memory);
385=======
386 function collectionAdmins() external view returns (EthCrossAccount[] memory);
387>>>>>>> misk: update stubs
338388
339 /// Changes collection owner to another account389 /// Changes collection owner to another account
340 ///390 ///
341 /// @dev Owner can be changed only by current owner391 /// @dev Owner can be changed only by current owner
342 /// @param newOwner new owner cross account392 /// @param newOwner new owner cross account
393<<<<<<< HEAD
343 /// @dev EVM selector for this function is: 0xbdff793d,394 /// @dev EVM selector for this function is: 0xbdff793d,
344 /// or in textual repr: setOwnerCross((address,uint256))395 /// or in textual repr: setOwnerCross((address,uint256))
345 function setOwnerCross(Tuple6 memory newOwner) external;396 function setOwnerCross(Tuple6 memory newOwner) external;
397=======
398 /// @dev EVM selector for this function is: 0xe5c9913f,
399 /// or in textual repr: setOwnerCross(EthCrossAccount)
400 /// or in the expanded repr: setOwnerCross((address,uint256))
401 function setOwnerCross(EthCrossAccount memory newOwner) external;
346}402}
347403
404/// @dev Cross account struct
405struct EthCrossAccount {
406 address eth;
407 uint256 sub;
408}
409
410/// @dev anonymous struct
411struct Tuple24 {
412 address field_0;
413 uint256 field_1;
414>>>>>>> misk: update stubs
415}
416
348<<<<<<< HEAD417<<<<<<< HEAD
349/// @dev anonymous struct418/// @dev anonymous struct
350struct Tuple19 {419struct Tuple19 {
459528
460/// @title Unique extensions for ERC721.529/// @title Unique extensions for ERC721.
461<<<<<<< HEAD530<<<<<<< HEAD
531<<<<<<< HEAD
462/// @dev the ERC-165 identifier for this interface is 0x244543ee532/// @dev the ERC-165 identifier for this interface is 0x244543ee
463=======533=======
464/// @dev the ERC-165 identifier for this interface is 0xcc97cb35534/// @dev the ERC-165 identifier for this interface is 0xcc97cb35
465>>>>>>> feat: Add custum signature with unlimited nesting.535>>>>>>> feat: Add custum signature with unlimited nesting.
536=======
537/// @dev the ERC-165 identifier for this interface is 0xb76006ac
538>>>>>>> misk: update stubs
466interface ERC721UniqueExtensions is Dummy, ERC165 {539interface ERC721UniqueExtensions is Dummy, ERC165 {
467 /// @notice A descriptive name for a collection of NFTs in this contract540 /// @notice A descriptive name for a collection of NFTs in this contract
468 /// @dev EVM selector for this function is: 0x06fdde03,541 /// @dev EVM selector for this function is: 0x06fdde03,
480 /// operator of the current owner.553 /// operator of the current owner.
481 /// @param approved The new substrate address approved NFT controller554 /// @param approved The new substrate address approved NFT controller
482 /// @param tokenId The NFT to approve555 /// @param tokenId The NFT to approve
556<<<<<<< HEAD
483 /// @dev EVM selector for this function is: 0x106fdb59,557 /// @dev EVM selector for this function is: 0x106fdb59,
484 /// or in textual repr: approveCross((address,uint256),uint256)558 /// or in textual repr: approveCross((address,uint256),uint256)
485 function approveCross(Tuple6 memory approved, uint256 tokenId) external;559 function approveCross(Tuple6 memory approved, uint256 tokenId) external;
560=======
561 /// @dev EVM selector for this function is: 0x0ecd0ab0,
562 /// or in textual repr: approveCross(EthCrossAccount,uint256)
563 /// or in the expanded repr: approveCross((address,uint256),uint256)
564 function approveCross(EthCrossAccount memory approved, uint256 tokenId) external;
565>>>>>>> misk: update stubs
486566
487 /// @notice Transfer ownership of an NFT567 /// @notice Transfer ownership of an NFT
488 /// @dev Throws unless `msg.sender` is the current owner. Throws if `to`568 /// @dev Throws unless `msg.sender` is the current owner. Throws if `to`
501 /// @param tokenId The NFT to transfer581 /// @param tokenId The NFT to transfer
502 /// @dev EVM selector for this function is: 0xd5cf430b,582 /// @dev EVM selector for this function is: 0xd5cf430b,
503 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)583 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)
584 /// or in the expanded repr: transferFromCross((address,uint256),(address,uint256),uint256)
504 function transferFromCross(585 function transferFromCross(
505<<<<<<< HEAD586<<<<<<< HEAD
506 Tuple6 memory from,587 Tuple6 memory from,
528 /// if `to` is the zero address. Throws if `tokenId` is not a valid NFT.609 /// if `to` is the zero address. Throws if `tokenId` is not a valid NFT.
529 /// @param from The current owner of the NFT610 /// @param from The current owner of the NFT
530 /// @param tokenId The NFT to transfer611 /// @param tokenId The NFT to transfer
612<<<<<<< HEAD
531 /// @dev EVM selector for this function is: 0xa8106d4a,613 /// @dev EVM selector for this function is: 0xa8106d4a,
532 /// or in textual repr: burnFromCross((address,uint256),uint256)614 /// or in textual repr: burnFromCross((address,uint256),uint256)
533 function burnFromCross(Tuple6 memory from, uint256 tokenId) external;615 function burnFromCross(Tuple6 memory from, uint256 tokenId) external;
616=======
617 /// @dev EVM selector for this function is: 0xbb2f5a58,
618 /// or in textual repr: burnFromCross(EthCrossAccount,uint256)
619 /// or in the expanded repr: burnFromCross((address,uint256),uint256)
620 function burnFromCross(EthCrossAccount memory from, uint256 tokenId) external;
621>>>>>>> misk: update stubs
534622
535 /// @notice Returns next free NFT ID.623 /// @notice Returns next free NFT ID.
536 /// @dev EVM selector for this function is: 0x75794a3c,624 /// @dev EVM selector for this function is: 0x75794a3c,
565 /// should be obtained with `nextTokenId` method653 /// should be obtained with `nextTokenId` method
566 /// @param to The new owner654 /// @param to The new owner
567 /// @param tokenIds IDs of the minted NFTs655 /// @param tokenIds IDs of the minted NFTs
568 /// @dev EVM selector for this function is: 0xf9d9a5a3,656 /// @dev EVM selector for this function is: 0x44a9945e,
569 /// or in textual repr: mintBulk(address,uint256[])657 /// or in textual repr: mintBulk(address,uint256[])
570 function mintBulk(address to, uint256[] memory tokenIds) external returns (bool);658 function mintBulk(address to, uint256[] memory tokenIds) external returns (bool);
571659
574 /// numbers and first number should be obtained with `nextTokenId` method662 /// numbers and first number should be obtained with `nextTokenId` method
575 /// @param to The new owner663 /// @param to The new owner
576 /// @param tokens array of pairs of token ID and token URI for minted tokens664 /// @param tokens array of pairs of token ID and token URI for minted tokens
577 /// @dev EVM selector for this function is: 0xfd4e2a99,665 /// @dev EVM selector for this function is: 0x36543006,
578 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])666 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
579 function mintBulkWithTokenURI(address to, Tuple12[] memory tokens) external returns (bool);667 function mintBulkWithTokenURI(address to, Tuple12[] memory tokens) external returns (bool);
580}668}
586 string field_1;674 string field_1;
587}675}
588676
677<<<<<<< HEAD
589/// @dev anonymous struct678/// @dev anonymous struct
590struct Tuple8 {679struct Tuple8 {
591 address field_0;680 address field_0;
598 uint256 field_1;687 uint256 field_1;
599}688}
600689
690=======
691>>>>>>> misk: update stubs
601/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension692/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
602/// @dev See https://eips.ethereum.org/EIPS/eip-721693/// @dev See https://eips.ethereum.org/EIPS/eip-721
603/// @dev the ERC-165 identifier for this interface is 0x780e9d63694/// @dev the ERC-165 identifier for this interface is 0x780e9d63
modifiedtests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth
85 /// @param properties Vector of properties key/value pair.85 /// @param properties Vector of properties key/value pair.
86 /// @dev EVM selector for this function is: 0x50b26b2a,86 /// @dev EVM selector for this function is: 0x50b26b2a,
87 /// or in textual repr: setCollectionProperties((string,bytes)[])87 /// or in textual repr: setCollectionProperties((string,bytes)[])
88 function setCollectionProperties(Tuple19[] memory properties) external;88 function setCollectionProperties(Tuple20[] memory properties) external;
8989
90 /// Delete collection property.90 /// Delete collection property.
91 ///91 ///
117 /// @return Vector of properties key/value pairs.117 /// @return Vector of properties key/value pairs.
118 /// @dev EVM selector for this function is: 0x285fb8e6,118 /// @dev EVM selector for this function is: 0x285fb8e6,
119 /// or in textual repr: collectionProperties(string[])119 /// or in textual repr: collectionProperties(string[])
120 function collectionProperties(string[] memory keys) external view returns (Tuple19[] memory);120 function collectionProperties(string[] memory keys) external view returns (Tuple20[] memory);
121121
122 /// Set the sponsor of the collection.122 /// Set the sponsor of the collection.
123 ///123 ///
134 ///134 ///
135 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.135 /// @param sponsor Cross account address of the sponsor from whose account funds will be debited for operations with the contract.
136 /// @dev EVM selector for this function is: 0x84a1d5a8,136 /// @dev EVM selector for this function is: 0x84a1d5a8,
137<<<<<<< HEAD
137 /// or in textual repr: setCollectionSponsorCross((address,uint256))138 /// or in textual repr: setCollectionSponsorCross((address,uint256))
138 function setCollectionSponsorCross(Tuple6 memory sponsor) external;139 function setCollectionSponsorCross(Tuple6 memory sponsor) external;
140=======
141 /// or in textual repr: setCollectionSponsorCross(EthCrossAccount)
142 /// or in the expanded repr: setCollectionSponsorCross((address,uint256))
143 function setCollectionSponsorCross(EthCrossAccount memory sponsor) external;
144>>>>>>> misk: update stubs
139145
140 /// Whether there is a pending sponsor.146 /// Whether there is a pending sponsor.
141 /// @dev EVM selector for this function is: 0x058ac185,147 /// @dev EVM selector for this function is: 0x058ac185,
159 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.165 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
160 /// @dev EVM selector for this function is: 0x6ec0a9f1,166 /// @dev EVM selector for this function is: 0x6ec0a9f1,
161 /// or in textual repr: collectionSponsor()167 /// or in textual repr: collectionSponsor()
168<<<<<<< HEAD
162 function collectionSponsor() external view returns (Tuple6 memory);169 function collectionSponsor() external view returns (Tuple6 memory);
170=======
171 function collectionSponsor() external view returns (Tuple23 memory);
172>>>>>>> misk: update stubs
163173
164 /// Set limits for the collection.174 /// Set limits for the collection.
165 /// @dev Throws error if limit not found.175 /// @dev Throws error if limit not found.
194 /// Add collection admin.204 /// Add collection admin.
195 /// @param newAdmin Cross account administrator address.205 /// @param newAdmin Cross account administrator address.
196 /// @dev EVM selector for this function is: 0x859aa7d6,206 /// @dev EVM selector for this function is: 0x859aa7d6,
207<<<<<<< HEAD
197 /// or in textual repr: addCollectionAdminCross((address,uint256))208 /// or in textual repr: addCollectionAdminCross((address,uint256))
198 function addCollectionAdminCross(Tuple6 memory newAdmin) external;209 function addCollectionAdminCross(Tuple6 memory newAdmin) external;
210=======
211 /// or in textual repr: addCollectionAdminCross(EthCrossAccount)
212 /// or in the expanded repr: addCollectionAdminCross((address,uint256))
213 function addCollectionAdminCross(EthCrossAccount memory newAdmin) external;
214>>>>>>> misk: update stubs
199215
200 /// Remove collection admin.216 /// Remove collection admin.
201 /// @param admin Cross account administrator address.217 /// @param admin Cross account administrator address.
202 /// @dev EVM selector for this function is: 0x6c0cd173,218 /// @dev EVM selector for this function is: 0x6c0cd173,
219<<<<<<< HEAD
203 /// or in textual repr: removeCollectionAdminCross((address,uint256))220 /// or in textual repr: removeCollectionAdminCross((address,uint256))
204 function removeCollectionAdminCross(Tuple6 memory admin) external;221 function removeCollectionAdminCross(Tuple6 memory admin) external;
222=======
223 /// or in textual repr: removeCollectionAdminCross(EthCrossAccount)
224 /// or in the expanded repr: removeCollectionAdminCross((address,uint256))
225 function removeCollectionAdminCross(EthCrossAccount memory admin) external;
226>>>>>>> misk: update stubs
205227
206 /// Add collection admin.228 /// Add collection admin.
207 /// @param newAdmin Address of the added administrator.229 /// @param newAdmin Address of the added administrator.
257 ///279 ///
258 /// @param user User cross account address.280 /// @param user User cross account address.
259 /// @dev EVM selector for this function is: 0xa0184a3a,281 /// @dev EVM selector for this function is: 0xa0184a3a,
282<<<<<<< HEAD
260 /// or in textual repr: addToCollectionAllowListCross((address,uint256))283 /// or in textual repr: addToCollectionAllowListCross((address,uint256))
261 function addToCollectionAllowListCross(Tuple6 memory user) external;284 function addToCollectionAllowListCross(Tuple6 memory user) external;
285=======
286 /// or in textual repr: addToCollectionAllowListCross(EthCrossAccount)
287 /// or in the expanded repr: addToCollectionAllowListCross((address,uint256))
288 function addToCollectionAllowListCross(EthCrossAccount memory user) external;
289>>>>>>> misk: update stubs
262290
263 /// Remove the user from the allowed list.291 /// Remove the user from the allowed list.
264 ///292 ///
271 ///299 ///
272 /// @param user User cross account address.300 /// @param user User cross account address.
273 /// @dev EVM selector for this function is: 0x09ba452a,301 /// @dev EVM selector for this function is: 0x09ba452a,
302<<<<<<< HEAD
274 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))303 /// or in textual repr: removeFromCollectionAllowListCross((address,uint256))
275 function removeFromCollectionAllowListCross(Tuple6 memory user) external;304 function removeFromCollectionAllowListCross(Tuple6 memory user) external;
305=======
306 /// or in textual repr: removeFromCollectionAllowListCross(EthCrossAccount)
307 /// or in the expanded repr: removeFromCollectionAllowListCross((address,uint256))
308 function removeFromCollectionAllowListCross(EthCrossAccount memory user) external;
309>>>>>>> misk: update stubs
276310
277 /// Switch permission for minting.311 /// Switch permission for minting.
278 ///312 ///
294 /// @param user User cross account to verify328 /// @param user User cross account to verify
295 /// @return "true" if account is the owner or admin329 /// @return "true" if account is the owner or admin
296 /// @dev EVM selector for this function is: 0x3e75a905,330 /// @dev EVM selector for this function is: 0x3e75a905,
331<<<<<<< HEAD
297 /// or in textual repr: isOwnerOrAdminCross((address,uint256))332 /// or in textual repr: isOwnerOrAdminCross((address,uint256))
298 function isOwnerOrAdminCross(Tuple6 memory user) external view returns (bool);333 function isOwnerOrAdminCross(Tuple6 memory user) external view returns (bool);
334=======
335 /// or in textual repr: isOwnerOrAdminCross(EthCrossAccount)
336 /// or in the expanded repr: isOwnerOrAdminCross((address,uint256))
337 function isOwnerOrAdminCross(EthCrossAccount memory user) external view returns (bool);
338>>>>>>> misk: update stubs
299339
300 /// Returns collection type340 /// Returns collection type
301 ///341 ///
306346
307 /// Get collection owner.347 /// Get collection owner.
308 ///348 ///
309 /// @return Tuble with sponsor address and his substrate mirror.349 /// @return Tuple with sponsor address and his substrate mirror.
310 /// If address is canonical then substrate mirror is zero and vice versa.350 /// If address is canonical then substrate mirror is zero and vice versa.
311 /// @dev EVM selector for this function is: 0xdf727d3b,351 /// @dev EVM selector for this function is: 0xdf727d3b,
312 /// or in textual repr: collectionOwner()352 /// or in textual repr: collectionOwner()
353<<<<<<< HEAD
313 function collectionOwner() external view returns (Tuple6 memory);354 function collectionOwner() external view returns (Tuple6 memory);
355=======
356 function collectionOwner() external view returns (EthCrossAccount memory);
357>>>>>>> misk: update stubs
314358
315 /// Changes collection owner to another account359 /// Changes collection owner to another account
316 ///360 ///
326 /// If address is canonical then substrate mirror is zero and vice versa.370 /// If address is canonical then substrate mirror is zero and vice versa.
327 /// @dev EVM selector for this function is: 0x5813216b,371 /// @dev EVM selector for this function is: 0x5813216b,
328 /// or in textual repr: collectionAdmins()372 /// or in textual repr: collectionAdmins()
373<<<<<<< HEAD
329 function collectionAdmins() external view returns (Tuple6[] memory);374 function collectionAdmins() external view returns (Tuple6[] memory);
375=======
376 function collectionAdmins() external view returns (EthCrossAccount[] memory);
377>>>>>>> misk: update stubs
330378
331 /// Changes collection owner to another account379 /// Changes collection owner to another account
332 ///380 ///
333 /// @dev Owner can be changed only by current owner381 /// @dev Owner can be changed only by current owner
334 /// @param newOwner new owner cross account382 /// @param newOwner new owner cross account
335 /// @dev EVM selector for this function is: 0xe5c9913f,383 /// @dev EVM selector for this function is: 0xe5c9913f,
384<<<<<<< HEAD
336 /// or in textual repr: setOwnerCross((address,uint256))385 /// or in textual repr: setOwnerCross((address,uint256))
337 function setOwnerCross(Tuple6 memory newOwner) external;386 function setOwnerCross(Tuple6 memory newOwner) external;
387=======
388 /// or in textual repr: setOwnerCross(EthCrossAccount)
389 /// or in the expanded repr: setOwnerCross((address,uint256))
390 function setOwnerCross(EthCrossAccount memory newOwner) external;
338}391}
339392
393/// @dev Cross account struct
394struct EthCrossAccount {
395 address eth;
396 uint256 sub;
397}
398
340/// @dev anonymous struct399/// @dev anonymous struct
341struct Tuple19 {400struct Tuple23 {
401 address field_0;
402 uint256 field_1;
403>>>>>>> misk: update stubs
404}
405
406/// @dev anonymous struct
407struct Tuple20 {
342 string field_0;408 string field_0;
343 bytes field_1;409 bytes field_1;
344}410}
465 /// @param to The new owner531 /// @param to The new owner
466 /// @param tokenId The RFT to transfer532 /// @param tokenId The RFT to transfer
467 /// @dev EVM selector for this function is: 0xd5cf430b,533 /// @dev EVM selector for this function is: 0xd5cf430b,
468 /// or in textual repr: transferFromCross((address,uint256),(address,uint256),uint256)534 /// or in textual repr: transferFromCross(EthCrossAccount,EthCrossAccount,uint256)
535 /// or in the expanded repr: transferFromCross((address,uint256),(address,uint256),uint256)
469 function transferFromCross(536 function transferFromCross(
537<<<<<<< HEAD
470 Tuple6 memory from,538 Tuple6 memory from,
471 Tuple6 memory to,539 Tuple6 memory to,
540=======
541 EthCrossAccount memory from,
542 EthCrossAccount memory to,
543>>>>>>> misk: update stubs
472 uint256 tokenId544 uint256 tokenId
473 ) external;545 ) external;
474546
491 /// @param from The current owner of the RFT563 /// @param from The current owner of the RFT
492 /// @param tokenId The RFT to transfer564 /// @param tokenId The RFT to transfer
493 /// @dev EVM selector for this function is: 0xbb2f5a58,565 /// @dev EVM selector for this function is: 0xbb2f5a58,
566<<<<<<< HEAD
494 /// or in textual repr: burnFromCross((address,uint256),uint256)567 /// or in textual repr: burnFromCross((address,uint256),uint256)
495 function burnFromCross(Tuple6 memory from, uint256 tokenId) external;568 function burnFromCross(Tuple6 memory from, uint256 tokenId) external;
569=======
570 /// or in textual repr: burnFromCross(EthCrossAccount,uint256)
571 /// or in the expanded repr: burnFromCross((address,uint256),uint256)
572 function burnFromCross(EthCrossAccount memory from, uint256 tokenId) external;
573>>>>>>> misk: update stubs
496574
497 /// @notice Returns next free RFT ID.575 /// @notice Returns next free RFT ID.
498 /// @dev EVM selector for this function is: 0x75794a3c,576 /// @dev EVM selector for this function is: 0x75794a3c,
499 /// or in textual repr: nextTokenId()577 /// or in textual repr: nextTokenId()
500 function nextTokenId() external view returns (uint256);578 function nextTokenId() external view returns (uint256);
501579
580<<<<<<< HEAD
502 // /// @notice Function to mint multiple tokens.581 // /// @notice Function to mint multiple tokens.
503 // /// @dev `tokenIds` should be an array of consecutive numbers and first number582 // /// @dev `tokenIds` should be an array of consecutive numbers and first number
504 // /// should be obtained with `nextTokenId` method583 // /// should be obtained with `nextTokenId` method
516 // /// @dev EVM selector for this function is: 0x36543006,595 // /// @dev EVM selector for this function is: 0x36543006,
517 // /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])596 // /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
518 // function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) external returns (bool);597 // function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) external returns (bool);
598=======
599 /// @notice Function to mint multiple tokens.
600 /// @dev `tokenIds` should be an array of consecutive numbers and first number
601 /// should be obtained with `nextTokenId` method
602 /// @param to The new owner
603 /// @param tokenIds IDs of the minted RFTs
604 /// @dev EVM selector for this function is: 0x44a9945e,
605 /// or in textual repr: mintBulk(address,uint256[])
606 function mintBulk(address to, uint256[] memory tokenIds) external returns (bool);
607
608 /// @notice Function to mint multiple tokens with the given tokenUris.
609 /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive
610 /// numbers and first number should be obtained with `nextTokenId` method
611 /// @param to The new owner
612 /// @param tokens array of pairs of token ID and token URI for minted tokens
613 /// @dev EVM selector for this function is: 0x36543006,
614 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
615 function mintBulkWithTokenURI(address to, Tuple11[] memory tokens) external returns (bool);
616>>>>>>> misk: update stubs
519617
520 /// Returns EVM address for refungible token618 /// Returns EVM address for refungible token
521 ///619 ///
526}624}
527625
528/// @dev anonymous struct626/// @dev anonymous struct
627<<<<<<< HEAD
529struct Tuple8 {628struct Tuple8 {
629=======
630struct Tuple11 {
631>>>>>>> misk: update stubs
530 uint256 field_0;632 uint256 field_0;
531 string field_1;633 string field_1;
532}634}
533635
636<<<<<<< HEAD
534/// @dev anonymous struct637/// @dev anonymous struct
535struct Tuple6 {638struct Tuple6 {
536 address field_0;639 address field_0;
537 uint256 field_1;640 uint256 field_1;
538}641}
539642
643=======
644>>>>>>> misk: update stubs
540/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension645/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
541/// @dev See https://eips.ethereum.org/EIPS/eip-721646/// @dev See https://eips.ethereum.org/EIPS/eip-721
542/// @dev the ERC-165 identifier for this interface is 0x780e9d63647/// @dev the ERC-165 identifier for this interface is 0x780e9d63
modifiedtests/src/eth/fungibleAbi.jsondiffbeforeafterboth
62 "inputs": [62 "inputs": [
63 {63 {
64 "components": [64 "components": [
65<<<<<<< HEAD
65 { "internalType": "address", "name": "field_0", "type": "address" },66 { "internalType": "address", "name": "field_0", "type": "address" },
66 { "internalType": "uint256", "name": "field_1", "type": "uint256" }67 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
68=======
69 { "internalType": "address", "name": "eth", "type": "address" },
70 { "internalType": "uint256", "name": "sub", "type": "uint256" }
71>>>>>>> misk: update stubs
67 ],72 ],
68 "internalType": "struct Tuple6",73 "internalType": "struct EthCrossAccount",
69 "name": "newAdmin",74 "name": "newAdmin",
70 "type": "tuple"75 "type": "tuple"
71 }76 }
88 "inputs": [93 "inputs": [
89 {94 {
90 "components": [95 "components": [
96<<<<<<< HEAD
91 { "internalType": "address", "name": "field_0", "type": "address" },97 { "internalType": "address", "name": "field_0", "type": "address" },
92 { "internalType": "uint256", "name": "field_1", "type": "uint256" }98 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
99=======
100 { "internalType": "address", "name": "eth", "type": "address" },
101 { "internalType": "uint256", "name": "sub", "type": "uint256" }
102>>>>>>> misk: update stubs
93 ],103 ],
94 "internalType": "struct Tuple6",104 "internalType": "struct EthCrossAccount",
95 "name": "user",105 "name": "user",
96 "type": "tuple"106 "type": "tuple"
97 }107 }
134 "inputs": [144 "inputs": [
135 {145 {
136 "components": [146 "components": [
147<<<<<<< HEAD
137 { "internalType": "address", "name": "field_0", "type": "address" },148 { "internalType": "address", "name": "field_0", "type": "address" },
138 { "internalType": "uint256", "name": "field_1", "type": "uint256" }149 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
150=======
151 { "internalType": "address", "name": "eth", "type": "address" },
152 { "internalType": "uint256", "name": "sub", "type": "uint256" }
153>>>>>>> misk: update stubs
139 ],154 ],
140 "internalType": "struct Tuple6",155 "internalType": "struct EthCrossAccount",
141 "name": "spender",156 "name": "spender",
142 "type": "tuple"157 "type": "tuple"
143 },158 },
171 "inputs": [186 "inputs": [
172 {187 {
173 "components": [188 "components": [
189<<<<<<< HEAD
174 { "internalType": "address", "name": "field_0", "type": "address" },190 { "internalType": "address", "name": "field_0", "type": "address" },
175 { "internalType": "uint256", "name": "field_1", "type": "uint256" }191 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
192=======
193 { "internalType": "address", "name": "eth", "type": "address" },
194 { "internalType": "uint256", "name": "sub", "type": "uint256" }
195>>>>>>> misk: update stubs
176 ],196 ],
177 "internalType": "struct Tuple6",197 "internalType": "struct EthCrossAccount",
178 "name": "from",198 "name": "from",
179 "type": "tuple"199 "type": "tuple"
180 },200 },
181 { "internalType": "uint256", "name": "amount", "type": "uint256" }201 { "internalType": "uint256", "name": "amount", "type": "uint256" }
182 ],202 ],
183 "name": "burnFromCross",203 "name": "burnFromCross",
184 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],204 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
205<<<<<<< HEAD
185 "stateMutability": "nonpayable",206 "stateMutability": "nonpayable",
186 "type": "function"207 "type": "function"
187 },208 },
191 ],212 ],
192 "name": "changeCollectionOwner",213 "name": "changeCollectionOwner",
193 "outputs": [],214 "outputs": [],
215=======
216>>>>>>> misk: update stubs
194 "stateMutability": "nonpayable",217 "stateMutability": "nonpayable",
195 "type": "function"218 "type": "function"
196 },219 },
200 "outputs": [223 "outputs": [
201 {224 {
202 "components": [225 "components": [
226<<<<<<< HEAD
203 { "internalType": "address", "name": "field_0", "type": "address" },227 { "internalType": "address", "name": "field_0", "type": "address" },
204 { "internalType": "uint256", "name": "field_1", "type": "uint256" }228 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
229=======
230 { "internalType": "address", "name": "eth", "type": "address" },
231 { "internalType": "uint256", "name": "sub", "type": "uint256" }
232>>>>>>> misk: update stubs
205 ],233 ],
206 "internalType": "struct Tuple6[]",234 "internalType": "struct EthCrossAccount[]",
207 "name": "",235 "name": "",
208 "type": "tuple[]"236 "type": "tuple[]"
209 }237 }
217 "outputs": [245 "outputs": [
218 {246 {
219 "components": [247 "components": [
248<<<<<<< HEAD
220 { "internalType": "address", "name": "field_0", "type": "address" },249 { "internalType": "address", "name": "field_0", "type": "address" },
221 { "internalType": "uint256", "name": "field_1", "type": "uint256" }250 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
251=======
252 { "internalType": "address", "name": "eth", "type": "address" },
253 { "internalType": "uint256", "name": "sub", "type": "uint256" }
254>>>>>>> misk: update stubs
222 ],255 ],
223 "internalType": "struct Tuple6",256 "internalType": "struct EthCrossAccount",
224 "name": "",257 "name": "",
225 "type": "tuple"258 "type": "tuple"
226 }259 }
239 { "internalType": "string", "name": "field_0", "type": "string" },272 { "internalType": "string", "name": "field_0", "type": "string" },
240 { "internalType": "bytes", "name": "field_1", "type": "bytes" }273 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
241 ],274 ],
242 "internalType": "struct Tuple10[]",275 "internalType": "struct Tuple14[]",
243 "name": "",276 "name": "",
244 "type": "tuple[]"277 "type": "tuple[]"
245 }278 }
263 { "internalType": "address", "name": "field_0", "type": "address" },296 { "internalType": "address", "name": "field_0", "type": "address" },
264 { "internalType": "uint256", "name": "field_1", "type": "uint256" }297 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
265 ],298 ],
266 "internalType": "struct Tuple6",299 "internalType": "struct Tuple8",
267 "name": "",300 "name": "",
268 "type": "tuple"301 "type": "tuple"
269 }302 }
328 "inputs": [361 "inputs": [
329 {362 {
330 "components": [363 "components": [
364<<<<<<< HEAD
331 { "internalType": "address", "name": "field_0", "type": "address" },365 { "internalType": "address", "name": "field_0", "type": "address" },
332 { "internalType": "uint256", "name": "field_1", "type": "uint256" }366 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
367=======
368 { "internalType": "address", "name": "eth", "type": "address" },
369 { "internalType": "uint256", "name": "sub", "type": "uint256" }
370>>>>>>> misk: update stubs
333 ],371 ],
334 "internalType": "struct Tuple6",372 "internalType": "struct EthCrossAccount",
335 "name": "user",373 "name": "user",
336 "type": "tuple"374 "type": "tuple"
337 }375 }
358 { "internalType": "address", "name": "field_0", "type": "address" },396 { "internalType": "address", "name": "field_0", "type": "address" },
359 { "internalType": "uint256", "name": "field_1", "type": "uint256" }397 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
360 ],398 ],
361 "internalType": "struct Tuple6[]",399 "internalType": "struct Tuple8[]",
362 "name": "amounts",400 "name": "amounts",
363 "type": "tuple[]"401 "type": "tuple[]"
364 }402 }
388 "inputs": [426 "inputs": [
389 {427 {
390 "components": [428 "components": [
429<<<<<<< HEAD
391 { "internalType": "address", "name": "field_0", "type": "address" },430 { "internalType": "address", "name": "field_0", "type": "address" },
392 { "internalType": "uint256", "name": "field_1", "type": "uint256" }431 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
432=======
433 { "internalType": "address", "name": "eth", "type": "address" },
434 { "internalType": "uint256", "name": "sub", "type": "uint256" }
435>>>>>>> misk: update stubs
393 ],436 ],
394 "internalType": "struct Tuple6",437 "internalType": "struct EthCrossAccount",
395 "name": "admin",438 "name": "admin",
396 "type": "tuple"439 "type": "tuple"
397 }440 }
421 "inputs": [464 "inputs": [
422 {465 {
423 "components": [466 "components": [
467<<<<<<< HEAD
424 { "internalType": "address", "name": "field_0", "type": "address" },468 { "internalType": "address", "name": "field_0", "type": "address" },
425 { "internalType": "uint256", "name": "field_1", "type": "uint256" }469 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
470=======
471 { "internalType": "address", "name": "eth", "type": "address" },
472 { "internalType": "uint256", "name": "sub", "type": "uint256" }
473>>>>>>> misk: update stubs
426 ],474 ],
427 "internalType": "struct Tuple6",475 "internalType": "struct EthCrossAccount",
428 "name": "user",476 "name": "user",
429 "type": "tuple"477 "type": "tuple"
430 }478 }
496 { "internalType": "string", "name": "field_0", "type": "string" },544 { "internalType": "string", "name": "field_0", "type": "string" },
497 { "internalType": "bytes", "name": "field_1", "type": "bytes" }545 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
498 ],546 ],
499 "internalType": "struct Tuple10[]",547 "internalType": "struct Tuple14[]",
500 "name": "properties",548 "name": "properties",
501 "type": "tuple[]"549 "type": "tuple[]"
502 }550 }
529 "inputs": [577 "inputs": [
530 {578 {
531 "components": [579 "components": [
580<<<<<<< HEAD
532 { "internalType": "address", "name": "field_0", "type": "address" },581 { "internalType": "address", "name": "field_0", "type": "address" },
533 { "internalType": "uint256", "name": "field_1", "type": "uint256" }582 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
583=======
584 { "internalType": "address", "name": "eth", "type": "address" },
585 { "internalType": "uint256", "name": "sub", "type": "uint256" }
586>>>>>>> misk: update stubs
534 ],587 ],
535 "internalType": "struct Tuple6",588 "internalType": "struct EthCrossAccount",
536 "name": "sponsor",589 "name": "sponsor",
537 "type": "tuple"590 "type": "tuple"
538 }591 }
544 },597 },
545 {598 {
546 "inputs": [599 "inputs": [
600<<<<<<< HEAD
547 {601 {
548 "components": [602 "components": [
549 { "internalType": "address", "name": "field_0", "type": "address" },603 { "internalType": "address", "name": "field_0", "type": "address" },
550 { "internalType": "uint256", "name": "field_1", "type": "uint256" }604 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
605=======
606 { "internalType": "address", "name": "newOwner", "type": "address" }
607 ],
608 "name": "setOwner",
609 "outputs": [],
610 "stateMutability": "nonpayable",
611 "type": "function"
612 },
613 {
614 "inputs": [
615 {
616 "components": [
617 { "internalType": "address", "name": "eth", "type": "address" },
618 { "internalType": "uint256", "name": "sub", "type": "uint256" }
619>>>>>>> misk: update stubs
551 ],620 ],
552 "internalType": "struct Tuple6",621 "internalType": "struct EthCrossAccount",
553 "name": "newOwner",622 "name": "newOwner",
554 "type": "tuple"623 "type": "tuple"
555 }624 }
607 "inputs": [676 "inputs": [
608 {677 {
609 "components": [678 "components": [
679<<<<<<< HEAD
610 { "internalType": "address", "name": "field_0", "type": "address" },680 { "internalType": "address", "name": "field_0", "type": "address" },
611 { "internalType": "uint256", "name": "field_1", "type": "uint256" }681 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
682=======
683 { "internalType": "address", "name": "eth", "type": "address" },
684 { "internalType": "uint256", "name": "sub", "type": "uint256" }
685>>>>>>> misk: update stubs
612 ],686 ],
613 "internalType": "struct Tuple6",687 "internalType": "struct EthCrossAccount",
614 "name": "from",688 "name": "from",
615 "type": "tuple"689 "type": "tuple"
616 },690 },
617 {691 {
618 "components": [692 "components": [
693<<<<<<< HEAD
619 { "internalType": "address", "name": "field_0", "type": "address" },694 { "internalType": "address", "name": "field_0", "type": "address" },
620 { "internalType": "uint256", "name": "field_1", "type": "uint256" }695 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
696=======
697 { "internalType": "address", "name": "eth", "type": "address" },
698 { "internalType": "uint256", "name": "sub", "type": "uint256" }
699>>>>>>> misk: update stubs
621 ],700 ],
622 "internalType": "struct Tuple6",701 "internalType": "struct EthCrossAccount",
623 "name": "to",702 "name": "to",
624 "type": "tuple"703 "type": "tuple"
625 },704 },
modifiedtests/src/eth/nonFungibleAbi.jsondiffbeforeafterboth
93 "inputs": [93 "inputs": [
94 {94 {
95 "components": [95 "components": [
96 { "internalType": "address", "name": "field_0", "type": "address" },96 { "internalType": "address", "name": "eth", "type": "address" },
97 { "internalType": "uint256", "name": "field_1", "type": "uint256" }97 { "internalType": "uint256", "name": "sub", "type": "uint256" }
98 ],98 ],
99<<<<<<< HEAD
99 "internalType": "struct Tuple6",100 "internalType": "struct Tuple6",
101=======
102 "internalType": "struct EthCrossAccount",
103>>>>>>> misk: update stubs
100 "name": "newAdmin",104 "name": "newAdmin",
101 "type": "tuple"105 "type": "tuple"
102 }106 }
119 "inputs": [123 "inputs": [
120 {124 {
121 "components": [125 "components": [
122 { "internalType": "address", "name": "field_0", "type": "address" },126 { "internalType": "address", "name": "eth", "type": "address" },
123 { "internalType": "uint256", "name": "field_1", "type": "uint256" }127 { "internalType": "uint256", "name": "sub", "type": "uint256" }
124 ],128 ],
129<<<<<<< HEAD
125 "internalType": "struct Tuple6",130 "internalType": "struct Tuple6",
131=======
132 "internalType": "struct EthCrossAccount",
133>>>>>>> misk: update stubs
126 "name": "user",134 "name": "user",
127 "type": "tuple"135 "type": "tuple"
128 }136 }
155 "inputs": [163 "inputs": [
156 {164 {
157 "components": [165 "components": [
158 { "internalType": "address", "name": "field_0", "type": "address" },166 { "internalType": "address", "name": "eth", "type": "address" },
159 { "internalType": "uint256", "name": "field_1", "type": "uint256" }167 { "internalType": "uint256", "name": "sub", "type": "uint256" }
160 ],168 ],
169<<<<<<< HEAD
161 "internalType": "struct Tuple6",170 "internalType": "struct Tuple6",
171=======
172 "internalType": "struct EthCrossAccount",
173>>>>>>> misk: update stubs
162 "name": "approved",174 "name": "approved",
163 "type": "tuple"175 "type": "tuple"
164 },176 },
201 "inputs": [213 "inputs": [
202 {214 {
203 "components": [215 "components": [
204 { "internalType": "address", "name": "field_0", "type": "address" },216 { "internalType": "address", "name": "eth", "type": "address" },
205 { "internalType": "uint256", "name": "field_1", "type": "uint256" }217 { "internalType": "uint256", "name": "sub", "type": "uint256" }
206 ],218 ],
219<<<<<<< HEAD
207 "internalType": "struct Tuple6",220 "internalType": "struct Tuple6",
221=======
222 "internalType": "struct EthCrossAccount",
223>>>>>>> misk: update stubs
208 "name": "from",224 "name": "from",
209 "type": "tuple"225 "type": "tuple"
210 },226 },
230 "outputs": [246 "outputs": [
231 {247 {
232 "components": [248 "components": [
233 { "internalType": "address", "name": "field_0", "type": "address" },249 { "internalType": "address", "name": "eth", "type": "address" },
234 { "internalType": "uint256", "name": "field_1", "type": "uint256" }250 { "internalType": "uint256", "name": "sub", "type": "uint256" }
235 ],251 ],
252<<<<<<< HEAD
236 "internalType": "struct Tuple6[]",253 "internalType": "struct Tuple6[]",
254=======
255 "internalType": "struct EthCrossAccount[]",
256>>>>>>> misk: update stubs
237 "name": "",257 "name": "",
238 "type": "tuple[]"258 "type": "tuple[]"
239 }259 }
247 "outputs": [267 "outputs": [
248 {268 {
249 "components": [269 "components": [
250 { "internalType": "address", "name": "field_0", "type": "address" },270 { "internalType": "address", "name": "eth", "type": "address" },
251 { "internalType": "uint256", "name": "field_1", "type": "uint256" }271 { "internalType": "uint256", "name": "sub", "type": "uint256" }
252 ],272 ],
253<<<<<<< HEAD273<<<<<<< HEAD
254<<<<<<< HEAD274<<<<<<< HEAD
275<<<<<<< HEAD
255 "internalType": "struct Tuple6",276 "internalType": "struct Tuple6",
256=======277=======
257 "internalType": "struct Tuple19",278 "internalType": "struct Tuple19",
258>>>>>>> feat: add `EthCrossAccount` type279>>>>>>> feat: add `EthCrossAccount` type
259=======280=======
260 "internalType": "struct Tuple8",281 "internalType": "struct Tuple8",
261>>>>>>> feat: Add custum signature with unlimited nesting.282>>>>>>> feat: Add custum signature with unlimited nesting.
283=======
284 "internalType": "struct EthCrossAccount",
285>>>>>>> misk: update stubs
262 "name": "",286 "name": "",
263 "type": "tuple"287 "type": "tuple"
264 }288 }
319 ],343 ],
320<<<<<<< HEAD344<<<<<<< HEAD
321<<<<<<< HEAD345<<<<<<< HEAD
346<<<<<<< HEAD
322 "internalType": "struct Tuple6",347 "internalType": "struct Tuple6",
323=======348=======
324 "internalType": "struct Tuple19",349 "internalType": "struct Tuple19",
325>>>>>>> feat: add `EthCrossAccount` type350>>>>>>> feat: add `EthCrossAccount` type
326=======351=======
327 "internalType": "struct Tuple8",352 "internalType": "struct Tuple8",
328>>>>>>> feat: Add custum signature with unlimited nesting.353>>>>>>> feat: Add custum signature with unlimited nesting.
354=======
355 "internalType": "struct Tuple24",
356>>>>>>> misk: update stubs
329 "name": "",357 "name": "",
330 "type": "tuple"358 "type": "tuple"
331 }359 }
428 "inputs": [456 "inputs": [
429 {457 {
430 "components": [458 "components": [
431 { "internalType": "address", "name": "field_0", "type": "address" },459 { "internalType": "address", "name": "eth", "type": "address" },
432 { "internalType": "uint256", "name": "field_1", "type": "uint256" }460 { "internalType": "uint256", "name": "sub", "type": "uint256" }
433 ],461 ],
462<<<<<<< HEAD
434 "internalType": "struct Tuple6",463 "internalType": "struct Tuple6",
464=======
465 "internalType": "struct EthCrossAccount",
466>>>>>>> misk: update stubs
435 "name": "user",467 "name": "user",
436 "type": "tuple"468 "type": "tuple"
437 }469 }
556 "inputs": [588 "inputs": [
557 {589 {
558 "components": [590 "components": [
559 { "internalType": "address", "name": "field_0", "type": "address" },591 { "internalType": "address", "name": "eth", "type": "address" },
560 { "internalType": "uint256", "name": "field_1", "type": "uint256" }592 { "internalType": "uint256", "name": "sub", "type": "uint256" }
561 ],593 ],
594<<<<<<< HEAD
562 "internalType": "struct Tuple6",595 "internalType": "struct Tuple6",
596=======
597 "internalType": "struct EthCrossAccount",
598>>>>>>> misk: update stubs
563 "name": "admin",599 "name": "admin",
564 "type": "tuple"600 "type": "tuple"
565 }601 }
589 "inputs": [625 "inputs": [
590 {626 {
591 "components": [627 "components": [
592 { "internalType": "address", "name": "field_0", "type": "address" },628 { "internalType": "address", "name": "eth", "type": "address" },
593 { "internalType": "uint256", "name": "field_1", "type": "uint256" }629 { "internalType": "uint256", "name": "sub", "type": "uint256" }
594 ],630 ],
631<<<<<<< HEAD
595 "internalType": "struct Tuple6",632 "internalType": "struct Tuple6",
633=======
634 "internalType": "struct EthCrossAccount",
635>>>>>>> misk: update stubs
596 "name": "user",636 "name": "user",
597 "type": "tuple"637 "type": "tuple"
598 }638 }
745 "inputs": [785 "inputs": [
746 {786 {
747 "components": [787 "components": [
748 { "internalType": "address", "name": "field_0", "type": "address" },788 { "internalType": "address", "name": "eth", "type": "address" },
749 { "internalType": "uint256", "name": "field_1", "type": "uint256" }789 { "internalType": "uint256", "name": "sub", "type": "uint256" }
750 ],790 ],
791<<<<<<< HEAD
751 "internalType": "struct Tuple6",792 "internalType": "struct Tuple6",
793=======
794 "internalType": "struct EthCrossAccount",
795>>>>>>> misk: update stubs
752 "name": "sponsor",796 "name": "sponsor",
753 "type": "tuple"797 "type": "tuple"
754 }798 }
785 {829 {
786 "components": [830 "components": [
787<<<<<<< HEAD831<<<<<<< HEAD
832<<<<<<< HEAD
788 { "internalType": "string", "name": "field_0", "type": "string" },833 { "internalType": "string", "name": "field_0", "type": "string" },
789 { "internalType": "bytes", "name": "field_1", "type": "bytes" }834 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
790=======835=======
795 "internalType": "struct Tuple19[]",840 "internalType": "struct Tuple19[]",
796 "name": "properties",841 "name": "properties",
797 "type": "tuple[]"842 "type": "tuple[]"
843=======
844 { "internalType": "address", "name": "eth", "type": "address" },
845 { "internalType": "uint256", "name": "sub", "type": "uint256" }
846 ],
847 "internalType": "struct EthCrossAccount",
848 "name": "newOwner",
849 "type": "tuple"
850>>>>>>> misk: update stubs
798 }851 }
799 ],852 ],
800 "name": "setProperties",853 "name": "setProperties",
modifiedtests/src/eth/reFungibleAbi.jsondiffbeforeafterboth
93 "inputs": [93 "inputs": [
94 {94 {
95 "components": [95 "components": [
96<<<<<<< HEAD
96 { "internalType": "address", "name": "field_0", "type": "address" },97 { "internalType": "address", "name": "field_0", "type": "address" },
97 { "internalType": "uint256", "name": "field_1", "type": "uint256" }98 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
98 ],99 ],
99 "internalType": "struct Tuple6",100 "internalType": "struct Tuple6",
101=======
102 { "internalType": "address", "name": "eth", "type": "address" },
103 { "internalType": "uint256", "name": "sub", "type": "uint256" }
104 ],
105 "internalType": "struct EthCrossAccount",
106>>>>>>> misk: update stubs
100 "name": "newAdmin",107 "name": "newAdmin",
101 "type": "tuple"108 "type": "tuple"
102 }109 }
119 "inputs": [126 "inputs": [
120 {127 {
121 "components": [128 "components": [
129<<<<<<< HEAD
122 { "internalType": "address", "name": "field_0", "type": "address" },130 { "internalType": "address", "name": "field_0", "type": "address" },
123 { "internalType": "uint256", "name": "field_1", "type": "uint256" }131 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
124 ],132 ],
125 "internalType": "struct Tuple6",133 "internalType": "struct Tuple6",
134=======
135 { "internalType": "address", "name": "eth", "type": "address" },
136 { "internalType": "uint256", "name": "sub", "type": "uint256" }
137 ],
138 "internalType": "struct EthCrossAccount",
139>>>>>>> misk: update stubs
126 "name": "user",140 "name": "user",
127 "type": "tuple"141 "type": "tuple"
128 }142 }
183 "inputs": [197 "inputs": [
184 {198 {
185 "components": [199 "components": [
200<<<<<<< HEAD
186 { "internalType": "address", "name": "field_0", "type": "address" },201 { "internalType": "address", "name": "field_0", "type": "address" },
187 { "internalType": "uint256", "name": "field_1", "type": "uint256" }202 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
188 ],203 ],
189 "internalType": "struct Tuple6",204 "internalType": "struct Tuple6",
205=======
206 { "internalType": "address", "name": "eth", "type": "address" },
207 { "internalType": "uint256", "name": "sub", "type": "uint256" }
208 ],
209 "internalType": "struct EthCrossAccount",
210>>>>>>> misk: update stubs
190 "name": "from",211 "name": "from",
191 "type": "tuple"212 "type": "tuple"
192 },213 },
212 "outputs": [233 "outputs": [
213 {234 {
214 "components": [235 "components": [
236<<<<<<< HEAD
215 { "internalType": "address", "name": "field_0", "type": "address" },237 { "internalType": "address", "name": "field_0", "type": "address" },
216 { "internalType": "uint256", "name": "field_1", "type": "uint256" }238 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
217 ],239 ],
218 "internalType": "struct Tuple6[]",240 "internalType": "struct Tuple6[]",
241=======
242 { "internalType": "address", "name": "eth", "type": "address" },
243 { "internalType": "uint256", "name": "sub", "type": "uint256" }
244 ],
245 "internalType": "struct EthCrossAccount[]",
246>>>>>>> misk: update stubs
219 "name": "",247 "name": "",
220 "type": "tuple[]"248 "type": "tuple[]"
221 }249 }
229 "outputs": [257 "outputs": [
230 {258 {
231 "components": [259 "components": [
260<<<<<<< HEAD
232 { "internalType": "address", "name": "field_0", "type": "address" },261 { "internalType": "address", "name": "field_0", "type": "address" },
233 { "internalType": "uint256", "name": "field_1", "type": "uint256" }262 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
234 ],263 ],
235 "internalType": "struct Tuple6",264 "internalType": "struct Tuple6",
265=======
266 { "internalType": "address", "name": "eth", "type": "address" },
267 { "internalType": "uint256", "name": "sub", "type": "uint256" }
268 ],
269 "internalType": "struct EthCrossAccount",
270>>>>>>> misk: update stubs
236 "name": "",271 "name": "",
237 "type": "tuple"272 "type": "tuple"
238 }273 }
251 { "internalType": "string", "name": "field_0", "type": "string" },286 { "internalType": "string", "name": "field_0", "type": "string" },
252 { "internalType": "bytes", "name": "field_1", "type": "bytes" }287 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
253 ],288 ],
254 "internalType": "struct Tuple19[]",289 "internalType": "struct Tuple20[]",
255 "name": "",290 "name": "",
256 "type": "tuple[]"291 "type": "tuple[]"
257 }292 }
275 { "internalType": "address", "name": "field_0", "type": "address" },310 { "internalType": "address", "name": "field_0", "type": "address" },
276 { "internalType": "uint256", "name": "field_1", "type": "uint256" }311 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
277 ],312 ],
313<<<<<<< HEAD
278 "internalType": "struct Tuple6",314 "internalType": "struct Tuple6",
315=======
316 "internalType": "struct Tuple23",
317>>>>>>> misk: update stubs
279 "name": "",318 "name": "",
280 "type": "tuple"319 "type": "tuple"
281 }320 }
369 "inputs": [408 "inputs": [
370 {409 {
371 "components": [410 "components": [
411<<<<<<< HEAD
372 { "internalType": "address", "name": "field_0", "type": "address" },412 { "internalType": "address", "name": "field_0", "type": "address" },
373 { "internalType": "uint256", "name": "field_1", "type": "uint256" }413 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
374 ],414 ],
375 "internalType": "struct Tuple6",415 "internalType": "struct Tuple6",
416=======
417 { "internalType": "address", "name": "eth", "type": "address" },
418 { "internalType": "uint256", "name": "sub", "type": "uint256" }
419 ],
420 "internalType": "struct EthCrossAccount",
421>>>>>>> misk: update stubs
376 "name": "user",422 "name": "user",
377 "type": "tuple"423 "type": "tuple"
378 }424 }
383 "type": "function"429 "type": "function"
384 },430 },
385 {431 {
432<<<<<<< HEAD
386 "inputs": [{ "internalType": "address", "name": "to", "type": "address" }],433 "inputs": [{ "internalType": "address", "name": "to", "type": "address" }],
387 "name": "mint",434 "name": "mint",
388 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],435 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
436=======
437 "inputs": [
438 { "internalType": "address", "name": "to", "type": "address" },
439 { "internalType": "uint256", "name": "tokenId", "type": "uint256" }
440 ],
441 "name": "mint",
442 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
443>>>>>>> misk: update stubs
389 "stateMutability": "nonpayable",444 "stateMutability": "nonpayable",
390 "type": "function"445 "type": "function"
391 },446 },
392 {447 {
393 "inputs": [448 "inputs": [
394 { "internalType": "address", "name": "to", "type": "address" },449 { "internalType": "address", "name": "to", "type": "address" },
450<<<<<<< HEAD
395 { "internalType": "string", "name": "tokenUri", "type": "string" }451 { "internalType": "string", "name": "tokenUri", "type": "string" }
396 ],452 ],
397 "name": "mintWithTokenURI",453 "name": "mintWithTokenURI",
398 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],454 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
455=======
456 { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" }
457 ],
458 "name": "mintBulk",
459 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
399 "stateMutability": "nonpayable",460 "stateMutability": "nonpayable",
400 "type": "function"461 "type": "function"
401 },462 },
402 {463 {
464 "inputs": [
465 { "internalType": "address", "name": "to", "type": "address" },
466 {
467 "components": [
468 { "internalType": "uint256", "name": "field_0", "type": "uint256" },
469 { "internalType": "string", "name": "field_1", "type": "string" }
470 ],
471 "internalType": "struct Tuple11[]",
472 "name": "tokens",
473 "type": "tuple[]"
474 }
475 ],
476 "name": "mintBulkWithTokenURI",
477 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
478 "stateMutability": "nonpayable",
479 "type": "function"
480 },
481 {
482 "inputs": [
483 { "internalType": "address", "name": "to", "type": "address" },
484 { "internalType": "uint256", "name": "tokenId", "type": "uint256" },
485 { "internalType": "string", "name": "tokenUri", "type": "string" }
486 ],
487 "name": "mintWithTokenURI",
488 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
489>>>>>>> misk: update stubs
490 "stateMutability": "nonpayable",
491 "type": "function"
492 },
493 {
403 "inputs": [],494 "inputs": [],
404 "name": "mintingFinished",495 "name": "mintingFinished",
405 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],496 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
452 "inputs": [543 "inputs": [
453 {544 {
454 "components": [545 "components": [
546<<<<<<< HEAD
455 { "internalType": "address", "name": "field_0", "type": "address" },547 { "internalType": "address", "name": "field_0", "type": "address" },
456 { "internalType": "uint256", "name": "field_1", "type": "uint256" }548 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
457 ],549 ],
458 "internalType": "struct Tuple6",550 "internalType": "struct Tuple6",
551=======
552 { "internalType": "address", "name": "eth", "type": "address" },
553 { "internalType": "uint256", "name": "sub", "type": "uint256" }
554 ],
555 "internalType": "struct EthCrossAccount",
556>>>>>>> misk: update stubs
459 "name": "admin",557 "name": "admin",
460 "type": "tuple"558 "type": "tuple"
461 }559 }
485 "inputs": [583 "inputs": [
486 {584 {
487 "components": [585 "components": [
586<<<<<<< HEAD
488 { "internalType": "address", "name": "field_0", "type": "address" },587 { "internalType": "address", "name": "field_0", "type": "address" },
489 { "internalType": "uint256", "name": "field_1", "type": "uint256" }588 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
490 ],589 ],
491 "internalType": "struct Tuple6",590 "internalType": "struct Tuple6",
591=======
592 { "internalType": "address", "name": "eth", "type": "address" },
593 { "internalType": "uint256", "name": "sub", "type": "uint256" }
594 ],
595 "internalType": "struct EthCrossAccount",
596>>>>>>> misk: update stubs
492 "name": "user",597 "name": "user",
493 "type": "tuple"598 "type": "tuple"
494 }599 }
593 { "internalType": "string", "name": "field_0", "type": "string" },698 { "internalType": "string", "name": "field_0", "type": "string" },
594 { "internalType": "bytes", "name": "field_1", "type": "bytes" }699 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
595 ],700 ],
596 "internalType": "struct Tuple19[]",701 "internalType": "struct Tuple20[]",
597 "name": "properties",702 "name": "properties",
598 "type": "tuple[]"703 "type": "tuple[]"
599 }704 }
626 "inputs": [731 "inputs": [
627 {732 {
628 "components": [733 "components": [
734<<<<<<< HEAD
629 { "internalType": "address", "name": "field_0", "type": "address" },735 { "internalType": "address", "name": "field_0", "type": "address" },
630 { "internalType": "uint256", "name": "field_1", "type": "uint256" }736 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
631 ],737 ],
632 "internalType": "struct Tuple6",738 "internalType": "struct Tuple6",
739=======
740 { "internalType": "address", "name": "eth", "type": "address" },
741 { "internalType": "uint256", "name": "sub", "type": "uint256" }
742 ],
743 "internalType": "struct EthCrossAccount",
744>>>>>>> misk: update stubs
633 "name": "sponsor",745 "name": "sponsor",
634 "type": "tuple"746 "type": "tuple"
635 }747 }
641 },753 },
642 {754 {
643 "inputs": [755 "inputs": [
756<<<<<<< HEAD
644 {757 {
645 "components": [758 "components": [
646 { "internalType": "address", "name": "field_0", "type": "address" },759 { "internalType": "address", "name": "field_0", "type": "address" },
650 "name": "newOwner",763 "name": "newOwner",
651 "type": "tuple"764 "type": "tuple"
652 }765 }
766=======
767 { "internalType": "address", "name": "newOwner", "type": "address" }
768>>>>>>> misk: update stubs
653 ],769 ],
654 "name": "setOwnerCross",770 "name": "setOwnerCross",
655 "outputs": [],771 "outputs": [],
661 { "internalType": "uint256", "name": "tokenId", "type": "uint256" },777 { "internalType": "uint256", "name": "tokenId", "type": "uint256" },
662 {778 {
663 "components": [779 "components": [
780<<<<<<< HEAD
664 { "internalType": "string", "name": "field_0", "type": "string" },781 { "internalType": "string", "name": "field_0", "type": "string" },
665 { "internalType": "bytes", "name": "field_1", "type": "bytes" }782 { "internalType": "bytes", "name": "field_1", "type": "bytes" }
666 ],783 ],
667 "internalType": "struct Tuple19[]",784 "internalType": "struct Tuple19[]",
668 "name": "properties",785 "name": "properties",
669 "type": "tuple[]"786 "type": "tuple[]"
787=======
788 { "internalType": "address", "name": "eth", "type": "address" },
789 { "internalType": "uint256", "name": "sub", "type": "uint256" }
790 ],
791 "internalType": "struct EthCrossAccount",
792 "name": "newOwner",
793 "type": "tuple"
794>>>>>>> misk: update stubs
670 }795 }
671 ],796 ],
672 "name": "setProperties",797 "name": "setProperties",
782 "inputs": [907 "inputs": [
783 {908 {
784 "components": [909 "components": [
910<<<<<<< HEAD
785 { "internalType": "address", "name": "field_0", "type": "address" },911 { "internalType": "address", "name": "field_0", "type": "address" },
786 { "internalType": "uint256", "name": "field_1", "type": "uint256" }912 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
787 ],913 ],
788 "internalType": "struct Tuple6",914 "internalType": "struct Tuple6",
915=======
916 { "internalType": "address", "name": "eth", "type": "address" },
917 { "internalType": "uint256", "name": "sub", "type": "uint256" }
918 ],
919 "internalType": "struct EthCrossAccount",
920>>>>>>> misk: update stubs
789 "name": "from",921 "name": "from",
790 "type": "tuple"922 "type": "tuple"
791 },923 },
792 {924 {
793 "components": [925 "components": [
926<<<<<<< HEAD
794 { "internalType": "address", "name": "field_0", "type": "address" },927 { "internalType": "address", "name": "field_0", "type": "address" },
795 { "internalType": "uint256", "name": "field_1", "type": "uint256" }928 { "internalType": "uint256", "name": "field_1", "type": "uint256" }
796 ],929 ],
797 "internalType": "struct Tuple6",930 "internalType": "struct Tuple6",
931=======
932 { "internalType": "address", "name": "eth", "type": "address" },
933 { "internalType": "uint256", "name": "sub", "type": "uint256" }
934 ],
935 "internalType": "struct EthCrossAccount",
936>>>>>>> misk: update stubs
798 "name": "to",937 "name": "to",
799 "type": "tuple"938 "type": "tuple"
800 },939 },