import { Coin, CoinAmino } from "../../../cosmos/base/v1beta1/coin"; import { Any, AnyProtoMsg, AnyAmino } from "../../../google/protobuf/any"; import { Timestamp } from "../../../google/protobuf/timestamp"; import { Duration, DurationAmino } from "../../../google/protobuf/duration"; import { BinaryReader, BinaryWriter } from "../../../binary"; export declare const protobufPackage = "govgen.gov.v1beta1"; /** VoteOption enumerates the valid vote options for a given governance proposal. */ export declare enum VoteOption { /** VOTE_OPTION_UNSPECIFIED - VOTE_OPTION_UNSPECIFIED defines a no-op vote option. */ VOTE_OPTION_UNSPECIFIED = 0, /** VOTE_OPTION_YES - VOTE_OPTION_YES defines a yes vote option. */ VOTE_OPTION_YES = 1, /** VOTE_OPTION_ABSTAIN - VOTE_OPTION_ABSTAIN defines an abstain vote option. */ VOTE_OPTION_ABSTAIN = 2, /** VOTE_OPTION_NO - VOTE_OPTION_NO defines a no vote option. */ VOTE_OPTION_NO = 3, /** VOTE_OPTION_NO_WITH_VETO - VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option. */ VOTE_OPTION_NO_WITH_VETO = 4, UNRECOGNIZED = -1 } export declare const VoteOptionAmino: typeof VoteOption; export declare function voteOptionFromJSON(object: any): VoteOption; export declare function voteOptionToJSON(object: VoteOption): string; /** ProposalStatus enumerates the valid statuses of a proposal. */ export declare enum ProposalStatus { /** PROPOSAL_STATUS_UNSPECIFIED - PROPOSAL_STATUS_UNSPECIFIED defines the default propopsal status. */ PROPOSAL_STATUS_UNSPECIFIED = 0, /** * PROPOSAL_STATUS_DEPOSIT_PERIOD - PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit * period. */ PROPOSAL_STATUS_DEPOSIT_PERIOD = 1, /** * PROPOSAL_STATUS_VOTING_PERIOD - PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting * period. */ PROPOSAL_STATUS_VOTING_PERIOD = 2, /** * PROPOSAL_STATUS_PASSED - PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has * passed. */ PROPOSAL_STATUS_PASSED = 3, /** * PROPOSAL_STATUS_REJECTED - PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has * been rejected. */ PROPOSAL_STATUS_REJECTED = 4, /** * PROPOSAL_STATUS_FAILED - PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has * failed. */ PROPOSAL_STATUS_FAILED = 5, UNRECOGNIZED = -1 } export declare const ProposalStatusAmino: typeof ProposalStatus; export declare function proposalStatusFromJSON(object: any): ProposalStatus; export declare function proposalStatusToJSON(object: ProposalStatus): string; /** * WeightedVoteOption defines a unit of vote for vote split. * * Since: cosmos-sdk 0.43 */ export interface WeightedVoteOption { option: VoteOption; weight: string; } export interface WeightedVoteOptionProtoMsg { typeUrl: "/govgen.gov.v1beta1.WeightedVoteOption"; value: Uint8Array; } /** * WeightedVoteOption defines a unit of vote for vote split. * * Since: cosmos-sdk 0.43 */ export interface WeightedVoteOptionAmino { option?: VoteOption; weight?: string; } export interface WeightedVoteOptionAminoMsg { type: "/govgen.gov.v1beta1.WeightedVoteOption"; value: WeightedVoteOptionAmino; } /** * TextProposal defines a standard text proposal whose changes need to be * manually updated in case of approval. */ export interface TextProposal { title: string; description: string; } export interface TextProposalProtoMsg { typeUrl: "/govgen.gov.v1beta1.TextProposal"; value: Uint8Array; } /** * TextProposal defines a standard text proposal whose changes need to be * manually updated in case of approval. */ export interface TextProposalAmino { title?: string; description?: string; } export interface TextProposalAminoMsg { type: "cosmos-sdk/TextProposal"; value: TextProposalAmino; } /** * Deposit defines an amount deposited by an account address to an active * proposal. */ export interface Deposit { proposalId: bigint; depositor: string; amount: Coin[]; } export interface DepositProtoMsg { typeUrl: "/govgen.gov.v1beta1.Deposit"; value: Uint8Array; } /** * Deposit defines an amount deposited by an account address to an active * proposal. */ export interface DepositAmino { proposal_id?: string; depositor?: string; amount?: CoinAmino[]; } export interface DepositAminoMsg { type: "/govgen.gov.v1beta1.Deposit"; value: DepositAmino; } /** Proposal defines the core field members of a governance proposal. */ export interface Proposal { proposalId: bigint; content?: TextProposal | Any | undefined; status: ProposalStatus; finalTallyResult: TallyResult | undefined; submitTime: Timestamp | undefined; depositEndTime: Timestamp | undefined; totalDeposit: Coin[]; votingStartTime: Timestamp | undefined; votingEndTime: Timestamp | undefined; } export interface ProposalProtoMsg { typeUrl: "/govgen.gov.v1beta1.Proposal"; value: Uint8Array; } export type ProposalEncoded = Omit & { content?: TextProposalProtoMsg | AnyProtoMsg | undefined; }; /** Proposal defines the core field members of a governance proposal. */ export interface ProposalAmino { proposal_id?: string; content?: AnyAmino | undefined; status?: ProposalStatus; final_tally_result?: TallyResultAmino | undefined; submit_time?: string | undefined; deposit_end_time?: string | undefined; total_deposit?: CoinAmino[]; voting_start_time?: string | undefined; voting_end_time?: string | undefined; } export interface ProposalAminoMsg { type: "/govgen.gov.v1beta1.Proposal"; value: ProposalAmino; } /** TallyResult defines a standard tally for a governance proposal. */ export interface TallyResult { yes: string; abstain: string; no: string; noWithVeto: string; } export interface TallyResultProtoMsg { typeUrl: "/govgen.gov.v1beta1.TallyResult"; value: Uint8Array; } /** TallyResult defines a standard tally for a governance proposal. */ export interface TallyResultAmino { yes?: string; abstain?: string; no?: string; no_with_veto?: string; } export interface TallyResultAminoMsg { type: "/govgen.gov.v1beta1.TallyResult"; value: TallyResultAmino; } /** * Vote defines a vote on a governance proposal. * A Vote consists of a proposal ID, the voter, and the vote option. */ export interface Vote { proposalId: bigint; voter: string; /** * Deprecated: Prefer to use `options` instead. This field is set in queries * if and only if `len(options) == 1` and that option has weight 1. In all * other cases, this field will default to VOTE_OPTION_UNSPECIFIED. */ /** @deprecated */ option: VoteOption; /** Since: cosmos-sdk 0.43 */ options: WeightedVoteOption[]; } export interface VoteProtoMsg { typeUrl: "/govgen.gov.v1beta1.Vote"; value: Uint8Array; } /** * Vote defines a vote on a governance proposal. * A Vote consists of a proposal ID, the voter, and the vote option. */ export interface VoteAmino { proposal_id?: string; voter?: string; /** * Deprecated: Prefer to use `options` instead. This field is set in queries * if and only if `len(options) == 1` and that option has weight 1. In all * other cases, this field will default to VOTE_OPTION_UNSPECIFIED. */ /** @deprecated */ option?: VoteOption; /** Since: cosmos-sdk 0.43 */ options?: WeightedVoteOptionAmino[]; } export interface VoteAminoMsg { type: "/govgen.gov.v1beta1.Vote"; value: VoteAmino; } /** DepositParams defines the params for deposits on governance proposals. */ export interface DepositParams { /** Minimum deposit for a proposal to enter voting period. */ minDeposit: Coin[]; /** * Maximum period for GOVGEN holders to deposit on a proposal. Initial value: 2 * months. */ maxDepositPeriod: Duration | undefined; } export interface DepositParamsProtoMsg { typeUrl: "/govgen.gov.v1beta1.DepositParams"; value: Uint8Array; } /** DepositParams defines the params for deposits on governance proposals. */ export interface DepositParamsAmino { /** Minimum deposit for a proposal to enter voting period. */ min_deposit?: CoinAmino[]; /** * Maximum period for GOVGEN holders to deposit on a proposal. Initial value: 2 * months. */ max_deposit_period?: DurationAmino | undefined; } export interface DepositParamsAminoMsg { type: "/govgen.gov.v1beta1.DepositParams"; value: DepositParamsAmino; } /** VotingParams defines the params for voting on governance proposals. */ export interface VotingParams { /** Length of the voting period by default. */ votingPeriodDefault: Duration | undefined; /** Length of the voting period for parameter change proposal. */ votingPeriodParameterChange: Duration | undefined; /** * Length of the voting period for software upgrade and cancel software * upgrade proposal. */ votingPeriodSoftwareUpgrade: Duration | undefined; /** Length of the voting period for text proposal. */ votingPeriodText: Duration | undefined; } export interface VotingParamsProtoMsg { typeUrl: "/govgen.gov.v1beta1.VotingParams"; value: Uint8Array; } /** VotingParams defines the params for voting on governance proposals. */ export interface VotingParamsAmino { /** Length of the voting period by default. */ voting_period_default?: DurationAmino | undefined; /** Length of the voting period for parameter change proposal. */ voting_period_parameter_change?: DurationAmino | undefined; /** * Length of the voting period for software upgrade and cancel software * upgrade proposal. */ voting_period_software_upgrade?: DurationAmino | undefined; /** Length of the voting period for text proposal. */ voting_period_text?: DurationAmino | undefined; } export interface VotingParamsAminoMsg { type: "/govgen.gov.v1beta1.VotingParams"; value: VotingParamsAmino; } /** TallyParams defines the params for tallying votes on governance proposals. */ export interface TallyParams { /** * Minimum percentage of total stake needed to vote for a result to be * considered valid. */ quorum: Uint8Array; /** Minimum proportion of Yes votes for proposal to pass. Default value: 0.5. */ threshold: Uint8Array; /** * Minimum value of Veto votes to Total votes ratio for proposal to be * vetoed. Default value: 1/3. */ vetoThreshold: Uint8Array; } export interface TallyParamsProtoMsg { typeUrl: "/govgen.gov.v1beta1.TallyParams"; value: Uint8Array; } /** TallyParams defines the params for tallying votes on governance proposals. */ export interface TallyParamsAmino { /** * Minimum percentage of total stake needed to vote for a result to be * considered valid. */ quorum?: string; /** Minimum proportion of Yes votes for proposal to pass. Default value: 0.5. */ threshold?: string; /** * Minimum value of Veto votes to Total votes ratio for proposal to be * vetoed. Default value: 1/3. */ veto_threshold?: string; } export interface TallyParamsAminoMsg { type: "/govgen.gov.v1beta1.TallyParams"; value: TallyParamsAmino; } export declare const WeightedVoteOption: { typeUrl: string; is(o: any): o is WeightedVoteOption; isAmino(o: any): o is WeightedVoteOptionAmino; encode(message: WeightedVoteOption, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): WeightedVoteOption; fromJSON(object: any): WeightedVoteOption; toJSON(message: WeightedVoteOption): unknown; fromPartial(object: Partial): WeightedVoteOption; fromAmino(object: WeightedVoteOptionAmino): WeightedVoteOption; toAmino(message: WeightedVoteOption): WeightedVoteOptionAmino; fromAminoMsg(object: WeightedVoteOptionAminoMsg): WeightedVoteOption; fromProtoMsg(message: WeightedVoteOptionProtoMsg): WeightedVoteOption; toProto(message: WeightedVoteOption): Uint8Array; toProtoMsg(message: WeightedVoteOption): WeightedVoteOptionProtoMsg; }; export declare const TextProposal: { typeUrl: string; aminoType: string; is(o: any): o is TextProposal; isAmino(o: any): o is TextProposalAmino; encode(message: TextProposal, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): TextProposal; fromJSON(object: any): TextProposal; toJSON(message: TextProposal): unknown; fromPartial(object: Partial): TextProposal; fromAmino(object: TextProposalAmino): TextProposal; toAmino(message: TextProposal): TextProposalAmino; fromAminoMsg(object: TextProposalAminoMsg): TextProposal; toAminoMsg(message: TextProposal): TextProposalAminoMsg; fromProtoMsg(message: TextProposalProtoMsg): TextProposal; toProto(message: TextProposal): Uint8Array; toProtoMsg(message: TextProposal): TextProposalProtoMsg; }; export declare const Deposit: { typeUrl: string; is(o: any): o is Deposit; isAmino(o: any): o is DepositAmino; encode(message: Deposit, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Deposit; fromJSON(object: any): Deposit; toJSON(message: Deposit): unknown; fromPartial(object: Partial): Deposit; fromAmino(object: DepositAmino): Deposit; toAmino(message: Deposit): DepositAmino; fromAminoMsg(object: DepositAminoMsg): Deposit; fromProtoMsg(message: DepositProtoMsg): Deposit; toProto(message: Deposit): Uint8Array; toProtoMsg(message: Deposit): DepositProtoMsg; }; export declare const Proposal: { typeUrl: string; is(o: any): o is Proposal; isAmino(o: any): o is ProposalAmino; encode(message: Proposal, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Proposal; fromJSON(object: any): Proposal; toJSON(message: Proposal): unknown; fromPartial(object: Partial): Proposal; fromAmino(object: ProposalAmino): Proposal; toAmino(message: Proposal): ProposalAmino; fromAminoMsg(object: ProposalAminoMsg): Proposal; fromProtoMsg(message: ProposalProtoMsg): Proposal; toProto(message: Proposal): Uint8Array; toProtoMsg(message: Proposal): ProposalProtoMsg; }; export declare const TallyResult: { typeUrl: string; is(o: any): o is TallyResult; isAmino(o: any): o is TallyResultAmino; encode(message: TallyResult, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): TallyResult; fromJSON(object: any): TallyResult; toJSON(message: TallyResult): unknown; fromPartial(object: Partial): TallyResult; fromAmino(object: TallyResultAmino): TallyResult; toAmino(message: TallyResult): TallyResultAmino; fromAminoMsg(object: TallyResultAminoMsg): TallyResult; fromProtoMsg(message: TallyResultProtoMsg): TallyResult; toProto(message: TallyResult): Uint8Array; toProtoMsg(message: TallyResult): TallyResultProtoMsg; }; export declare const Vote: { typeUrl: string; is(o: any): o is Vote; isAmino(o: any): o is VoteAmino; encode(message: Vote, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Vote; fromJSON(object: any): Vote; toJSON(message: Vote): unknown; fromPartial(object: Partial): Vote; fromAmino(object: VoteAmino): Vote; toAmino(message: Vote): VoteAmino; fromAminoMsg(object: VoteAminoMsg): Vote; fromProtoMsg(message: VoteProtoMsg): Vote; toProto(message: Vote): Uint8Array; toProtoMsg(message: Vote): VoteProtoMsg; }; export declare const DepositParams: { typeUrl: string; is(o: any): o is DepositParams; isAmino(o: any): o is DepositParamsAmino; encode(message: DepositParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): DepositParams; fromJSON(object: any): DepositParams; toJSON(message: DepositParams): unknown; fromPartial(object: Partial): DepositParams; fromAmino(object: DepositParamsAmino): DepositParams; toAmino(message: DepositParams): DepositParamsAmino; fromAminoMsg(object: DepositParamsAminoMsg): DepositParams; fromProtoMsg(message: DepositParamsProtoMsg): DepositParams; toProto(message: DepositParams): Uint8Array; toProtoMsg(message: DepositParams): DepositParamsProtoMsg; }; export declare const VotingParams: { typeUrl: string; is(o: any): o is VotingParams; isAmino(o: any): o is VotingParamsAmino; encode(message: VotingParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): VotingParams; fromJSON(object: any): VotingParams; toJSON(message: VotingParams): unknown; fromPartial(object: Partial): VotingParams; fromAmino(object: VotingParamsAmino): VotingParams; toAmino(message: VotingParams): VotingParamsAmino; fromAminoMsg(object: VotingParamsAminoMsg): VotingParams; fromProtoMsg(message: VotingParamsProtoMsg): VotingParams; toProto(message: VotingParams): Uint8Array; toProtoMsg(message: VotingParams): VotingParamsProtoMsg; }; export declare const TallyParams: { typeUrl: string; is(o: any): o is TallyParams; isAmino(o: any): o is TallyParamsAmino; encode(message: TallyParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): TallyParams; fromJSON(object: any): TallyParams; toJSON(message: TallyParams): unknown; fromPartial(object: Partial): TallyParams; fromAmino(object: TallyParamsAmino): TallyParams; toAmino(message: TallyParams): TallyParamsAmino; fromAminoMsg(object: TallyParamsAminoMsg): TallyParams; fromProtoMsg(message: TallyParamsProtoMsg): TallyParams; toProto(message: TallyParams): Uint8Array; toProtoMsg(message: TallyParams): TallyParamsProtoMsg; };