syntax = "proto3"; package cosmos.feegrant.v1beta1; import "cosmos/feegrant/v1beta1/feegrant.proto"; import "cosmos/base/query/v1beta1/pagination.proto"; import "google/api/annotations.proto"; import "cosmos_proto/cosmos.proto"; option go_package = "cosmossdk.io/x/feegrant"; // Query defines the gRPC querier service. service Query { // Allowance returns granted allwance to the grantee by the granter. rpc Allowance(QueryAllowanceRequest) returns (QueryAllowanceResponse) { option (google.api.http).get = "/cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}"; } // Allowances returns all the grants for the given grantee address. rpc Allowances(QueryAllowancesRequest) returns (QueryAllowancesResponse) { option (google.api.http).get = "/cosmos/feegrant/v1beta1/allowances/{grantee}"; } // AllowancesByGranter returns all the grants given by an address rpc AllowancesByGranter(QueryAllowancesByGranterRequest) returns (QueryAllowancesByGranterResponse) { option (google.api.http).get = "/cosmos/feegrant/v1beta1/issued/{granter}"; option (cosmos_proto.method_added_in) = "cosmos-sdk 0.46"; } } // QueryAllowanceRequest is the request type for the Query/Allowance RPC method. message QueryAllowanceRequest { // granter is the address of the user granting an allowance of their funds. string granter = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // grantee is the address of the user being granted an allowance of another user's funds. string grantee = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; } // QueryAllowanceResponse is the response type for the Query/Allowance RPC method. message QueryAllowanceResponse { // allowance is a allowance granted for grantee by granter. cosmos.feegrant.v1beta1.Grant allowance = 1; } // QueryAllowancesRequest is the request type for the Query/Allowances RPC method. message QueryAllowancesRequest { string grantee = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // pagination defines an pagination for the request. cosmos.base.query.v1beta1.PageRequest pagination = 2; } // QueryAllowancesResponse is the response type for the Query/Allowances RPC method. message QueryAllowancesResponse { // allowances are allowance's granted for grantee by granter. repeated cosmos.feegrant.v1beta1.Grant allowances = 1; // pagination defines an pagination for the response. cosmos.base.query.v1beta1.PageResponse pagination = 2; } // QueryAllowancesByGranterRequest is the request type for the Query/AllowancesByGranter RPC method. message QueryAllowancesByGranterRequest { option (cosmos_proto.message_added_in) = "cosmos-sdk 0.46"; string granter = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // pagination defines an pagination for the request. cosmos.base.query.v1beta1.PageRequest pagination = 2; } // QueryAllowancesByGranterResponse is the response type for the Query/AllowancesByGranter RPC method. message QueryAllowancesByGranterResponse { option (cosmos_proto.message_added_in) = "cosmos-sdk 0.46"; // allowances that have been issued by the granter. repeated cosmos.feegrant.v1beta1.Grant allowances = 1; // pagination defines an pagination for the response. cosmos.base.query.v1beta1.PageResponse pagination = 2; }