evmos/vesting

Table of Contents

evmos/vesting/v1/vesting.proto

Top

Copyright Tharsis Labs Ltd.(Evmos)

SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE)

ClawbackVestingAccount

ClawbackVestingAccount implements the VestingAccount interface. It provides

an account that can hold contributions subject to "lockup" (like a

PeriodicVestingAccount), or vesting which is subject to clawback

of unvested tokens, or a combination (tokens vest, but are still locked).

FieldTypeLabelDescription
base_vesting_account cosmos.vesting.v1beta1.BaseVestingAccount

base_vesting_account implements the VestingAccount interface. It contains all the necessary fields needed for any vesting account implementation

funder_address string

funder_address specifies the account which can perform clawback

start_time google.protobuf.Timestamp

start_time defines the time at which the vesting period begins

lockup_periods cosmos.vesting.v1beta1.Period repeated

lockup_periods defines the unlocking schedule relative to the start_time

vesting_periods cosmos.vesting.v1beta1.Period repeated

vesting_periods defines the vesting schedule relative to the start_time

evmos/vesting/v2/events.proto

Top

Copyright Tharsis Labs Ltd.(Evmos)

SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE)

EventClawback

EventClawback defines the event type for clawback

FieldTypeLabelDescription
funder string

funder is the address of the funder

account string

account is the address of the account

destination string

destination is the address of the destination

EventCreateClawbackVestingAccount

EventCreateClawbackVestingAccount defines the event type

for creating a clawback vesting account

FieldTypeLabelDescription
funder string

funder is the address of the funder

vesting_account string

vesting_account is the address of the created vesting account

EventFundVestingAccount

EventFundVestingAccount defines the event type for funding a vesting account

FieldTypeLabelDescription
funder string

funder is the address of the funder

coins string

coins to be vested

start_time string

start_time is the time when the coins start to vest

vesting_account string

vesting_account is the address of the recipient

EventUpdateVestingFunder

EventUpdateVestingFunder defines the event type for updating the vesting funder

FieldTypeLabelDescription
funder string

funder is the address of the funder

account string

account is the address of the account

new_funder string

new_funder is the address of the new funder

evmos/vesting/v2/query.proto

Top

Copyright Tharsis Labs Ltd.(Evmos)

SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE)

QueryBalancesRequest

QueryBalancesRequest is the request type for the Query/Balances RPC method.

FieldTypeLabelDescription
address string

address of the clawback vesting account

QueryBalancesResponse

QueryBalancesResponse is the response type for the Query/Balances RPC

method.

FieldTypeLabelDescription
locked cosmos.base.v1beta1.Coin repeated

locked defines the current amount of locked tokens

unvested cosmos.base.v1beta1.Coin repeated

unvested defines the current amount of unvested tokens

vested cosmos.base.v1beta1.Coin repeated

vested defines the current amount of vested tokens

Query

Query defines the gRPC querier service.

Method NameRequest TypeResponse TypeDescription
Balances QueryBalancesRequest QueryBalancesResponse

Balances retrieves the unvested, vested and locked tokens for a vesting account

Methods with HTTP bindings

Method Name Method Pattern Body
Balances GET /evmos/vesting/v2/balances/{address}

evmos/vesting/v2/tx.proto

Top

Copyright Tharsis Labs Ltd.(Evmos)

SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE)

MsgClawback

MsgClawback defines a message that removes unvested tokens from a

ClawbackVestingAccount.

FieldTypeLabelDescription
funder_address string

funder_address is the address which funded the account

account_address string

account_address is the address of the ClawbackVestingAccount to claw back from.

dest_address string

dest_address specifies where the clawed-back tokens should be transferred to. If empty, the tokens will be transferred back to the original funder of the account.

MsgClawbackResponse

MsgClawbackResponse defines the MsgClawback response type.

FieldTypeLabelDescription
coins cosmos.base.v1beta1.Coin repeated

coins is the slice of clawed back coins

MsgConvertVestingAccount

MsgConvertVestingAccount defines a message that enables converting a vesting account to an eth account

FieldTypeLabelDescription
vesting_address string

vesting_address is the address of the vesting account to convert

MsgConvertVestingAccountResponse

MsgConvertVestingAccountResponse defines the MsgConvertVestingAccount response type.

MsgCreateClawbackVestingAccount

MsgCreateClawbackVestingAccount defines a message that enables creating a

ClawbackVestingAccount.

FieldTypeLabelDescription
funder_address string

funder_address specifies the account that will be able to fund the vesting account

vesting_address string

vesting_address specifies the address that will receive the vesting tokens

enable_gov_clawback bool

enable_gov_clawback specifies whether the governance module can clawback this account

MsgCreateClawbackVestingAccountResponse

