IMarketplace.sol
RWA Marketplace Contract Interface (Solidity)
// SPDX-License-Identifier: MIT
pragma solidity =0.8.17;
interface IMarketplace {
event TreasuryWalletSet(
address oldTreasuryWallet,
address newTreasuryWallet
);
event FeeWalletSet(address oldFeeWallet, address newFeeWallet);
event RewardsClaimed(address indexed receiver, uint256 reward);
event AssetBought(
address indexed oldOwner,
address indexed newOwner,
uint256 id
);
event InitialFeeSet(uint256 oldFee, uint256 newFee);
event BuyingFeeSet(uint256 oldFee, uint256 newFee);
event AssetSettled(address indexed owner, uint256 assetId);
event AssetRelisted(uint256 assetId, uint256 salePrice);
error UnsupportedInterface();
function createAsset(
address owner,
uint256 mainId,
uint256 price,
uint256 apr,
uint256 dueDate
) external;
function batchCreateAsset(
address[] calldata owners,
uint256[] calldata mainIds,
uint256[] calldata prices,
uint256[] calldata aprs,
uint256[] calldata dueDates
) external;
function settleAsset(uint256 assetId) external;
function buy(uint256 assetId) external;
function batchBuy(uint256[] calldata assetIds) external;
function relist(uint256 assetId, uint256 salePrice) external;
function claimReward(uint256 assetId) external;
function setInitialFee(uint256 initialFee_) external;
function setBuyingFee(uint256 buyingFee_) external;
function setTreasuryWallet(address newTreasuryWallet) external;
function setFeeWallet(address newFeeWallet) external;
function counterOffer(
address owner,
address offeror,
uint256 offerPrice,
uint256 assetId,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) external;
function getAssetCollection() external view returns (address);
function getStableToken() external view returns (address);
function getTreasuryWallet() external view returns (address);
function getFeeWallet() external view returns (address);
function nonces(address owner) external view returns (uint256);
// solhint-disable-next-line func-name-mixedcase
function DOMAIN_SEPARATOR() external view returns (bytes32);
function getInitialFee() external view returns (uint256);
function getBuyingFee() external view returns (uint256);
}
Last updated