ClientState from Tendermint tracks the current validator set, latest height, and a possible frozen height.

interface ClientStateAmino {
    allow_update_after_expiry?: boolean;
    allow_update_after_misbehaviour?: boolean;
    chain_id?: string;
    frozen_height?: HeightAmino;
    latest_height?: HeightAmino;
    max_clock_drift?: string;
    proof_specs?: ProofSpecAmino[];
    trust_level?: FractionAmino;
    trusting_period?: string;
    unbonding_period?: string;
    upgrade_path?: string[];
}

Properties

allow_update_after_expiry?: boolean

This flag, when set to true, will allow governance to recover a client which has expired

allow_update_after_misbehaviour?: boolean

This flag, when set to true, will allow governance to unfreeze a client whose chain has experienced a misbehaviour event

chain_id?: string
frozen_height?: HeightAmino

Block height when the client was frozen due to a misbehaviour

latest_height?: HeightAmino

Latest height the client was updated to

max_clock_drift?: string

defines how much new (untrusted) header's Time can drift into the future.

proof_specs?: ProofSpecAmino[]

Proof specifications used in verifying counterparty state

trust_level?: FractionAmino
trusting_period?: string

duration of the period since the LastestTimestamp during which the submitted headers are valid for upgrade

unbonding_period?: string

duration of the staking unbonding period

upgrade_path?: string[]

Path at which next upgraded client will be committed. Each element corresponds to the key for a single CommitmentProof in the chained proof. NOTE: ClientState must stored under {upgradePath}/{upgradeHeight}/clientState ConsensusState must be stored under {upgradepath}/{upgradeHeight}/consensusState For SDK chains using the default upgrade module, upgrade_path should be []string{"upgrade", "upgradedIBCState"}`