Skip to main content
logo

vesting

The vesting module is responsible for handling the vesting account implementation used by Mars Hub.

For more information, visit https://docs.cosmos.network/main/modules/vesting/

Message Types

Msg defines the bank Msg service.

tx.proto
Copy
service Msg {
// CreateVestingAccount defines a method that enables creating a vesting
// account.
rpc CreateVestingAccount(MsgCreateVestingAccount) returns (MsgCreateVestingAccountResponse);
// CreatePermanentLockedAccount defines a method that enables creating a permanent
// locked account.
rpc CreatePermanentLockedAccount(MsgCreatePermanentLockedAccount) returns (MsgCreatePermanentLockedAccountResponse);
// CreatePeriodicVestingAccount defines a method that enables creating a
// periodic vesting account.
rpc CreatePeriodicVestingAccount(MsgCreatePeriodicVestingAccount) returns (MsgCreatePeriodicVestingAccountResponse);
}

MsgCreateVestingAccount

MsgCreateVestingAccount defines a message that enables creating a vesting account.

tx.proto
Copy
message MsgCreateVestingAccount {
option (cosmos.msg.v1.signer) = "from_address";

option (gogoproto.equal) = true;

string from_address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
string to_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
repeated cosmos.base.v1beta1.Coin amount = 3
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];

int64 end_time = 4;
bool delayed = 5;
}

MsgCreateVestingAccountResponse

MsgCreateVestingAccountResponse defines the Msg/CreateVestingAccount response type.

tx.proto
Copy
message MsgCreateVestingAccountResponse {}

MsgCreatePermanentLockedAccount

MsgCreatePermanentLockedAccount defines a message that enables creating a permanent locked account.

tx.proto
Copy
message MsgCreatePermanentLockedAccount {
option (gogoproto.equal) = true;

string from_address = 1 [(gogoproto.moretags) = "yaml:\"from_address\""];
string to_address = 2 [(gogoproto.moretags) = "yaml:\"to_address\""];
repeated cosmos.base.v1beta1.Coin amount = 3
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
}

MsgCreatePermanentLockedAccountResponse

MsgCreatePermanentLockedAccountResponse defines the Msg/CreatePermanentLockedAccount response type.

tx.proto
Copy
message MsgCreatePermanentLockedAccountResponse {}

MsgCreateVestingAccount

MsgCreateVestingAccount defines a message that enables creating a vesting account.

tx.proto
Copy
message MsgCreatePeriodicVestingAccount {
option (cosmos.msg.v1.signer) = "from_address";

option (gogoproto.equal) = false;

string from_address = 1;
string to_address = 2;
int64 start_time = 3;
repeated Period vesting_periods = 4 [(gogoproto.nullable) = false];
}

MsgCreateVestingAccountResponse

MsgCreateVestingAccountResponse defines the Msg/CreatePeriodicVestingAccount response type.

tx.proto
Copy
message MsgCreatePeriodicVestingAccountResponse {}