ClientState: {
    typeUrl: string;
    decode(input: Uint8Array | BinaryReader, length?: number): ClientState;
    encode(message: ClientState, writer?: BinaryWriter): BinaryWriter;
    fromAmino(object: ClientStateAmino): ClientState;
    fromAminoMsg(object: ClientStateAminoMsg): ClientState;
    fromPartial(object: {
        allowUpdateAfterExpiry?: boolean;
        allowUpdateAfterMisbehaviour?: boolean;
        chainId?: string;
        frozenHeight?: {
            revisionHeight?: bigint;
            revisionNumber?: bigint;
        };
        latestHeight?: {
            revisionHeight?: bigint;
            revisionNumber?: bigint;
        };
        maxClockDrift?: {
            nanos?: number;
            seconds?: bigint;
        };
        proofSpecs?: {
            innerSpec?: {
                childOrder?: number[];
                childSize?: number;
                emptyChild?: Uint8Array;
                hash?: HashOp;
                maxPrefixLength?: number;
                minPrefixLength?: number;
            };
            leafSpec?: {
                hash?: HashOp;
                length?: LengthOp;
                prefix?: Uint8Array;
                prehashKey?: HashOp;
                prehashValue?: HashOp;
            };
            maxDepth?: number;
            minDepth?: number;
        }[];
        trustLevel?: {
            denominator?: bigint;
            numerator?: bigint;
        };
        trustingPeriod?: {
            nanos?: number;
            seconds?: bigint;
        };
        unbondingPeriod?: {
            nanos?: number;
            seconds?: bigint;
        };
        upgradePath?: string[];
    }): ClientState;
    fromProtoMsg(message: ClientStateProtoMsg): ClientState;
    toAmino(message: ClientState): ClientStateAmino;
    toAminoMsg(message: ClientState): ClientStateAminoMsg;
    toProto(message: ClientState): Uint8Array;
    toProtoMsg(message: ClientState): ClientStateProtoMsg;
}