2022-01-08 01:59:34 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
package cosmos.vesting.v1beta1;
|
|
|
|
|
|
|
|
import "gogoproto/gogo.proto";
|
|
|
|
import "cosmos/base/v1beta1/coin.proto";
|
2023-04-04 00:08:45 +00:00
|
|
|
import "cosmos_proto/cosmos.proto";
|
|
|
|
import "cosmos/vesting/v1beta1/vesting.proto";
|
|
|
|
import "cosmos/msg/v1/msg.proto";
|
2024-02-06 22:54:10 +00:00
|
|
|
import "amino/amino.proto";
|
2022-01-08 01:59:34 +00:00
|
|
|
|
|
|
|
option go_package = "github.com/cosmos/cosmos-sdk/x/auth/vesting/types";
|
|
|
|
|
|
|
|
// Msg defines the bank Msg service.
|
|
|
|
service Msg {
|
2024-02-06 22:54:10 +00:00
|
|
|
option (cosmos.msg.v1.service) = true;
|
|
|
|
|
2022-01-08 01:59:34 +00:00
|
|
|
// CreateVestingAccount defines a method that enables creating a vesting
|
|
|
|
// account.
|
|
|
|
rpc CreateVestingAccount(MsgCreateVestingAccount) returns (MsgCreateVestingAccountResponse);
|
2023-04-04 00:08:45 +00:00
|
|
|
// CreatePermanentLockedAccount defines a method that enables creating a permanent
|
|
|
|
// locked account.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
rpc CreatePermanentLockedAccount(MsgCreatePermanentLockedAccount) returns (MsgCreatePermanentLockedAccountResponse);
|
|
|
|
// CreatePeriodicVestingAccount defines a method that enables creating a
|
|
|
|
// periodic vesting account.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
rpc CreatePeriodicVestingAccount(MsgCreatePeriodicVestingAccount) returns (MsgCreatePeriodicVestingAccountResponse);
|
2022-01-08 01:59:34 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// MsgCreateVestingAccount defines a message that enables creating a vesting
|
|
|
|
// account.
|
|
|
|
message MsgCreateVestingAccount {
|
2023-04-04 00:08:45 +00:00
|
|
|
option (cosmos.msg.v1.signer) = "from_address";
|
2024-02-06 22:54:10 +00:00
|
|
|
option (amino.name) = "cosmos-sdk/MsgCreateVestingAccount";
|
2023-04-04 00:08:45 +00:00
|
|
|
|
2022-01-08 01:59:34 +00:00
|
|
|
option (gogoproto.equal) = true;
|
|
|
|
|
2023-04-04 00:08:45 +00:00
|
|
|
string from_address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
|
|
string to_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
2024-02-06 22:54:10 +00:00
|
|
|
repeated cosmos.base.v1beta1.Coin amount = 3 [
|
|
|
|
(gogoproto.nullable) = false,
|
|
|
|
(amino.dont_omitempty) = true,
|
|
|
|
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
|
|
|
|
];
|
2022-01-08 01:59:34 +00:00
|
|
|
|
2024-02-06 22:54:10 +00:00
|
|
|
// end of vesting as unix time (in seconds).
|
2023-04-04 00:08:45 +00:00
|
|
|
int64 end_time = 4;
|
2022-01-08 01:59:34 +00:00
|
|
|
bool delayed = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
// MsgCreateVestingAccountResponse defines the Msg/CreateVestingAccount response type.
|
2023-04-04 00:08:45 +00:00
|
|
|
message MsgCreateVestingAccountResponse {}
|
|
|
|
|
|
|
|
// MsgCreatePermanentLockedAccount defines a message that enables creating a permanent
|
|
|
|
// locked account.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
message MsgCreatePermanentLockedAccount {
|
2024-02-06 22:54:10 +00:00
|
|
|
option (cosmos.msg.v1.signer) = "from_address";
|
|
|
|
option (amino.name) = "cosmos-sdk/MsgCreatePermLockedAccount";
|
|
|
|
option (gogoproto.equal) = true;
|
2023-04-04 00:08:45 +00:00
|
|
|
|
|
|
|
string from_address = 1 [(gogoproto.moretags) = "yaml:\"from_address\""];
|
|
|
|
string to_address = 2 [(gogoproto.moretags) = "yaml:\"to_address\""];
|
2024-02-06 22:54:10 +00:00
|
|
|
repeated cosmos.base.v1beta1.Coin amount = 3 [
|
|
|
|
(gogoproto.nullable) = false,
|
|
|
|
(amino.dont_omitempty) = true,
|
|
|
|
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
|
|
|
|
];
|
2023-04-04 00:08:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// MsgCreatePermanentLockedAccountResponse defines the Msg/CreatePermanentLockedAccount response type.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
message MsgCreatePermanentLockedAccountResponse {}
|
|
|
|
|
|
|
|
// MsgCreateVestingAccount defines a message that enables creating a vesting
|
|
|
|
// account.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
message MsgCreatePeriodicVestingAccount {
|
|
|
|
option (cosmos.msg.v1.signer) = "from_address";
|
2024-02-06 22:54:10 +00:00
|
|
|
option (amino.name) = "cosmos-sdk/MsgCreatePeriodicVestingAccount";
|
2023-04-04 00:08:45 +00:00
|
|
|
|
|
|
|
option (gogoproto.equal) = false;
|
|
|
|
|
|
|
|
string from_address = 1;
|
|
|
|
string to_address = 2;
|
2024-02-06 22:54:10 +00:00
|
|
|
// start of vesting as unix time (in seconds).
|
2023-04-04 00:08:45 +00:00
|
|
|
int64 start_time = 3;
|
2024-02-06 22:54:10 +00:00
|
|
|
repeated Period vesting_periods = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
|
2023-04-04 00:08:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// MsgCreateVestingAccountResponse defines the Msg/CreatePeriodicVestingAccount
|
|
|
|
// response type.
|
|
|
|
//
|
|
|
|
// Since: cosmos-sdk 0.46
|
|
|
|
message MsgCreatePeriodicVestingAccountResponse {}
|