import { AminoMsg } from "@cosmjs/amino"; import { AminoConverter } from "@shareledgerjs/amino"; import { Coin } from "@shareledgerjs/types/cosmos/base/v1beta1/coin"; import { VoteOption } from "@shareledgerjs/types/cosmos/gov/v1beta1/gov"; export { VoteOption }; export interface AminoTextProposal extends AminoMsg { readonly type: "cosmos-sdk/TextProposal"; readonly value: { readonly title: string; readonly description: string; }; } export declare function isAminoTextProposal(msg: AminoMsg): msg is AminoTextProposal; /** Supports submitting arbitrary proposal content. */ export interface AminoMsgSubmitProposal extends AminoMsg { readonly type: "cosmos-sdk/MsgSubmitProposal"; readonly value: { readonly content: { readonly type: "cosmos-sdk/TextProposal"; readonly value: { readonly title: string; readonly description: string; }; }; readonly initial_deposit: readonly Coin[]; /** Bech32 account address */ readonly proposer: string; }; } export declare function isAminoMsgSubmitProposal(msg: AminoMsg): msg is AminoMsgSubmitProposal; /** Casts a vote */ export interface AminoMsgVote extends AminoMsg { readonly type: "cosmos-sdk/MsgVote"; readonly value: { readonly proposal_id: string; /** Bech32 account address */ readonly voter: string; readonly option: VoteOption; }; } export declare function isAminoMsgVote(msg: AminoMsg): msg is AminoMsgVote; export interface AminoMsgVoteWeighted extends AminoMsg { readonly type: "cosmos-sdk/MsgVoteWeighted"; readonly value: { readonly proposal_id: string; /** Bech32 account address */ readonly voter: string; readonly options: Array<{ /** * VoteOption as integer from 0 to 4 🤷‍ * * @see https://github.com/cosmos/cosmos-sdk/blob/v0.44.5/x/gov/types/gov.pb.go#L35-L49 */ readonly option: VoteOption; readonly weight: string; }>; }; } export declare function isAminoMsgVoteWeighted(msg: AminoMsg): msg is AminoMsgVoteWeighted; /** Submits a deposit to an existing proposal */ export interface AminoMsgDeposit extends AminoMsg { readonly type: "cosmos-sdk/MsgDeposit"; readonly value: { readonly proposal_id: string; /** Bech32 account address */ readonly depositor: string; readonly amount: readonly Coin[]; }; } export declare function isAminoMsgDeposit(msg: AminoMsg): msg is AminoMsgDeposit; export declare function createGovAminoConverters(): Record;