git.delta.rocks / unique-network / refs/commits / e137eba0a7ea

difftreelog

source

tests/src/eth/api/UniqueFungible.sol13.2 KiBsourcehistory
1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56<<<<<<< HEAD7/// @dev common stubs holder8=======9// Anonymous struct10struct Tuple0 {11	address field_0;12	uint256 field_1;13}1415// Common stubs holder16>>>>>>> misk: Update stubs17interface Dummy {1819}2021interface ERC165 is Dummy {22	function supportsInterface(bytes4 interfaceID) external view returns (bool);23}2425<<<<<<< HEAD26/// @title A contract that allows you to work with collections.27/// @dev the ERC-165 identifier for this interface is 0xffe4da2328=======29// Inline30interface ERC20Events {31	event Transfer(address indexed from, address indexed to, uint256 value);32	event Approval(33		address indexed owner,34		address indexed spender,35		uint256 value36	);37}3839// Selector: 79cc679040interface ERC20UniqueExtensions is Dummy, ERC165 {41	// Selector: burnFrom(address,uint256) 79cc679042	function burnFrom(address from, uint256 amount) external returns (bool);43}4445// Selector: 942e8b2246interface ERC20 is Dummy, ERC165, ERC20Events {47	// Selector: name() 06fdde0348	function name() external view returns (string memory);4950	// Selector: symbol() 95d89b4151	function symbol() external view returns (string memory);5253	// Selector: totalSupply() 18160ddd54	function totalSupply() external view returns (uint256);5556	// Selector: decimals() 313ce56757	function decimals() external view returns (uint8);5859	// Selector: balanceOf(address) 70a0823160	function balanceOf(address owner) external view returns (uint256);6162	// Selector: transfer(address,uint256) a9059cbb63	function transfer(address to, uint256 amount) external returns (bool);6465	// Selector: transferFrom(address,address,uint256) 23b872dd66	function transferFrom(67		address from,68		address to,69		uint256 amount70	) external returns (bool);7172	// Selector: approve(address,uint256) 095ea7b373	function approve(address spender, uint256 amount) external returns (bool);7475	// Selector: allowance(address,address) dd62ed3e76	function allowance(address owner, address spender)77		external78		view79		returns (uint256);80}8182<<<<<<< HEAD83// Selector: ffe4da2384=======85// Selector: 765e2fae86>>>>>>> misk: Update stubs87>>>>>>> misk: Update stubs88=======89// Selector: e54be64090>>>>>>> misc: update stubs91interface Collection is Dummy, ERC165 {92	/// Set collection property.93	///94	/// @param key Property key.95	/// @param value Propery value.96	/// @dev EVM selector for this function is: 0x2f073f66,97	///  or in textual repr: setCollectionProperty(string,bytes)98	function setCollectionProperty(string memory key, bytes memory value)99		external;100101	/// Delete collection property.102	///103	/// @param key Property key.104	/// @dev EVM selector for this function is: 0x7b7debce,105	///  or in textual repr: deleteCollectionProperty(string)106	function deleteCollectionProperty(string memory key) external;107108	/// Get collection property.109	///110	/// @dev Throws error if key not found.111	///112	/// @param key Property key.113	/// @return bytes The property corresponding to the key.114	/// @dev EVM selector for this function is: 0xcf24fd6d,115	///  or in textual repr: collectionProperty(string)116	function collectionProperty(string memory key)117		external118		view119		returns (bytes memory);120121	/// Set the sponsor of the collection.122	///123	/// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.124	///125	/// @param sponsor Address of the sponsor from whose account funds will be debited for operations with the contract.126	/// @dev EVM selector for this function is: 0x7623402e,127	///  or in textual repr: setCollectionSponsor(address)128	function setCollectionSponsor(address sponsor) external;129130<<<<<<< HEAD131	/// Collection sponsorship confirmation.132	///133	/// @dev After setting the sponsor for the collection, it must be confirmed with this function.134	/// @dev EVM selector for this function is: 0x3c50e97a,135	///  or in textual repr: confirmCollectionSponsorship()136	function confirmCollectionSponsorship() external;137138	/// Set limits for the collection.139	/// @dev Throws error if limit not found.140	/// @param limit Name of the limit. Valid names:141	/// 	"accountTokenOwnershipLimit",142	/// 	"sponsoredDataSize",143	/// 	"sponsoredDataRateLimit",144	/// 	"tokenLimit",145	/// 	"sponsorTransferTimeout",146	/// 	"sponsorApproveTimeout"147	/// @param value Value of the limit.148	/// @dev EVM selector for this function is: 0x6a3841db,149	///  or in textual repr: setCollectionLimit(string,uint32)150=======151	// Set the substrate sponsor of the collection.152	//153	// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.154	//155	// @param sponsor Substrate address of the sponsor from whose account funds will be debited for operations with the contract.156	//157	// Selector: setCollectionSponsorSubstrate(uint256) c74d6751158	function setCollectionSponsorSubstrate(uint256 sponsor) external;159160	// Selector: hasCollectionPendingSponsor() 058ac185161	function hasCollectionPendingSponsor() external view returns (bool);162163	// Collection sponsorship confirmation.164	//165	// @dev After setting the sponsor for the collection, it must be confirmed with this function.166	//167	// Selector: confirmCollectionSponsorship() 3c50e97a168	function confirmCollectionSponsorship() external;169170	// Remove collection sponsor.171	//172	// Selector: removeCollectionSponsor() 6e0326a3173	function removeCollectionSponsor() external;174175	// Get current sponsor.176	//177	// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.178	//179	// Selector: getCollectionSponsor() b66bbc14180	function getCollectionSponsor() external view returns (Tuple0 memory);181182	// Set limits for the collection.183	// @dev Throws error if limit not found.184	// @param limit Name of the limit. Valid names:185	// 	"accountTokenOwnershipLimit",186	// 	"sponsoredDataSize",187	// 	"sponsoredDataRateLimit",188	// 	"tokenLimit",189	// 	"sponsorTransferTimeout",190	// 	"sponsorApproveTimeout"191	// @param value Value of the limit.192	//193	// Selector: setCollectionLimit(string,uint32) 6a3841db194>>>>>>> misk: Update stubs195	function setCollectionLimit(string memory limit, uint32 value) external;196197	/// Set limits for the collection.198	/// @dev Throws error if limit not found.199	/// @param limit Name of the limit. Valid names:200	/// 	"ownerCanTransfer",201	/// 	"ownerCanDestroy",202	/// 	"transfersEnabled"203	/// @param value Value of the limit.204	/// @dev EVM selector for this function is: 0x993b7fba,205	///  or in textual repr: setCollectionLimit(string,bool)206	function setCollectionLimit(string memory limit, bool value) external;207208	/// Get contract address.209	/// @dev EVM selector for this function is: 0xf6b4dfb4,210	///  or in textual repr: contractAddress()211	function contractAddress() external view returns (address);212213	/// Add collection admin by substrate address.214	/// @param newAdmin Substrate administrator address.215	/// @dev EVM selector for this function is: 0x5730062b,216	///  or in textual repr: addCollectionAdminSubstrate(uint256)217	function addCollectionAdminSubstrate(uint256 newAdmin) external;218219	/// Remove collection admin by substrate address.220	/// @param admin Substrate administrator address.221	/// @dev EVM selector for this function is: 0x4048fcf9,222	///  or in textual repr: removeCollectionAdminSubstrate(uint256)223	function removeCollectionAdminSubstrate(uint256 admin) external;224225	/// Add collection admin.226	/// @param newAdmin Address of the added administrator.227	/// @dev EVM selector for this function is: 0x92e462c7,228	///  or in textual repr: addCollectionAdmin(address)229	function addCollectionAdmin(address newAdmin) external;230231	/// Remove collection admin.232	///233	/// @param admin Address of the removed administrator.234	/// @dev EVM selector for this function is: 0xfafd7b42,235	///  or in textual repr: removeCollectionAdmin(address)236	function removeCollectionAdmin(address admin) external;237238	/// Toggle accessibility of collection nesting.239	///240	/// @param enable If "true" degenerates to nesting: 'Owner' else to nesting: 'Disabled'241	/// @dev EVM selector for this function is: 0x112d4586,242	///  or in textual repr: setCollectionNesting(bool)243	function setCollectionNesting(bool enable) external;244245	/// Toggle accessibility of collection nesting.246	///247	/// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'248	/// @param collections Addresses of collections that will be available for nesting.249	/// @dev EVM selector for this function is: 0x64872396,250	///  or in textual repr: setCollectionNesting(bool,address[])251	function setCollectionNesting(bool enable, address[] memory collections)252		external;253254	/// Set the collection access method.255	/// @param mode Access mode256	/// 	0 for Normal257	/// 	1 for AllowList258	/// @dev EVM selector for this function is: 0x41835d4c,259	///  or in textual repr: setCollectionAccess(uint8)260	function setCollectionAccess(uint8 mode) external;261262	/// Add the user to the allowed list.263	///264	/// @param user Address of a trusted user.265	/// @dev EVM selector for this function is: 0x67844fe6,266	///  or in textual repr: addToCollectionAllowList(address)267	function addToCollectionAllowList(address user) external;268269	/// Remove the user from the allowed list.270	///271	/// @param user Address of a removed user.272	/// @dev EVM selector for this function is: 0x85c51acb,273	///  or in textual repr: removeFromCollectionAllowList(address)274	function removeFromCollectionAllowList(address user) external;275276	/// Switch permission for minting.277	///278	/// @param mode Enable if "true".279	/// @dev EVM selector for this function is: 0x00018e84,280	///  or in textual repr: setCollectionMintMode(bool)281	function setCollectionMintMode(bool mode) external;282283	/// Check that account is the owner or admin of the collection284	///285	/// @param user account to verify286	/// @return "true" if account is the owner or admin287	/// @dev EVM selector for this function is: 0x9811b0c7,288	///  or in textual repr: isOwnerOrAdmin(address)289	function isOwnerOrAdmin(address user) external view returns (bool);290291	/// Check that substrate account is the owner or admin of the collection292	///293	/// @param user account to verify294	/// @return "true" if account is the owner or admin295	/// @dev EVM selector for this function is: 0x68910e00,296	///  or in textual repr: isOwnerOrAdminSubstrate(uint256)297	function isOwnerOrAdminSubstrate(uint256 user) external view returns (bool);298299	/// Returns collection type300	///301	/// @return `Fungible` or `NFT` or `ReFungible`302	/// @dev EVM selector for this function is: 0xd34b55b8,303	///  or in textual repr: uniqueCollectionType()304	function uniqueCollectionType() external returns (string memory);305306	/// Changes collection owner to another account307	///308	/// @dev Owner can be changed only by current owner309	/// @param newOwner new owner account310	/// @dev EVM selector for this function is: 0x13af4035,311	///  or in textual repr: setOwner(address)312	function setOwner(address newOwner) external;313314	/// Changes collection owner to another substrate account315	///316	/// @dev Owner can be changed only by current owner317	/// @param newOwner new owner substrate account318	/// @dev EVM selector for this function is: 0xb212138f,319	///  or in textual repr: setOwnerSubstrate(uint256)320	function setOwnerSubstrate(uint256 newOwner) external;321}322323/// @dev the ERC-165 identifier for this interface is 0x79cc6790324interface ERC20UniqueExtensions is Dummy, ERC165 {325	/// @dev EVM selector for this function is: 0x79cc6790,326	///  or in textual repr: burnFrom(address,uint256)327	function burnFrom(address from, uint256 amount) external returns (bool);328}329330/// @dev inlined interface331interface ERC20Events {332	event Transfer(address indexed from, address indexed to, uint256 value);333	event Approval(334		address indexed owner,335		address indexed spender,336		uint256 value337	);338}339340/// @dev the ERC-165 identifier for this interface is 0x942e8b22341interface ERC20 is Dummy, ERC165, ERC20Events {342	/// @dev EVM selector for this function is: 0x06fdde03,343	///  or in textual repr: name()344	function name() external view returns (string memory);345346	/// @dev EVM selector for this function is: 0x95d89b41,347	///  or in textual repr: symbol()348	function symbol() external view returns (string memory);349350	/// @dev EVM selector for this function is: 0x18160ddd,351	///  or in textual repr: totalSupply()352	function totalSupply() external view returns (uint256);353354	/// @dev EVM selector for this function is: 0x313ce567,355	///  or in textual repr: decimals()356	function decimals() external view returns (uint8);357358	/// @dev EVM selector for this function is: 0x70a08231,359	///  or in textual repr: balanceOf(address)360	function balanceOf(address owner) external view returns (uint256);361362	/// @dev EVM selector for this function is: 0xa9059cbb,363	///  or in textual repr: transfer(address,uint256)364	function transfer(address to, uint256 amount) external returns (bool);365366	/// @dev EVM selector for this function is: 0x23b872dd,367	///  or in textual repr: transferFrom(address,address,uint256)368	function transferFrom(369		address from,370		address to,371		uint256 amount372	) external returns (bool);373374	/// @dev EVM selector for this function is: 0x095ea7b3,375	///  or in textual repr: approve(address,uint256)376	function approve(address spender, uint256 amount) external returns (bool);377378	/// @dev EVM selector for this function is: 0xdd62ed3e,379	///  or in textual repr: allowance(address,address)380	function allowance(address owner, address spender)381		external382		view383		returns (uint256);384}385386interface UniqueFungible is387	Dummy,388	ERC165,389	ERC20,390	ERC20UniqueExtensions,391	Collection392{}