@firmachain/firma-js
Version:
The Official FirmaChain Javascript SDK written in Typescript
53 lines (52 loc) • 4.63 kB
TypeScript
import { TxMisc, VotingOption, ProposalStatus, CurrentVoteInfo, GovParamType } from "./firmachain/gov";
import { DeliverTxResponse } from "@cosmjs/stargate";
import { FirmaWalletService } from "./FirmaWalletService";
import { FirmaConfig } from "./FirmaConfig";
import { Plan } from "cosmjs-types/cosmos/upgrade/v1beta1/upgrade";
import { Coin } from "cosmjs-types/cosmos/base/v1beta1/coin";
import { Proposal, Params as GovParams } from "@kintsugi-tech/cosmjs-types/cosmos/gov/v1/gov";
import { Params as StakingParams } from "@kintsugi-tech/cosmjs-types/cosmos/staking/v1beta1/staking";
export declare class FirmaGovService {
private readonly config;
static readonly GOV_AUTHORITY = "firma10d07y265gmmuvt4z0w9aw880jnsr700j53mj8f";
constructor(config: FirmaConfig);
getGasEstimationVote(wallet: FirmaWalletService, proposalId: number, option: VotingOption, txMisc?: TxMisc): Promise<number>;
getGasEstimationDeposit(wallet: FirmaWalletService, proposalId: number, amount: number, txMisc?: TxMisc): Promise<number>;
getGasEstimationSubmitSoftwareUpgradeProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, plan: Plan, metadata?: string, txMisc?: TxMisc): Promise<number>;
getGasEstimationSubmitStakingParamsUpdateProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, params: StakingParams, metadata?: string, txMisc?: TxMisc): Promise<number>;
getGasEstimationSubmitGovParamsUpdateProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, params: GovParams, metadata?: string, txMisc?: TxMisc): Promise<number>;
getGasEstimationSubmitCommunityPoolSpendProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, amountFCT: number, recipient: string, txMisc?: TxMisc): Promise<number>;
getGasEstimationSubmitTextProposal(wallet: FirmaWalletService, title: string, description: string, initialDepositFCT: number, txMisc?: TxMisc): Promise<number>;
getGasEstimationCancelProposal(wallet: FirmaWalletService, proposalId: number, txMisc?: TxMisc): Promise<number>;
private getSignedTxSubmitTextProposal;
private getSignedTxSubmitSoftwareUpgradeProposal;
private getSignedTxSubmitStakingParamsUpdateProposal;
private getSignedTxSubmitGovParamsUpdateProposal;
private getSignedTxSubmitCommunityPoolSpendProposal;
private getSignedTxCancelProposal;
submitSoftwareUpgradeProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, plan: Plan, metadata?: string, txMisc?: TxMisc): Promise<DeliverTxResponse>;
submitStakingParamsUpdateProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, params: StakingParams, metadata?: string, txMisc?: TxMisc): Promise<DeliverTxResponse>;
submitGovParamsUpdateProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, params: GovParams, metadata?: string, txmisc?: TxMisc): Promise<DeliverTxResponse>;
submitCommunityPoolSpendProposal(wallet: FirmaWalletService, title: string, summary: string, initialDepositFCT: number, amountFCT: number, recipient: string, metadata?: string, txMisc?: TxMisc): Promise<DeliverTxResponse>;
submitTextProposal(wallet: FirmaWalletService, title: string, description: string, initialDeposit: number, txMisc?: TxMisc): Promise<DeliverTxResponse>;
submitGenericProposal(wallet: FirmaWalletService, title: string, summary: string, initialDeposit: Coin[], metadata: string, msgs: {
typeUrl?: string | undefined;
value?: Uint8Array | undefined;
}[] | undefined, txMisc?: TxMisc): Promise<DeliverTxResponse>;
cancelProposal(wallet: FirmaWalletService, proposalId: number, txMisc?: TxMisc): Promise<DeliverTxResponse>;
private getSignedTxVote;
vote(wallet: FirmaWalletService, proposalId: number, option: VotingOption, txMisc?: TxMisc): Promise<DeliverTxResponse>;
private getSignedTxDeposit;
deposit(wallet: FirmaWalletService, proposalId: number, amount: number, txMisc?: TxMisc): Promise<DeliverTxResponse>;
getCurrentVoteInfo(id: string): Promise<CurrentVoteInfo>;
getParam(): Promise<GovParamType>;
getParamAsGovParams(): Promise<GovParams>;
getProposal(id: string): Promise<Proposal>;
getProposalListByStatus(status: ProposalStatus): Promise<Proposal[]>;
getProposalList(pagination?: {
offset?: number;
limit?: number;
reverse?: boolean;
}): Promise<Proposal[]>;
getAllProposalList(): Promise<Proposal[]>;
}