github.com/Finschia/finschia-sdk@v0.49.1/proto/cosmos/staking/v1beta1/authz.proto (about)

     1  syntax = "proto3";
     2  package cosmos.staking.v1beta1;
     3  
     4  import "gogoproto/gogo.proto";
     5  import "cosmos_proto/cosmos.proto";
     6  import "cosmos/base/v1beta1/coin.proto";
     7  
     8  option go_package = "github.com/Finschia/finschia-sdk/x/staking/types";
     9  
    10  // StakeAuthorization defines authorization for delegate/undelegate/redelegate.
    11  //
    12  // Since: cosmos-sdk 0.43
    13  message StakeAuthorization {
    14    option (cosmos_proto.implements_interface) = "Authorization";
    15  
    16    // max_tokens specifies the maximum amount of tokens can be delegate to a validator. If it is
    17    // empty, there is no spend limit and any amount of coins can be delegated.
    18    cosmos.base.v1beta1.Coin max_tokens = 1 [(gogoproto.castrepeated) = "github.com/Finschia/finschia-sdk/types.Coin"];
    19    // validators is the oneof that represents either allow_list or deny_list
    20    oneof validators {
    21      // allow_list specifies list of validator addresses to whom grantee can delegate tokens on behalf of granter's
    22      // account.
    23      Validators allow_list = 2;
    24      // deny_list specifies list of validator addresses to whom grantee can not delegate tokens.
    25      Validators deny_list = 3;
    26    }
    27    // Validators defines list of validator addresses.
    28    message Validators {
    29      repeated string address = 1;
    30    }
    31    // authorization_type defines one of AuthorizationType.
    32    AuthorizationType authorization_type = 4;
    33  }
    34  
    35  // AuthorizationType defines the type of staking module authorization type
    36  //
    37  // Since: cosmos-sdk 0.43
    38  enum AuthorizationType {
    39    // AUTHORIZATION_TYPE_UNSPECIFIED specifies an unknown authorization type
    40    AUTHORIZATION_TYPE_UNSPECIFIED = 0;
    41    // AUTHORIZATION_TYPE_DELEGATE defines an authorization type for Msg/Delegate
    42    AUTHORIZATION_TYPE_DELEGATE = 1;
    43    // AUTHORIZATION_TYPE_UNDELEGATE defines an authorization type for Msg/Undelegate
    44    AUTHORIZATION_TYPE_UNDELEGATE = 2;
    45    // AUTHORIZATION_TYPE_REDELEGATE defines an authorization type for Msg/BeginRedelegate
    46    AUTHORIZATION_TYPE_REDELEGATE = 3;
    47  }