syntax = "proto3";
package cosmos.crisis.v1beta1;

option go_package = "github.com/cosmos/cosmos-sdk/x/crisis/types";

import "gogoproto/gogo.proto";
import "cosmos_proto/cosmos.proto";
import "cosmos/msg/v1/msg.proto";

// Msg defines the bank Msg service.
service Msg {
  // VerifyInvariant defines a method to verify a particular invariance.
  rpc VerifyInvariant(MsgVerifyInvariant) returns (MsgVerifyInvariantResponse);
}

// MsgVerifyInvariant represents a message to verify a particular invariance.
message MsgVerifyInvariant {
  option (cosmos.msg.v1.signer) = "sender";

  option (gogoproto.equal)           = false;
  option (gogoproto.goproto_getters) = false;

  string sender                = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
  string invariant_module_name = 2;
  string invariant_route       = 3;
}

// MsgVerifyInvariantResponse defines the Msg/VerifyInvariant response type.
message MsgVerifyInvariantResponse {}
