syntax = "proto3"; package cosmos.feegrant.v1beta1; import "gogoproto/gogo.proto"; import "google/protobuf/any.proto"; import "cosmos_proto/cosmos.proto"; option go_package = "github.com/cosmos/cosmos-sdk/x/feegrant/types"; // Msg defines the feegrant msg service. service Msg { // GrantFeeAllowance grants fee allowance to the grantee on the granter's // account with the provided expiration time. rpc GrantFeeAllowance(MsgGrantFeeAllowance) returns (MsgGrantFeeAllowanceResponse); // RevokeFeeAllowance revokes any fee allowance of granter's account that // has been granted to the grantee. rpc RevokeFeeAllowance(MsgRevokeFeeAllowance) returns (MsgRevokeFeeAllowanceResponse); } // MsgGrantFeeAllowance adds permission for Grantee to spend up to Allowance // of fees from the account of Granter. message MsgGrantFeeAllowance { string granter = 1; string grantee = 2; google.protobuf.Any allowance = 3 [(cosmos_proto.accepts_interface) = "FeeAllowanceI"]; } // MsgGrantFeeAllowanceResponse defines the Msg/GrantFeeAllowanceResponse response type. message MsgGrantFeeAllowanceResponse {} // MsgRevokeFeeAllowance removes any existing FeeAllowance from Granter to Grantee. message MsgRevokeFeeAllowance { string granter = 1; string grantee = 2; } // MsgRevokeFeeAllowanceResponse defines the Msg/RevokeFeeAllowanceResponse response type. message MsgRevokeFeeAllowanceResponse {}