Methods

These are the operations that can be performed on the TreasuryManager contract.

Write Operations

function transfer(address token, uint256 value, address receiver, uint256 tokenType, uint256 objectId, bool safe, bool withData, bytes calldata data) external returns(bool result, bytes memory returnData);

This function allows an active component to transfer an Organization's funds.

The input parameters used must pertain to the type of transfer you wish to perform; see the previous page for more information.

The function returns result (bool) and returnData (bytes). result is true if the transfer operation has been correctly executed; otherwise, it is false. returnData is the data that the transfer operation returns, such as: the receiver address; the transferred value; the type of transfer performed (e.g. ETH transfer, ERC20 transfer, ERC721 transferFrom etc.); and so on.

function batchTransfer(TransferEntry[] calldata transferEntries) external returns(bool[] memory results, bytes[] memory returnDatas);

This function allows an active component to transfer an Organization's funds.

The input parameters used must pertain to the type of transfer you wish to perform; see the previous page for more information.

The function returns result (bool) and returnData (bytes). result is true if the transfer operation has been correctly executed; otherwise, it is false. returnData is the data that the transfer operation returns, such as: the receiver address; the transferred value; the type of transfer performed (e.g. ERC20 transfer, ERC721 transferFrom, ERC1155 safeBatchTransferFrom etc.); and so on.

function setAdditionalFunction(bytes4 selector, address newServer, bool log) external returns (address oldServer);

This function is used to: extend or limit the Treasury Manager with new functionalities; to replace a functionality; or to remove one. See the previous page for more details.

The selector (bytes4) represents the function to update in the server contract. The newServer (address) contract contains the new function(s) to update in the TreasuryManager; to remove an additional function, the server address must be passed as address(0). If the new function has to be logged through an event emission,log (bool) is true; if not, it's (false).

Last updated