Marketplace

Type

enum OfferState {
    Nil,
    Selling,
    Done,
    Cancelled
}

struct Offer {
    uint256 tokenId;
    uint256 sellingAmount;
    uint256 soldAmount;
    uint256 unitPrice;
    address currency;
    bool isDividable;
    OfferState state;
    address seller;
}

Event

event ExclusiveFeeRateUpdate(uint256 newValue);

event NewOffer(
    uint256 indexed offerId,
    uint256 indexed tokenId,
    address indexed seller,
    uint256 sellingAmount,
    uint256 pricePerToken,
    bool isDividable
);
event OfferCancellation(uint256 indexed offerId);

event TokenSale(
    uint256 indexed offerId,
    address indexed buyer,
    uint256 amount,
    uint256 price,
    uint256 royalty
);

Error

error FailedTransfer();
error InsufficientFunds();
error InvalidAmount();
error InvalidBuying();
error InvalidCancelling();
error InvalidCurrency();
error InvalidOfferId();
error InvalidPercentage();
error InvalidSellingAmount();
error InvalidTokenId();
error InvalidUnitPrice();
error NotEnoughTokensToSell();
error Unauthorized();

Function

function version() external pure returns (string memory version);

function admin() external view returns (address admin);
function feeReceiver() external view returns (address feeReceiver);
function primaryToken() external view returns (address primaryToken);
function treasury() external view returns (address treasury);

function endAt() external view returns (uint256 endAt);
function liquidityPercentage() external view returns (uint256 liquidityPercentage);
function totalDeposit() external view returns (uint256 totalDeposit);
function totalLiquidity() external view returns (uint256 totalLiquidity);
function totalToken() external view returns (uint256 totalToken);
function useWhitelist() external view returns (bool useWhitelist);

function getDepositor(address account) external view returns (Depositor memory);

function withdrawableTokenAmountOf(address account) external view returns (uint256 amount);

function setTotalToken(uint256 totalToken) external;

function deposit(uint256 amount) external;
function withdraw() external;

Last updated