import { PageRequest, PageResponse } from "../../base/query/v1beta1/pagination"; import { Params, ValidatorOutstandingRewards, ValidatorAccumulatedCommission, ValidatorSlashEvent, DelegationDelegatorReward } from "./distribution"; import { DecCoin } from "../../base/v1beta1/coin"; import { Rpc } from "@osmonauts/helpers"; import * as _m0 from "protobufjs/minimal"; import { QueryParamsRequest, QueryParamsResponse, QueryValidatorOutstandingRewardsRequest, QueryValidatorOutstandingRewardsResponse, QueryValidatorCommissionRequest, QueryValidatorCommissionResponse, QueryValidatorSlashesRequest, QueryValidatorSlashesResponse, QueryDelegationRewardsRequest, QueryDelegationRewardsResponse, QueryDelegationTotalRewardsRequest, QueryDelegationTotalRewardsResponse, QueryDelegatorValidatorsRequest, QueryDelegatorValidatorsResponse, QueryDelegatorWithdrawAddressRequest, QueryDelegatorWithdrawAddressResponse, QueryCommunityPoolRequest, QueryCommunityPoolResponse } from "./query"; /** Query defines the RPC service */ export interface Query { params(request: QueryParamsRequest): Promise; /*Params queries params of the distribution module.*/ validatorOutstandingRewards(request: QueryValidatorOutstandingRewardsRequest): Promise; /*ValidatorOutstandingRewards queries rewards of a validator address.*/ validatorCommission(request: QueryValidatorCommissionRequest): Promise; /*ValidatorCommission queries accumulated commission for a validator.*/ validatorSlashes(request: QueryValidatorSlashesRequest): Promise; /*ValidatorSlashes queries slash events of a validator.*/ delegationRewards(request: QueryDelegationRewardsRequest): Promise; /*DelegationRewards queries the total rewards accrued by a delegation.*/ delegationTotalRewards(request: QueryDelegationTotalRewardsRequest): Promise; /*DelegationTotalRewards queries the total rewards accrued by a each validator.*/ delegatorValidators(request: QueryDelegatorValidatorsRequest): Promise; /*DelegatorValidators queries the validators of a delegator.*/ delegatorWithdrawAddress(request: QueryDelegatorWithdrawAddressRequest): Promise; /*DelegatorWithdrawAddress queries withdraw address of a delegator.*/ communityPool(request: QueryCommunityPoolRequest): Promise; /*CommunityPool queries the community pool coins.*/ } export class QueryClientImpl implements Query { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.params = this.params.bind(this); this.validatorOutstandingRewards = this.validatorOutstandingRewards.bind(this); this.validatorCommission = this.validatorCommission.bind(this); this.validatorSlashes = this.validatorSlashes.bind(this); this.delegationRewards = this.delegationRewards.bind(this); this.delegationTotalRewards = this.delegationTotalRewards.bind(this); this.delegatorValidators = this.delegatorValidators.bind(this); this.delegatorWithdrawAddress = this.delegatorWithdrawAddress.bind(this); this.communityPool = this.communityPool.bind(this); } params(request: QueryParamsRequest): Promise { const data = QueryParamsRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "Params", data); return promise.then(data => QueryParamsResponse.decode(new _m0.Reader(data))); } validatorOutstandingRewards(request: QueryValidatorOutstandingRewardsRequest): Promise { const data = QueryValidatorOutstandingRewardsRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "ValidatorOutstandingRewards", data); return promise.then(data => QueryValidatorOutstandingRewardsResponse.decode(new _m0.Reader(data))); } validatorCommission(request: QueryValidatorCommissionRequest): Promise { const data = QueryValidatorCommissionRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "ValidatorCommission", data); return promise.then(data => QueryValidatorCommissionResponse.decode(new _m0.Reader(data))); } validatorSlashes(request: QueryValidatorSlashesRequest): Promise { const data = QueryValidatorSlashesRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "ValidatorSlashes", data); return promise.then(data => QueryValidatorSlashesResponse.decode(new _m0.Reader(data))); } delegationRewards(request: QueryDelegationRewardsRequest): Promise { const data = QueryDelegationRewardsRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "DelegationRewards", data); return promise.then(data => QueryDelegationRewardsResponse.decode(new _m0.Reader(data))); } delegationTotalRewards(request: QueryDelegationTotalRewardsRequest): Promise { const data = QueryDelegationTotalRewardsRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "DelegationTotalRewards", data); return promise.then(data => QueryDelegationTotalRewardsResponse.decode(new _m0.Reader(data))); } delegatorValidators(request: QueryDelegatorValidatorsRequest): Promise { const data = QueryDelegatorValidatorsRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "DelegatorValidators", data); return promise.then(data => QueryDelegatorValidatorsResponse.decode(new _m0.Reader(data))); } delegatorWithdrawAddress(request: QueryDelegatorWithdrawAddressRequest): Promise { const data = QueryDelegatorWithdrawAddressRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "DelegatorWithdrawAddress", data); return promise.then(data => QueryDelegatorWithdrawAddressResponse.decode(new _m0.Reader(data))); } communityPool(request: QueryCommunityPoolRequest): Promise { const data = QueryCommunityPoolRequest.encode(request).finish(); const promise = this.rpc.request("cosmos.distribution.v1beta1.Query", "CommunityPool", data); return promise.then(data => QueryCommunityPoolResponse.decode(new _m0.Reader(data))); } }