import { QueryClient, setupStakingExtension } from "@cosmjs/stargate";
import { connectComet } from "@cosmjs/tendermint-rpc";
const cometClient = await connectComet("https://rpc.my-chain.network");
const queryClient = QueryClient.withExtensions(cometClient, setupStakingExtension);
Validators
const bonded = await queryClient.staking.validators("BOND_STATUS_BONDED");
console.info(bonded.validators);
const unbonding = await queryClient.staking.validators("BOND_STATUS_UNBONDING");
const unbonded = await queryClient.staking.validators("BOND_STATUS_UNBONDED");
const singleValidator = await queryClient.staking.validator("cosmosvaloper1...");
console.info(singleValidator.validator);
Delegations
const delegation = await queryClient.staking.delegation(
"cosmos1...",
"cosmosvaloper1...",
);
console.info(delegation.delegationResponse?.balance);
const allDelegations = await queryClient.staking.delegatorDelegations("cosmos1...");
console.info(allDelegations.delegationResponses);
Unbonding and Redelegations
const unbonding = await queryClient.staking.unbondingDelegation(
"cosmos1...",
"cosmosvaloper1...",
);
const allUnbonding = await queryClient.staking.delegatorUnbondingDelegations("cosmos1...");
const redelegations = await queryClient.staking.redelegations(
"cosmos1...",
"cosmosvaloper1source...",
"cosmosvaloper1dest...",
);
Staking Pool and Params
const pool = await queryClient.staking.pool();
console.info(pool.pool?.bondedTokens);
console.info(pool.pool?.notBondedTokens);
const params = await queryClient.staking.params();
console.info(params.params?.unbondingTime);
Available Methods
| Method | Parameters | Paginated |
|---|---|---|
validators | status, paginationKey? | Yes |
validator | validatorAddress | No |
delegation | delegatorAddress, validatorAddress | No |
delegatorDelegations | delegatorAddress, paginationKey? | Yes |
delegatorUnbondingDelegations | delegatorAddress, paginationKey? | Yes |
delegatorValidator | delegatorAddress, validatorAddress | No |
delegatorValidators | delegatorAddress, paginationKey? | Yes |
unbondingDelegation | delegatorAddress, validatorAddress | No |
redelegations | delegatorAddress, srcValidator, dstValidator, paginationKey? | Yes |
validatorDelegations | validatorAddress, paginationKey? | Yes |
validatorUnbondingDelegations | validatorAddress, paginationKey? | Yes |
historicalInfo | height | No |
pool | — | No |
params | — | No |
Next Steps
Distribution & Mint
Staking rewards, commission, and inflation.
Pagination
Navigate large result sets page by page.