Token Vault Contract

Address

Lock and Unlock Functions

function lockTokens(
address _tokenAddress,
uint256 _amount,
uint256 _unlockTime,
address payable _withdrawer
)
public returns (uint256 _id)

Parameter

Description

_tokenAddress

Address of the token locked.

_amount

Number of tokens locked.

_unlockTime

Timestamp number marking when tokens get unlocked.

_withdrawer

Address where tokens can be withdrawn after unlocking.

Function for locking tokens in the vault.

function withdrawTokens(
address _tokenAddress,
uint256 _index,
uint256 _id,
uint256 _amount
)
external

Parameter

Description

_tokenAddress

Address of the token to withdraw.

_index

Index number of the list with Ids.

_id

Id number of the locked item.

_amount

Number of tokens to withdraw.

Function for withdrawing tokens from the vault.

Read-Only Functions

function getItemAtUserIndex(
uint256 _index,
address _tokenAddress,
address _user
)
external view returns (uint256, uint256, address, uint256)

Name

Description

_index

Index number of the list with Item ids.

_tokenAddress

Address of the token corresponding to this Item.

_user

User address.

Function to retrieve data from the Item under user index number.

function getUserLockedItemAtIndex(
address _user,
uint256 _index
)
external view returns (address)

Name

Description

_user

User address.

_index

Index number.

Function to retrieve token address at desired index for the specified user.

function getLockedItemAtId(uint256 _id)
external
view
returns (uint256, uint256, address, uint256)

Name

Description

_id

Id number.

Function to retrieve all the data from Item struct under given Id.