MsgCreateClawbackVestingAccountResponse defines the

MsgCreateClawbackVestingAccount response type.

MsgFundVestingAccount

MsgFundVestingAccount defines a message that enables funding an existing clawback

vesting account.

FieldTypeLabelDescription
funder_address string

funder_address specifies the account that funds the vesting account

vesting_address string

vesting_address specifies the account that receives the funds

start_time google.protobuf.Timestamp

start_time defines the time at which the vesting period begins

lockup_periods cosmos.vesting.v1beta1.Period repeated

lockup_periods defines the unlocking schedule relative to the start_time

vesting_periods cosmos.vesting.v1beta1.Period repeated

vesting_periods defines the vesting schedule relative to the start_time

MsgFundVestingAccountResponse

MsgFundVestingAccountResponse defines the

MsgFundVestingAccount response type.

MsgUpdateVestingFunder

MsgUpdateVestingFunder defines a message that updates the funder account of a

ClawbackVestingAccount.

FieldTypeLabelDescription
funder_address string

funder_address is the current funder address of the ClawbackVestingAccount

new_funder_address string

new_funder_address is the new address to replace the existing funder_address

vesting_address string

vesting_address is the address of the ClawbackVestingAccount being updated

MsgUpdateVestingFunderResponse

MsgUpdateVestingFunderResponse defines the MsgUpdateVestingFunder response

type.

Msg

Msg defines the vesting Msg service.

Method NameRequest TypeResponse TypeDescription
CreateClawbackVestingAccount MsgCreateClawbackVestingAccount MsgCreateClawbackVestingAccountResponse

CreateClawbackVestingAccount creats a vesting account that is subject to clawback.

FundVestingAccount MsgFundVestingAccount MsgFundVestingAccountResponse

FundVestingAccount funds an existing ClawbackVestingAccount with tokens according to the vesting and lockup schedules.

Clawback MsgClawback MsgClawbackResponse

Clawback removes the unvested tokens from a ClawbackVestingAccount.

UpdateVestingFunder MsgUpdateVestingFunder MsgUpdateVestingFunderResponse

UpdateVestingFunder updates the funder address of an existing ClawbackVestingAccount.

ConvertVestingAccount MsgConvertVestingAccount MsgConvertVestingAccountResponse

ConvertVestingAccount converts a ClawbackVestingAccount to an Eth account

Methods with HTTP bindings

Method Name Method Pattern Body
CreateClawbackVestingAccount GET /evmos/vesting/v2/tx/create_clawback_vesting_account
FundVestingAccount GET /evmos/vesting/v2/tx/fund_vesting_account
Clawback GET /evmos/vesting/v2/tx/clawback
UpdateVestingFunder GET /evmos/vesting/v2/tx/update_vesting_funder
ConvertVestingAccount GET /evmos/vesting/v2/tx/convert_vesting_account

evmos/vesting/v2/vesting.proto

Top

Copyright Tharsis Labs Ltd.(Evmos)

SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE)

ClawbackProposal

ClawbackProposal is a gov Content type to clawback funds

from a vesting account that has this functionality enabled.

FieldTypeLabelDescription
title string

title of the proposal

description string

description of the proposal

address string

address is the vesting account address to clawback the funds from

destination_address string

destination_address is the address that will receive the clawbacked funds from the given vesting account. When empty, proposal will return the coins to the vesting account funder.

ClawbackVestingAccount

ClawbackVestingAccount implements the VestingAccount interface. It provides

an account that can hold contributions subject to "lockup" (like a

PeriodicVestingAccount), or vesting which is subject to clawback

of unvested tokens, or a combination (tokens vest, but are still locked).

FieldTypeLabelDescription
base_vesting_account cosmos.vesting.v1beta1.BaseVestingAccount

base_vesting_account implements the VestingAccount interface. It contains all the necessary fields needed for any vesting account implementation

funder_address string

funder_address specifies the account which can perform clawback

start_time google.protobuf.Timestamp

start_time defines the time at which the vesting period begins

lockup_periods cosmos.vesting.v1beta1.Period repeated

lockup_periods defines the unlocking schedule relative to the start_time

vesting_periods cosmos.vesting.v1beta1.Period repeated

vesting_periods defines the vesting schedule relative to the start_time

Scalar Value Types

.proto Type Notes Python Type
double float
float float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int/long
uint32 Uses variable-length encoding. int/long
uint64 Uses variable-length encoding. int/long
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int/long
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. int
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. int/long
sfixed32 Always four bytes. int
sfixed64 Always eight bytes. int/long
bool boolean
string A string must always contain UTF-8 encoded or 7-bit ASCII text. str/unicode
bytes May contain any arbitrary sequence of bytes. str