Alluvial Finance Inc.
TLC Interface (v1)
TLC token interface
Returns the remaining number of tokens that spender will be allowed to spend on behalf of owner through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.
Sets amount as the allowance of spender over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.
Returns the amount of tokens owned by account.
computeVestingReleasableAmount
Computes the releasable amount of tokens for a vesting schedule.
computeVestingVestedAmount
Computes the vested amount of tokens for a vesting schedule.
createVestingSchedule
Creates a new vesting scheduleThere may delay between the time a user should start vesting tokens and the time the vesting schedule is actually created on the contract.Typically a user joins the Liquid Collective but some weeks pass before the user gets all legal agreements in place and signed for the token grant emission to happen. In this case, the vesting schedule created for the token grant would start on the join date which is in the past.
As vesting schedules can be created in the past, this means that you should be careful when creating a vesting schedule and what duration parameters you use as this contract would allow creating a vesting schedule in the past and even a vesting schedule that has already ended.
Delegates votes from the sender to delegatee.
Delegates votes from signer to delegatee.
delegateVestingEscrow
Delegate vesting escrowed tokens
Returns the delegate that account has chosen.
getPastTotalSupply
Returns the total supply of votes available at a specific moment in the past. If the clock() is configured to use block numbers, this will return the value at the end of the corresponding block. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote.
Returns the amount of votes that account had at a specific moment in the past. If the clock() is configured to use block numbers, this will return the value at the end of the corresponding block.
getVestingSchedule
Get vesting schedule
The vesting schedule structure represents a static configuration used to compute the desired vesting details of a beneficiary at all times. The values won't change even after tokens are released. The only dynamic field of the structure is end, and is updated whenever a vesting schedule is revoked
getVestingScheduleCount
Get count of vesting schedules
Returns the current amount of votes that account has.
Initializes the TLC Token
isGlobalUnlockedScheduleIgnored
Get vesting global unlock schedule activation status for a vesting schedule
migrateVestingSchedules
Migrates the vesting schedule state structures
releaseVestingSchedule
Release vesting scheduleWhen tokens are released from the escrow, the delegated address of the escrow will see its voting power decrease.The beneficiary has to make sure its delegation parameters are set properly to be able to use/delegate the voting power of its balance.
revokeVestingSchedule
Revoke vesting schedule
Returns the amount of tokens in existence.
Moves amount tokens from the caller's account to to. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.
Moves amount tokens from from to to using the allowance mechanism. amount is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.
Get the address of the escrow for a vesting schedule
Emitted when the allowance of a spender for an owner is set by a call to {approve}. value is the new allowance.
CreatedVestingSchedule
A new vesting schedule has been created
DelegateChanged
Emitted when an account changes their delegate.
DelegateVotesChanged
Emitted when a token transfer or delegate change results in changes to a delegate's number of votes.
DelegatedVestingEscrow
Vesting escrow has been delegated
ReleasedVestingSchedule
Vesting schedule has been released
RevokedVestingSchedule
Vesting schedule has been revoked
Emitted when value tokens are moved from one account (from) to another (to). Note that value may be zero.
GlobalUnlockUnderlfow
Underflow in global unlock logic (should never happen)
InvalidRevokedVestingScheduleEnd
Attempt to revoke a vesting schedule with an invalid end parameter
InvalidVestingScheduleParameter
Invalid parameter for a vesting schedule
UnsufficientVestingScheduleCreatorBalance
Vesting schedule creator has unsufficient balance to create vesting schedule
VestingScheduleIsLocked
The vesting schedule is locked
VestingScheduleNotRevocable
The vesting schedule is not revocable
VestingScheduleNotRevocableInPast
Attempt to revoke a schedule in the past
ZeroReleasableAmount
No token to release