Technical Reference

Functions Write

PayForFreeTokenLocks

function payForFreeTokenLocks(    address _token) external payable

Permits to pay a once off fee to have free use of the lockers for the token.

Parameters:

Name
Type
Description

_token

address

The address of the token to be locked for free.


EditZeroFeeWhitelist

function editZeroFeeWhitelist(    address _token,    bool _add) external

Callable by UNCX_ADMINS or whitelisted contracts.

Parameters:

Name
Type
Description

_token

address

The address of the token to be added or removed from the whitelist.

_add

bool

Indicates if the token should be added (true) or removed (false) from the whitelist.


Lock

function lock(    address _token,    LockParams[] calldata _lock_params) external

Creates one or multiple locks for the specified token.

Parameters:

Type
Description

LockParams

An object that contains: owner (address), amount (uint256), startEmission (uint256), endEmission (uint256), and condition (address).


Withdraw

Withdraws a specified amount from a lock.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock from which tokens will be withdrawn.

_amount

uint256

The desired amount of tokens to be withdrawn.


Relock

Extends a lock with a new unlock date, if lock is Type 2 it extends the emission end date.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock which needs to have its unlock date extended.

_unlock_date

uint256

The new unlock date. If the lock is Type 2, this extends the emission end date.


IncrementLock

Increases the amount of tokens per a specific lock.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock which will have its token amount increased.

_amount

uint256

The amount of additional tokens to be added to the specified lock.


TransferLockOwnership

Transfers a lock to a new owner.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock whose ownership will be transferred.

_newOwner

address payable

The address of the new owner to whom the lock will be transferred.


SplitLock

Splits a lock into two seperate locks.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock which will be split.

_amount

uint256

The amount in tokens which will form one part of the split lock.


Migrate

Migrates to the next locker version.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock which will be migrated to the next locker version.

_option

uint256

An option for migration. The exact meaning would depend on the migration logic.


RevokeCondition

Revokes premature unlock conditions.

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock whose premature unlock condition will be revoked.

Functions View

TestCondition

Parameters:

Name
Type
Description

condition

address

The condition's address to test on the frontend UI.

Return Values:

Type
Description

bool

The result of the condition tested in the frontend UI.


GetWithdrawableShares

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock for which shares are being queried.

Return Values:

Type
Description

uint256

The withdrawable share amount from the lock.


GetWithdrawableTokens

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock for which tokens are being queried.

Return Values:

Type
Description

uint256

The current amount in tokens that can be withdrawn.


ConvertSharesToTokens

Parameters:

Name
Type
Description

_token

address

The token's address.

_shares

uint256

The number of shares to convert.

Return Values:

Type
Description

uint256

The equivalent amount of tokens for the provided shares.


convertTokensToShares

Parameters:

Name
Type
Description

_token

address

The token's address.

_tokens

uint256

The number of tokens to convert.

Return Values:

Type
Description

uint256

The equivalent amount of shares for the provided tokens.


GetLock

Parameters:

Name
Type
Description

_lockID

uint256

The ID of the lock being queried.

Return Values:


GetNumLockedTokens

Return Values:

Type
Description

uint256

Number of locked tokens.


GetTokenAtIndex

Parameters:

Name
Type
Description

_index

uint256

The index of the token queried.

Return Values:

Type
Description

address

Token's address at the given index.


GetTokenLocksLength

Parameters:

Name
Type
Description

_token

address

The token's address.

Return Values:

Type
Description

uint256

Token Lock ID at the specified index.


GetTokenLockIDAtIndex

Parameters:

Name
Type
Description

_token

address

The token's address.

_index

uint256

The index of the lock queried.

Return Values:

Type
Description

uint256

Token Lock ID at the specified index.


GetUserLockedTokensLength

Parameters:

Name
Type
Description

_user

address

The user's address queried.

Return Values:

Type
Description

uint256

Number of tokens locked by the user.


GetUserLockedTokenAtIndex

Parameters:

Name
Type
Description

_user

address

The user's address queried.

_index

uint256

The index of the token queried.

Return Values:

Type
Description

address

Token address at the specified index for the user.


GetUserLocksForTokenLength

Parameters:

Name
Type
Description

_user

address

The user's address.

_token

address

The token's address.

Return Values:

Type
Description

uint256

Number of locks for a token for the user.


GetUserLockIDForTokenAtIndex

Parameters:

Name
Type
Description

_user

address

The user's address.

_token

address

The token's address.

_index

uint256

The index of the lock queried.

Return Values:

Type
Description

uint256

Lock ID for a token at the specified index for the user.


GetZeroFeeTokensLength

Return Values:

Type
Description

uint256

Length of no fee tokens.


GetZeroFeeTokenAtIndex

Parameters:

Name
Type
Description

_index

uint256

The index of the token queried.

Return Values:

Type
Description

address

No fee token at the given index.


TokenOnZeroFeeWhitelist

Parameters:

Name
Type
Description

_token

address

The token's address.

Return Values:

Type
Description

bool

Whether the token is on the no fee whitelist.


GetTokenWhitelisterLength

Return Values:

Type
Description

uint256

Length of token whitelisters.


GetTokenWhitelisterAtIndex

Parameters:

Name
Type
Description

_index

uint256

The index of the whitelister queried.

Return Values:

Type
Description

address

Token whitelister at the given index.


GetTokenWhitelisterStatus

Parameters:

Name
Type
Description

_user

address

The user's address whose status is queried.

Return Values:

Type
Description

bool

Whitelister status of the specified user.

Events

OnLock

Parameters:

Name
Type
Description

lockID

uint256

ID of the lock.

token

address

Token address.

owner

address

Address of the lock owner.

amountInTokens

uint256

Amount of tokens in the lock.

amountInShares

uint256

Amount of shares in the lock.

startEmission

uint256

Start time of emission.

endEmission

uint256

End time of emission.

unlockCondition

address

Address of the unlock condition contract.


OnWithdraw

Parameters:

Name
Type
Description

lockID

uint256

ID of the lock.

lpToken

address

LP token address.

amountInTokens

uint256

Amount of tokens withdrawn.

amountInShares

uint256

Amount of shares withdrawn.


OnRelock

Parameters:

Name
Type
Description

lockID

uint256

ID of the lock.

token

address

Token address.

unlockDate

uint256

New unlock date.


OnTransferLock

Parameters:

Name
Type
Description

lockIDFrom

uint256

Original lock ID.

lockIDto

uint256

New lock ID.

oldOwner

address

Original owner of the lock.

newOwner

address

New owner of the lock.


OnSplitLock

Parameters:

Name
Type
Description

fromLockID

uint256

Original lock ID.

toLockID

uint256

New lock ID after split.

amountInTokens

uint256

Amount of tokens in the new lock.

amountInShares

uint256

Amount of shares in the new lock.


OnMigrate

Parameters:

Name
Type
Description

lockID

uint256

ID of the lock being migrated.

amountInTokens

uint256

Amount of tokens being migrated.


OnConditionRevoke

Parameters:

Name
Type
Description

lockID

uint256

ID of the lock.

tokenAddress

address

Token address of the lock.

Last updated