import { BinaryReader, BinaryWriter } from "../../../../binary";
/** ChainIDRequest is request type for the Service/ChainID RPC method. */
export interface ChainIDRequest {
}
export interface ChainIDRequestProtoMsg {
    typeUrl: "/band.base.node.v1.ChainIDRequest";
    value: Uint8Array;
}
/** ChainIDRequest is request type for the Service/ChainID RPC method. */
export interface ChainIDRequestAmino {
}
export interface ChainIDRequestAminoMsg {
    type: "/band.base.node.v1.ChainIDRequest";
    value: ChainIDRequestAmino;
}
/** ChainIDRequest is request type for the Service/ChainID RPC method. */
export interface ChainIDRequestSDKType {
}
/** ChainIDResponse is response type for the Service/ChainID RPC method. */
export interface ChainIDResponse {
    chainId: string;
}
export interface ChainIDResponseProtoMsg {
    typeUrl: "/band.base.node.v1.ChainIDResponse";
    value: Uint8Array;
}
/** ChainIDResponse is response type for the Service/ChainID RPC method. */
export interface ChainIDResponseAmino {
    chain_id?: string;
}
export interface ChainIDResponseAminoMsg {
    type: "/band.base.node.v1.ChainIDResponse";
    value: ChainIDResponseAmino;
}
/** ChainIDResponse is response type for the Service/ChainID RPC method. */
export interface ChainIDResponseSDKType {
    chain_id: string;
}
/** EVMValidatorsRequest is request type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsRequest {
}
export interface EVMValidatorsRequestProtoMsg {
    typeUrl: "/band.base.node.v1.EVMValidatorsRequest";
    value: Uint8Array;
}
/** EVMValidatorsRequest is request type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsRequestAmino {
}
export interface EVMValidatorsRequestAminoMsg {
    type: "/band.base.node.v1.EVMValidatorsRequest";
    value: EVMValidatorsRequestAmino;
}
/** EVMValidatorsRequest is request type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsRequestSDKType {
}
/** EVMValidatorsResponse is response type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsResponse {
    /** BlockHeight is the latest block height */
    blockHeight: bigint;
    /** Validators is list of validator's address and voting power */
    validators: ValidatorMinimal[];
}
export interface EVMValidatorsResponseProtoMsg {
    typeUrl: "/band.base.node.v1.EVMValidatorsResponse";
    value: Uint8Array;
}
/** EVMValidatorsResponse is response type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsResponseAmino {
    /** BlockHeight is the latest block height */
    block_height?: string;
    /** Validators is list of validator's address and voting power */
    validators?: ValidatorMinimalAmino[];
}
export interface EVMValidatorsResponseAminoMsg {
    type: "/band.base.node.v1.EVMValidatorsResponse";
    value: EVMValidatorsResponseAmino;
}
/** EVMValidatorsResponse is response type for the Service/EVMValidators RPC method. */
export interface EVMValidatorsResponseSDKType {
    block_height: bigint;
    validators: ValidatorMinimalSDKType[];
}
/** ValidatorMinimal is the data structure for storing validator's address and voting power */
export interface ValidatorMinimal {
    address: string;
    votingPower: bigint;
}
export interface ValidatorMinimalProtoMsg {
    typeUrl: "/band.base.node.v1.ValidatorMinimal";
    value: Uint8Array;
}
/** ValidatorMinimal is the data structure for storing validator's address and voting power */
export interface ValidatorMinimalAmino {
    address?: string;
    voting_power?: string;
}
export interface ValidatorMinimalAminoMsg {
    type: "/band.base.node.v1.ValidatorMinimal";
    value: ValidatorMinimalAmino;
}
/** ValidatorMinimal is the data structure for storing validator's address and voting power */
export interface ValidatorMinimalSDKType {
    address: string;
    voting_power: bigint;
}
export declare const ChainIDRequest: {
    typeUrl: string;
    encode(_: ChainIDRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ChainIDRequest;
    fromPartial(_: Partial<ChainIDRequest>): ChainIDRequest;
    fromAmino(_: ChainIDRequestAmino): ChainIDRequest;
    toAmino(_: ChainIDRequest): ChainIDRequestAmino;
    fromAminoMsg(object: ChainIDRequestAminoMsg): ChainIDRequest;
    fromProtoMsg(message: ChainIDRequestProtoMsg): ChainIDRequest;
    toProto(message: ChainIDRequest): Uint8Array;
    toProtoMsg(message: ChainIDRequest): ChainIDRequestProtoMsg;
};
export declare const ChainIDResponse: {
    typeUrl: string;
    encode(message: ChainIDResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ChainIDResponse;
    fromPartial(object: Partial<ChainIDResponse>): ChainIDResponse;
    fromAmino(object: ChainIDResponseAmino): ChainIDResponse;
    toAmino(message: ChainIDResponse): ChainIDResponseAmino;
    fromAminoMsg(object: ChainIDResponseAminoMsg): ChainIDResponse;
    fromProtoMsg(message: ChainIDResponseProtoMsg): ChainIDResponse;
    toProto(message: ChainIDResponse): Uint8Array;
    toProtoMsg(message: ChainIDResponse): ChainIDResponseProtoMsg;
};
export declare const EVMValidatorsRequest: {
    typeUrl: string;
    encode(_: EVMValidatorsRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): EVMValidatorsRequest;
    fromPartial(_: Partial<EVMValidatorsRequest>): EVMValidatorsRequest;
    fromAmino(_: EVMValidatorsRequestAmino): EVMValidatorsRequest;
    toAmino(_: EVMValidatorsRequest): EVMValidatorsRequestAmino;
    fromAminoMsg(object: EVMValidatorsRequestAminoMsg): EVMValidatorsRequest;
    fromProtoMsg(message: EVMValidatorsRequestProtoMsg): EVMValidatorsRequest;
    toProto(message: EVMValidatorsRequest): Uint8Array;
    toProtoMsg(message: EVMValidatorsRequest): EVMValidatorsRequestProtoMsg;
};
export declare const EVMValidatorsResponse: {
    typeUrl: string;
    encode(message: EVMValidatorsResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): EVMValidatorsResponse;
    fromPartial(object: Partial<EVMValidatorsResponse>): EVMValidatorsResponse;
    fromAmino(object: EVMValidatorsResponseAmino): EVMValidatorsResponse;
    toAmino(message: EVMValidatorsResponse): EVMValidatorsResponseAmino;
    fromAminoMsg(object: EVMValidatorsResponseAminoMsg): EVMValidatorsResponse;
    fromProtoMsg(message: EVMValidatorsResponseProtoMsg): EVMValidatorsResponse;
    toProto(message: EVMValidatorsResponse): Uint8Array;
    toProtoMsg(message: EVMValidatorsResponse): EVMValidatorsResponseProtoMsg;
};
export declare const ValidatorMinimal: {
    typeUrl: string;
    encode(message: ValidatorMinimal, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ValidatorMinimal;
    fromPartial(object: Partial<ValidatorMinimal>): ValidatorMinimal;
    fromAmino(object: ValidatorMinimalAmino): ValidatorMinimal;
    toAmino(message: ValidatorMinimal): ValidatorMinimalAmino;
    fromAminoMsg(object: ValidatorMinimalAminoMsg): ValidatorMinimal;
    fromProtoMsg(message: ValidatorMinimalProtoMsg): ValidatorMinimal;
    toProto(message: ValidatorMinimal): Uint8Array;
    toProtoMsg(message: ValidatorMinimal): ValidatorMinimalProtoMsg;
};
