mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-11-10 10:05:18 +00:00
fcfcd36740
* add total supply endpoint to x/liquid * add test of x/liquid total supply query * refactor x/savings test * add total supply endpoint for x/savings (w/ test) * add total supply endpoint for x/earn * handle converting bkava to underlying staked amount * aggregate bkava underlying values in x/earn * aggregate underlying value of bkava in x/savings
71 lines
2.4 KiB
Protocol Buffer
71 lines
2.4 KiB
Protocol Buffer
syntax = "proto3";
|
|
package kava.savings.v1beta1;
|
|
|
|
import "kava/savings/v1beta1/store.proto";
|
|
import "gogoproto/gogo.proto";
|
|
import "google/api/annotations.proto";
|
|
import "cosmos/base/v1beta1/coin.proto";
|
|
import "cosmos_proto/cosmos.proto";
|
|
import "cosmos/base/query/v1beta1/pagination.proto";
|
|
|
|
option go_package = "github.com/kava-labs/kava/x/savings/types";
|
|
|
|
// Query defines the gRPC querier service for savings module
|
|
service Query {
|
|
// Params queries all parameters of the savings module.
|
|
rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {
|
|
option (google.api.http).get = "/kava/savings/v1beta1/params";
|
|
}
|
|
|
|
// Deposits queries savings deposits.
|
|
rpc Deposits(QueryDepositsRequest) returns (QueryDepositsResponse) {
|
|
option (google.api.http).get = "/kava/savings/v1beta1/deposits";
|
|
}
|
|
|
|
// TotalSupply returns the total sum of all coins currently locked into the savings module.
|
|
rpc TotalSupply(QueryTotalSupplyRequest) returns (QueryTotalSupplyResponse) {
|
|
option (google.api.http).get = "/kava/savings/v1beta1/total_supply";
|
|
}
|
|
}
|
|
|
|
// QueryParamsRequest defines the request type for querying x/savings
|
|
// parameters.
|
|
message QueryParamsRequest {}
|
|
|
|
// QueryParamsResponse defines the response type for querying x/savings
|
|
// parameters.
|
|
message QueryParamsResponse {
|
|
option (gogoproto.goproto_getters) = false;
|
|
|
|
Params params = 1 [(gogoproto.nullable) = false];
|
|
}
|
|
|
|
// QueryDepositsRequest defines the request type for querying x/savings
|
|
// deposits.
|
|
message QueryDepositsRequest {
|
|
string denom = 1;
|
|
string owner = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
|
|
cosmos.base.query.v1beta1.PageRequest pagination = 3;
|
|
}
|
|
|
|
// QueryDepositsResponse defines the response type for querying x/savings
|
|
// deposits.
|
|
message QueryDepositsResponse {
|
|
repeated Deposit deposits = 1 [(gogoproto.castrepeated) = "Deposits", (gogoproto.nullable) = false];
|
|
|
|
cosmos.base.query.v1beta1.PageResponse pagination = 2;
|
|
}
|
|
|
|
// QueryTotalSupplyRequest defines the request type for Query/TotalSupply method.
|
|
message QueryTotalSupplyRequest {}
|
|
|
|
// TotalSupplyResponse defines the response type for the Query/TotalSupply method.
|
|
message QueryTotalSupplyResponse {
|
|
// Height is the block height at which these totals apply
|
|
int64 height = 1;
|
|
// Result is a list of coins supplied to savings
|
|
repeated cosmos.base.v1beta1.Coin result = 2
|
|
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
|
|
}
|