@firmachain/firma-js
Version:
The Official FirmaChain Javascript SDK written in Typescript
48 lines (47 loc) • 1.56 kB
TypeScript
import { Proposal } from "@kintsugi-tech/cosmjs-types/cosmos/gov/v1/gov";
import { Coin } from "cosmjs-types/cosmos/base/v1beta1/coin";
export declare enum ProposalStatus {
PROPOSAL_STATUS_UNSPECIFIED = 0,
PROPOSAL_STATUS_DEPOSIT_PERIOD = 1,
PROPOSAL_STATUS_VOTING_PERIOD = 2,
PROPOSAL_STATUS_PASSED = 3,
PROPOSAL_STATUS_REJECTED = 4,
PROPOSAL_STATUS_FAILED = 5
}
export interface GovParamType {
min_deposit: Coin[];
max_deposit_period: string;
voting_period: string;
quorum: string;
threshold: string;
veto_threshold: string;
min_initial_deposit_ratio: string;
proposal_cancel_ratio: string;
proposal_cancel_dest: string;
expedited_voting_period: string;
expedited_threshold: string;
expedited_min_deposit: Coin[];
burn_vote_quorum: boolean;
burn_proposal_deposit_prevote: boolean;
burn_vote_veto: boolean;
min_deposit_ratio: string;
}
export interface CurrentVoteInfo {
yes_count: string;
abstain_count: string;
no_count: string;
no_with_veto_count: string;
}
export declare class GovQueryClient {
private readonly axios;
constructor(baseUrl: string);
queryGetCurrentVoteInfo(id: string): Promise<CurrentVoteInfo>;
queryGetParam(): Promise<GovParamType>;
queryGetProposal(id: string): Promise<Proposal>;
queryGetProposalListByStatus(status: ProposalStatus): Promise<Proposal[]>;
queryGetProposalList(pagination?: {
offset?: number;
limit?: number;
reverse?: boolean;
}): Promise<Proposal[]>;
}