import _m0 from "protobufjs/minimal"; import { Any } from "../../../google/protobuf/any"; import { Coin, DecCoin } from "../../../cosmos/base/v1beta1/coin"; import { Duration } from "../../../google/protobuf/duration"; export declare const protobufPackage = "initia.mstaking.v1"; /** BondStatus is the status of a validator. */ export declare enum BondStatus { /** BOND_STATUS_UNSPECIFIED - UNSPECIFIED defines an invalid validator status. */ BOND_STATUS_UNSPECIFIED = 0, /** BOND_STATUS_UNBONDED - UNBONDED defines a validator that is not bonded. */ BOND_STATUS_UNBONDED = 1, /** BOND_STATUS_UNBONDING - UNBONDING defines a validator that is unbonding. */ BOND_STATUS_UNBONDING = 2, /** BOND_STATUS_BONDED - BONDED defines a validator that is bonded. */ BOND_STATUS_BONDED = 3, UNRECOGNIZED = -1 } export declare function bondStatusFromJSON(object: any): BondStatus; export declare function bondStatusToJSON(object: BondStatus): string; /** Infraction indicates the infraction a validator committed. */ export declare enum Infraction { /** INFRACTION_UNSPECIFIED - UNSPECIFIED defines an empty infraction. */ INFRACTION_UNSPECIFIED = 0, /** INFRACTION_DOUBLE_SIGN - DOUBLE_SIGN defines a validator that double-signs a block. */ INFRACTION_DOUBLE_SIGN = 1, /** INFRACTION_DOWNTIME - DOWNTIME defines a validator that missed signing too many blocks. */ INFRACTION_DOWNTIME = 2, UNRECOGNIZED = -1 } export declare function infractionFromJSON(object: any): Infraction; export declare function infractionToJSON(object: Infraction): string; /** * CommissionRates defines the initial commission rates to be used for creating * a validator. */ export interface CommissionRates { /** rate is the commission rate charged to delegators, as a fraction. */ rate: string; /** max_rate defines the maximum commission rate which validator can ever charge, as a fraction. */ maxRate: string; /** max_change_rate defines the maximum daily increase of the validator commission, as a fraction. */ maxChangeRate: string; } /** Commission defines commission parameters for a given validator. */ export interface Commission { /** commission_rates defines the initial commission rates to be used for creating a validator. */ commissionRates: CommissionRates | undefined; /** update_time is the last time the commission rate was changed. */ updateTime: Date | undefined; } /** Description defines a validator description. */ export interface Description { /** moniker defines a human-readable name for the validator. */ moniker: string; /** identity defines an optional identity signature (ex. UPort or Keybase). */ identity: string; /** website defines an optional website link. */ website: string; /** security_contact defines an optional email for security contact. */ securityContact: string; /** details define other optional details. */ details: string; } /** * Validator defines a validator, together with the total amount of the * Validator's bond shares and their exchange rate to coins. Slashing results in * a decrease in the exchange rate, allowing correct calculation of future * undelegations without iterating over delegators. When coins are delegated to * this validator, the validator is credited with a delegation whose number of * bond shares is based on the amount of coins delegated divided by the current * exchange rate. Voting power can be calculated as total bonded shares * multiplied by exchange rate. */ export interface Validator { /** operator_address defines the address of the validator's operator; bech encoded in JSON. */ operatorAddress: string; /** consensus_pubkey is the consensus public key of the validator, as a Protobuf Any. */ consensusPubkey: Any | undefined; /** jailed defined whether the validator has been jailed from bonded status or not. */ jailed: boolean; /** status is the validator status (bonded/unbonding/unbonded). */ status: BondStatus; /** tokens define the delegated tokens (incl. self-delegation). */ tokens: Coin[]; /** delegator_shares defines total shares issued to a validator's delegators. */ delegatorShares: DecCoin[]; /** description defines the description terms for the validator. */ description: Description | undefined; /** unbonding_height defines, if unbonding, the height at which this validator has begun unbonding. */ unbondingHeight: string; /** unbonding_time defines, if unbonding, the min time for the validator to complete unbonding. */ unbondingTime: Date | undefined; /** commission defines the commission parameters. */ commission: Commission | undefined; /** voting_powers defines the voting powers for each bond denoms */ votingPowers: Coin[]; /** voting_power defines the sum of voting powers */ votingPower: string; /** strictly positive if this validator's unbonding has been stopped by external modules */ unbondingOnHoldRefCount: string; /** unbonding id, uniquely identifying an unbonding of this validator */ unbondingId: string; } /** ValAddresses defines a repeated set of validator addresses. */ export interface ValAddresses { addresses: string[]; } /** * DVPair is struct that just has a delegator-validator pair with no other data. * It is intended to be used as a marshalable pointer. For example, a DVPair can * be used to construct the key to getting an UnbondingDelegation from state. */ export interface DVPair { delegatorAddress: string; validatorAddress: string; } /** DVPairs defines an array of DVPair objects. */ export interface DVPairs { pairs: DVPair[]; } /** * DVVTriplet is struct that just has a delegator-validator-validator triplet * with no other data. It is intended to be used as a marshalable pointer. For * example, a DVVTriplet can be used to construct the key to getting a * Redelegation from state. */ export interface DVVTriplet { delegatorAddress: string; validatorSrcAddress: string; validatorDstAddress: string; } /** DVVTriplets defines an array of DVVTriplet objects. */ export interface DVVTriplets { triplets: DVVTriplet[]; } /** * Delegation represents the bond with tokens held by an account. It is * owned by one delegator, and is associated with the voting power of one * validator. */ export interface Delegation { /** delegator_address is the bech32-encoded address of the delegator. */ delegatorAddress: string; /** validator_address is the bech32-encoded address of the validator. */ validatorAddress: string; /** shares define the delegation shares received. */ shares: DecCoin[]; } /** * UnbondingDelegation stores all of a single delegator's unbonding bonds * for a single validator in an time-ordered list. */ export interface UnbondingDelegation { /** delegator_address is the bech32-encoded address of the delegator. */ delegatorAddress: string; /** validator_address is the bech32-encoded address of the validator. */ validatorAddress: string; /** entries are the unbonding delegation entries. */ entries: UnbondingDelegationEntry[]; } /** UnbondingDelegationEntry defines an unbonding object with relevant metadata. */ export interface UnbondingDelegationEntry { /** creation_height is the height which the unbonding took place. */ creationHeight: string; /** completion_time is the unix time for unbonding completion. */ completionTime: Date | undefined; /** initial_balance defines the tokens initially scheduled to receive at completion. */ initialBalance: Coin[]; /** balance defines the tokens to receive at completion. */ balance: Coin[]; /** Incrementing id that uniquely identifies this entry */ unbondingId: string; /** Strictly positive if this entry's unbonding has been stopped by external modules */ unbondingOnHoldRefCount: string; } /** RedelegationEntry defines a redelegation object with relevant metadata. */ export interface RedelegationEntry { /** creation_height defines the height which the redelegation took place. */ creationHeight: string; /** completion_time defines the unix time for redelegation completion. */ completionTime: Date | undefined; /** initial_balance defines the initial balance when redelegation started. */ initialBalance: Coin[]; /** shares_dst is the amount of destination-validator shares created by redelegation. */ sharesDst: DecCoin[]; /** Incrementing id that uniquely identifies this entry */ unbondingId: string; /** Strictly positive if this entry's unbonding has been stopped by external modules */ unbondingOnHoldRefCount: string; } /** * Redelegation contains the list of a particular delegator's redelegating bonds * from a particular source validator to a particular destination validator. */ export interface Redelegation { /** delegator_address is the bech32-encoded address of the delegator. */ delegatorAddress: string; /** validator_src_address is the validator redelegation source operator address. */ validatorSrcAddress: string; /** validator_dst_address is the validator redelegation destination operator address. */ validatorDstAddress: string; /** entries are the redelegation entries. */ entries: RedelegationEntry[]; } /** Params defines the parameters for the staking module. */ export interface Params { /** unbonding_time is the time duration of unbonding. */ unbondingTime: Duration | undefined; /** max_validators is the maximum number of validators. */ maxValidators: number; /** max_entries is the max entries for either unbonding delegation or redelegation (per pair/trio). */ maxEntries: number; /** historical_entries is the number of historical entries to persist. */ historicalEntries: number; /** bond_denoms defines the bondable coin denomination. */ bondDenoms: string[]; /** minimum voting power is the chain-wide minimum voting power to get into power update whitelist */ minVotingPower: string; /** min_commission_rate is the chain-wide minimum commission rate that a validator can charge their delegators */ minCommissionRate: string; } /** * DelegationResponse is equivalent to Delegation except that it contains a * balance in addition to shares which is more suitable for client responses. */ export interface DelegationResponse { delegation: Delegation | undefined; balance: Coin[]; } /** * RedelegationEntryResponse is equivalent to a RedelegationEntry except that it * contains a balance in addition to shares which is more suitable for client * responses. */ export interface RedelegationEntryResponse { redelegationEntry: RedelegationEntry | undefined; balance: Coin[]; } /** * RedelegationResponse is equivalent to a Redelegation except that its entries * contain a balance in addition to shares which is more suitable for client * responses. */ export interface RedelegationResponse { redelegation: Redelegation | undefined; entries: RedelegationEntryResponse[]; } /** * Pool is used for tracking bonded and not-bonded token supply of the bond * denomination. */ export interface Pool { notBondedTokens: Coin[]; bondedTokens: Coin[]; votingPowerWeights: DecCoin[]; } export declare const CommissionRates: { encode(message: CommissionRates, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CommissionRates; fromJSON(object: any): CommissionRates; toJSON(message: CommissionRates): unknown; fromPartial, never>>(object: I): CommissionRates; }; export declare const Commission: { encode(message: Commission, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Commission; fromJSON(object: any): Commission; toJSON(message: Commission): unknown; fromPartial, never>) | undefined; updateTime?: Date | undefined; } & Record, never>>(object: I): Commission; }; export declare const Description: { encode(message: Description, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Description; fromJSON(object: any): Description; toJSON(message: Description): unknown; fromPartial, never>>(object: I): Description; }; export declare const Validator: { encode(message: Validator, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Validator; fromJSON(object: any): Validator; toJSON(message: Validator): unknown; fromPartial, never>) | undefined; jailed?: boolean | undefined; status?: BondStatus | undefined; tokens?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; delegatorShares?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; description?: ({ moniker?: string | undefined; identity?: string | undefined; website?: string | undefined; securityContact?: string | undefined; details?: string | undefined; } & { moniker?: string | undefined; identity?: string | undefined; website?: string | undefined; securityContact?: string | undefined; details?: string | undefined; } & Record, never>) | undefined; unbondingHeight?: string | undefined; unbondingTime?: Date | undefined; commission?: ({ commissionRates?: { rate?: string | undefined; maxRate?: string | undefined; maxChangeRate?: string | undefined; } | undefined; updateTime?: Date | undefined; } & { commissionRates?: ({ rate?: string | undefined; maxRate?: string | undefined; maxChangeRate?: string | undefined; } & { rate?: string | undefined; maxRate?: string | undefined; maxChangeRate?: string | undefined; } & Record, never>) | undefined; updateTime?: Date | undefined; } & Record, never>) | undefined; votingPowers?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; votingPower?: string | undefined; unbondingOnHoldRefCount?: string | undefined; unbondingId?: string | undefined; } & Record, never>>(object: I): Validator; }; export declare const ValAddresses: { encode(message: ValAddresses, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ValAddresses; fromJSON(object: any): ValAddresses; toJSON(message: ValAddresses): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): ValAddresses; }; export declare const DVPair: { encode(message: DVPair, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DVPair; fromJSON(object: any): DVPair; toJSON(message: DVPair): unknown; fromPartial, never>>(object: I): DVPair; }; export declare const DVPairs: { encode(message: DVPairs, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DVPairs; fromJSON(object: any): DVPairs; toJSON(message: DVPairs): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): DVPairs; }; export declare const DVVTriplet: { encode(message: DVVTriplet, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DVVTriplet; fromJSON(object: any): DVVTriplet; toJSON(message: DVVTriplet): unknown; fromPartial, never>>(object: I): DVVTriplet; }; export declare const DVVTriplets: { encode(message: DVVTriplets, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DVVTriplets; fromJSON(object: any): DVVTriplets; toJSON(message: DVVTriplets): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): DVVTriplets; }; export declare const Delegation: { encode(message: Delegation, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Delegation; fromJSON(object: any): Delegation; toJSON(message: Delegation): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Delegation; }; export declare const UnbondingDelegation: { encode(message: UnbondingDelegation, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UnbondingDelegation; fromJSON(object: any): UnbondingDelegation; toJSON(message: UnbondingDelegation): unknown; fromPartial, never>)[] & Record, never>) | undefined; balance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): UnbondingDelegation; }; export declare const UnbondingDelegationEntry: { encode(message: UnbondingDelegationEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UnbondingDelegationEntry; fromJSON(object: any): UnbondingDelegationEntry; toJSON(message: UnbondingDelegationEntry): unknown; fromPartial, never>)[] & Record, never>) | undefined; balance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>>(object: I): UnbondingDelegationEntry; }; export declare const RedelegationEntry: { encode(message: RedelegationEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedelegationEntry; fromJSON(object: any): RedelegationEntry; toJSON(message: RedelegationEntry): unknown; fromPartial, never>)[] & Record, never>) | undefined; sharesDst?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>>(object: I): RedelegationEntry; }; export declare const Redelegation: { encode(message: Redelegation, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Redelegation; fromJSON(object: any): Redelegation; toJSON(message: Redelegation): unknown; fromPartial, never>)[] & Record, never>) | undefined; sharesDst?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Redelegation; }; export declare const Params: { encode(message: Params, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Params; fromJSON(object: any): Params; toJSON(message: Params): unknown; fromPartial, never>) | undefined; maxValidators?: number | undefined; maxEntries?: number | undefined; historicalEntries?: number | undefined; bondDenoms?: (string[] & string[] & Record, never>) | undefined; minVotingPower?: string | undefined; minCommissionRate?: string | undefined; } & Record, never>>(object: I): Params; }; export declare const DelegationResponse: { encode(message: DelegationResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DelegationResponse; fromJSON(object: any): DelegationResponse; toJSON(message: DelegationResponse): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; balance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): DelegationResponse; }; export declare const RedelegationEntryResponse: { encode(message: RedelegationEntryResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedelegationEntryResponse; fromJSON(object: any): RedelegationEntryResponse; toJSON(message: RedelegationEntryResponse): unknown; fromPartial, never>)[] & Record, never>) | undefined; sharesDst?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>) | undefined; balance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): RedelegationEntryResponse; }; export declare const RedelegationResponse: { encode(message: RedelegationResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedelegationResponse; fromJSON(object: any): RedelegationResponse; toJSON(message: RedelegationResponse): unknown; fromPartial, never>)[] & Record, never>) | undefined; sharesDst?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; entries?: ({ redelegationEntry?: { creationHeight?: string | undefined; completionTime?: Date | undefined; initialBalance?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; sharesDst?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } | undefined; balance?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; }[] & ({ redelegationEntry?: { creationHeight?: string | undefined; completionTime?: Date | undefined; initialBalance?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; sharesDst?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } | undefined; balance?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; } & { redelegationEntry?: ({ creationHeight?: string | undefined; completionTime?: Date | undefined; initialBalance?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; sharesDst?: { denom?: string | undefined; amount?: string | undefined; }[] | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & { creationHeight?: string | undefined; completionTime?: Date | undefined; initialBalance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; sharesDst?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; unbondingId?: string | undefined; unbondingOnHoldRefCount?: string | undefined; } & Record, never>) | undefined; balance?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): RedelegationResponse; }; export declare const Pool: { encode(message: Pool, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Pool; fromJSON(object: any): Pool; toJSON(message: Pool): unknown; fromPartial, never>)[] & Record, never>) | undefined; bondedTokens?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; votingPowerWeights?: ({ denom?: string | undefined; amount?: string | undefined; }[] & ({ denom?: string | undefined; amount?: string | undefined; } & { denom?: string | undefined; amount?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Pool; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};