INestorTreasuryManager¶
Author: Originally developed by DEFYCA Labs S.a.r.l., maintained by Nestor Exchange OÜ
MIT Licence. Originally Copyright © 2023 DEFYCA Labs S.a.r.l.
The INestorTreasuryManager is responsible for all token operations — minting, transferring and burning — in the Nestor Protocol.
Functions¶
setTokensInitData¶
mintFundDepositForTreasury¶
Mints a Fund Deposit Token in the specified currency/IBAN pair. Creates the genesis mint in the PROTOCOL_TREASURY.
function mintFundDepositForTreasury(
INestorFundDepositToken.FFDImmutableData calldata depositData,
address treasuryAddress,
uint256 amount
) external returns (address);
mintDigitalSecurity¶
Mints a NestorDigitalSecurityToken as the future dated cash distribution from the underlying NestorOnChainAssetToken.
function mintDigitalSecurity(
INestorDigitalSecurityToken.FDSImmutableData memory initData,
INestorDigitalSecurityToken.FDSMutableData memory updateData,
uint256 amount,
address userAddress
) external returns (address);
mintOnChainAsset¶
Mints a NestorOnChainAssetToken as the representation of the asset to be securitised, fractionalised and sold.
function mintOnChainAsset(
INestorOnChainAssetToken.FOCASpecData memory specData,
INestorOnChainAssetToken.FOCAIssuanceData memory issuanceData,
INestorOnChainAssetToken.FOCAUpdateData memory updateData,
address custodianAddress
) external returns (address);
mintTokenForUser¶
transferToken¶
function transferToken(address token, address userAddressFrom, address userAddressTo, uint256 amount) external;
burnToken¶
getFundDepositToken¶
function getFundDepositToken(string calldata currency_, string calldata fundIBAN_) external view returns (address);
getFundDepositTokenKey¶
function getFundDepositTokenKey(string memory currency_, string memory fundIBAN_) external pure returns (bytes32);
Events¶
NestorTokenMinted¶
event NestorTokenMinted(
IBasicNestorToken.NestorTokenTypes tokenType,
address token, string tokenName, string tokenSymbol,
uint256 amount, address toAddress
);
NestorTokenTransferred¶
event NestorTokenTransferred(
IBasicNestorToken.NestorTokenTypes tokenType,
address token, uint256 amount,
address fromAddress, address toAddress
);
NestorTokenBurned¶
event NestorTokenBurned(
IBasicNestorToken.NestorTokenTypes tokenType,
address token, uint256 amount, address fromAddress
);