import { BinaryReader, BinaryWriter } from "../../../../binary";
import { DeepPartial } from "../../../../helpers";
/**
 * ConfigRequest defines the request structure for the Config gRPC query.
 * @name ConfigRequest
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigRequest
 */
export interface ConfigRequest {
}
export interface ConfigRequestProtoMsg {
    typeUrl: "/cosmos.base.node.v1beta1.ConfigRequest";
    value: Uint8Array;
}
/**
 * ConfigRequest defines the request structure for the Config gRPC query.
 * @name ConfigRequestAmino
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigRequest
 */
export interface ConfigRequestAmino {
}
export interface ConfigRequestAminoMsg {
    type: "cosmos-sdk/ConfigRequest";
    value: ConfigRequestAmino;
}
/**
 * ConfigResponse defines the response structure for the Config gRPC query.
 * @name ConfigResponse
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigResponse
 */
export interface ConfigResponse {
    minimumGasPrice: string;
    pruningKeepRecent: string;
    pruningInterval: string;
    haltHeight: bigint;
}
export interface ConfigResponseProtoMsg {
    typeUrl: "/cosmos.base.node.v1beta1.ConfigResponse";
    value: Uint8Array;
}
/**
 * ConfigResponse defines the response structure for the Config gRPC query.
 * @name ConfigResponseAmino
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigResponse
 */
export interface ConfigResponseAmino {
    minimum_gas_price: string;
    pruning_keep_recent: string;
    pruning_interval: string;
    halt_height: string;
}
export interface ConfigResponseAminoMsg {
    type: "cosmos-sdk/ConfigResponse";
    value: ConfigResponseAmino;
}
/**
 * StateRequest defines the request structure for the status of a node.
 * @name StatusRequest
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusRequest
 */
export interface StatusRequest {
}
export interface StatusRequestProtoMsg {
    typeUrl: "/cosmos.base.node.v1beta1.StatusRequest";
    value: Uint8Array;
}
/**
 * StateRequest defines the request structure for the status of a node.
 * @name StatusRequestAmino
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusRequest
 */
export interface StatusRequestAmino {
}
export interface StatusRequestAminoMsg {
    type: "cosmos-sdk/StatusRequest";
    value: StatusRequestAmino;
}
/**
 * StateResponse defines the response structure for the status of a node.
 * @name StatusResponse
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusResponse
 */
export interface StatusResponse {
    /**
     * earliest block height available in the store
     */
    earliestStoreHeight: bigint;
    /**
     * current block height
     */
    height: bigint;
    /**
     * block height timestamp
     */
    timestamp?: Date;
    /**
     * app hash of the current block
     */
    appHash: Uint8Array;
    /**
     * validator hash provided by the consensus header
     */
    validatorHash: Uint8Array;
}
export interface StatusResponseProtoMsg {
    typeUrl: "/cosmos.base.node.v1beta1.StatusResponse";
    value: Uint8Array;
}
/**
 * StateResponse defines the response structure for the status of a node.
 * @name StatusResponseAmino
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusResponse
 */
export interface StatusResponseAmino {
    /**
     * earliest block height available in the store
     */
    earliest_store_height: string;
    /**
     * current block height
     */
    height: string;
    /**
     * block height timestamp
     */
    timestamp?: string;
    /**
     * app hash of the current block
     */
    app_hash: string;
    /**
     * validator hash provided by the consensus header
     */
    validator_hash: string;
}
export interface StatusResponseAminoMsg {
    type: "cosmos-sdk/StatusResponse";
    value: StatusResponseAmino;
}
/**
 * ConfigRequest defines the request structure for the Config gRPC query.
 * @name ConfigRequest
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigRequest
 */
export declare const ConfigRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ConfigRequest;
    isAmino(o: any): o is ConfigRequestAmino;
    encode(_: ConfigRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ConfigRequest;
    fromPartial(_: DeepPartial<ConfigRequest>): ConfigRequest;
    fromAmino(_: ConfigRequestAmino): ConfigRequest;
    toAmino(_: ConfigRequest): ConfigRequestAmino;
    fromAminoMsg(object: ConfigRequestAminoMsg): ConfigRequest;
    toAminoMsg(message: ConfigRequest): ConfigRequestAminoMsg;
    fromProtoMsg(message: ConfigRequestProtoMsg): ConfigRequest;
    toProto(message: ConfigRequest): Uint8Array;
    toProtoMsg(message: ConfigRequest): ConfigRequestProtoMsg;
    registerTypeUrl(): void;
};
/**
 * ConfigResponse defines the response structure for the Config gRPC query.
 * @name ConfigResponse
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.ConfigResponse
 */
export declare const ConfigResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ConfigResponse;
    isAmino(o: any): o is ConfigResponseAmino;
    encode(message: ConfigResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ConfigResponse;
    fromPartial(object: DeepPartial<ConfigResponse>): ConfigResponse;
    fromAmino(object: ConfigResponseAmino): ConfigResponse;
    toAmino(message: ConfigResponse): ConfigResponseAmino;
    fromAminoMsg(object: ConfigResponseAminoMsg): ConfigResponse;
    toAminoMsg(message: ConfigResponse): ConfigResponseAminoMsg;
    fromProtoMsg(message: ConfigResponseProtoMsg): ConfigResponse;
    toProto(message: ConfigResponse): Uint8Array;
    toProtoMsg(message: ConfigResponse): ConfigResponseProtoMsg;
    registerTypeUrl(): void;
};
/**
 * StateRequest defines the request structure for the status of a node.
 * @name StatusRequest
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusRequest
 */
export declare const StatusRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is StatusRequest;
    isAmino(o: any): o is StatusRequestAmino;
    encode(_: StatusRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): StatusRequest;
    fromPartial(_: DeepPartial<StatusRequest>): StatusRequest;
    fromAmino(_: StatusRequestAmino): StatusRequest;
    toAmino(_: StatusRequest): StatusRequestAmino;
    fromAminoMsg(object: StatusRequestAminoMsg): StatusRequest;
    toAminoMsg(message: StatusRequest): StatusRequestAminoMsg;
    fromProtoMsg(message: StatusRequestProtoMsg): StatusRequest;
    toProto(message: StatusRequest): Uint8Array;
    toProtoMsg(message: StatusRequest): StatusRequestProtoMsg;
    registerTypeUrl(): void;
};
/**
 * StateResponse defines the response structure for the status of a node.
 * @name StatusResponse
 * @package cosmos.base.node.v1beta1
 * @see proto type: cosmos.base.node.v1beta1.StatusResponse
 */
export declare const StatusResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is StatusResponse;
    isAmino(o: any): o is StatusResponseAmino;
    encode(message: StatusResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): StatusResponse;
    fromPartial(object: DeepPartial<StatusResponse>): StatusResponse;
    fromAmino(object: StatusResponseAmino): StatusResponse;
    toAmino(message: StatusResponse): StatusResponseAmino;
    fromAminoMsg(object: StatusResponseAminoMsg): StatusResponse;
    toAminoMsg(message: StatusResponse): StatusResponseAminoMsg;
    fromProtoMsg(message: StatusResponseProtoMsg): StatusResponse;
    toProto(message: StatusResponse): Uint8Array;
    toProtoMsg(message: StatusResponse): StatusResponseProtoMsg;
    registerTypeUrl(): void;
};
