import { BinaryReader, BinaryWriter } from "../../../binary";
import { DeepPartial } from "../../../helpers";
/** ListenDeliverBlockRequest is the request type for the ListenDeliverBlock RPC method */
export interface ListenDeliverBlockRequest {
    blockHeight: bigint;
    txs: Uint8Array[];
    events: Event[];
    txResults: ExecTxResult[];
}
export interface ListenDeliverBlockRequestProtoMsg {
    typeUrl: "/cosmos.streaming.v1.ListenDeliverBlockRequest";
    value: Uint8Array;
}
/** ListenDeliverBlockRequest is the request type for the ListenDeliverBlock RPC method */
export interface ListenDeliverBlockRequestAmino {
    block_height: string;
    txs: string[];
    events: EventAmino[];
    tx_results: ExecTxResultAmino[];
}
export interface ListenDeliverBlockRequestAminoMsg {
    type: "cosmos-sdk/ListenDeliverBlockRequest";
    value: ListenDeliverBlockRequestAmino;
}
/** ListenDeliverBlockResponse is the response type for the ListenDeliverBlock RPC method */
export interface ListenDeliverBlockResponse {
}
export interface ListenDeliverBlockResponseProtoMsg {
    typeUrl: "/cosmos.streaming.v1.ListenDeliverBlockResponse";
    value: Uint8Array;
}
/** ListenDeliverBlockResponse is the response type for the ListenDeliverBlock RPC method */
export interface ListenDeliverBlockResponseAmino {
}
export interface ListenDeliverBlockResponseAminoMsg {
    type: "cosmos-sdk/ListenDeliverBlockResponse";
    value: ListenDeliverBlockResponseAmino;
}
/** ListenStateChangesRequest is the request type for the ListenStateChanges RPC method */
export interface ListenStateChangesRequest {
    blockHeight: bigint;
    changeSet: StoreKVPair[];
    appHash: Uint8Array;
}
export interface ListenStateChangesRequestProtoMsg {
    typeUrl: "/cosmos.streaming.v1.ListenStateChangesRequest";
    value: Uint8Array;
}
/** ListenStateChangesRequest is the request type for the ListenStateChanges RPC method */
export interface ListenStateChangesRequestAmino {
    block_height: string;
    change_set: StoreKVPairAmino[];
    app_hash: string;
}
export interface ListenStateChangesRequestAminoMsg {
    type: "cosmos-sdk/ListenStateChangesRequest";
    value: ListenStateChangesRequestAmino;
}
/** ListenStateChangesResponse is the response type for the ListenStateChanges RPC method */
export interface ListenStateChangesResponse {
}
export interface ListenStateChangesResponseProtoMsg {
    typeUrl: "/cosmos.streaming.v1.ListenStateChangesResponse";
    value: Uint8Array;
}
/** ListenStateChangesResponse is the response type for the ListenStateChanges RPC method */
export interface ListenStateChangesResponseAmino {
}
export interface ListenStateChangesResponseAminoMsg {
    type: "cosmos-sdk/ListenStateChangesResponse";
    value: ListenStateChangesResponseAmino;
}
/** StoreKVPair is a single key-value pair, associated with a store. */
export interface StoreKVPair {
    /**
     * address defines the address of the account the state changes are coming from.
     * In case of modules you can expect a stringified
     */
    address: Uint8Array;
    /** key defines the key of the address that changed. */
    key: Uint8Array;
    /** value defines the value that changed, empty in case of removal. */
    value: Uint8Array;
    /** delete defines if the key was removed. */
    delete: boolean;
}
export interface StoreKVPairProtoMsg {
    typeUrl: "/cosmos.streaming.v1.StoreKVPair";
    value: Uint8Array;
}
/** StoreKVPair is a single key-value pair, associated with a store. */
export interface StoreKVPairAmino {
    /**
     * address defines the address of the account the state changes are coming from.
     * In case of modules you can expect a stringified
     */
    address: string;
    /** key defines the key of the address that changed. */
    key: string;
    /** value defines the value that changed, empty in case of removal. */
    value: string;
    /** delete defines if the key was removed. */
    delete: boolean;
}
export interface StoreKVPairAminoMsg {
    type: "cosmos-sdk/StoreKVPair";
    value: StoreKVPairAmino;
}
/** Event is a single event, associated with a transaction. */
export interface Event {
    type: string;
    attributes: EventAttribute[];
}
export interface EventProtoMsg {
    typeUrl: "/cosmos.streaming.v1.Event";
    value: Uint8Array;
}
/** Event is a single event, associated with a transaction. */
export interface EventAmino {
    type: string;
    attributes: EventAttributeAmino[];
}
export interface EventAminoMsg {
    type: "cosmos-sdk/Event";
    value: EventAmino;
}
/** EventAttribute is a single key-value pair, associated with an event. */
export interface EventAttribute {
    key: string;
    value: string;
}
export interface EventAttributeProtoMsg {
    typeUrl: "/cosmos.streaming.v1.EventAttribute";
    value: Uint8Array;
}
/** EventAttribute is a single key-value pair, associated with an event. */
export interface EventAttributeAmino {
    key: string;
    value: string;
}
export interface EventAttributeAminoMsg {
    type: "cosmos-sdk/EventAttribute";
    value: EventAttributeAmino;
}
/** ExecTxResult contains results of executing one individual transaction. */
export interface ExecTxResult {
    code: number;
    data: Uint8Array;
    log: string;
    info: string;
    gasWanted: bigint;
    gasUsed: bigint;
    events: Event[];
    codespace: string;
}
export interface ExecTxResultProtoMsg {
    typeUrl: "/cosmos.streaming.v1.ExecTxResult";
    value: Uint8Array;
}
/** ExecTxResult contains results of executing one individual transaction. */
export interface ExecTxResultAmino {
    code: number;
    data: string;
    log: string;
    info: string;
    gas_wanted: string;
    gas_used: string;
    events: EventAmino[];
    codespace: string;
}
export interface ExecTxResultAminoMsg {
    type: "cosmos-sdk/ExecTxResult";
    value: ExecTxResultAmino;
}
export declare const ListenDeliverBlockRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ListenDeliverBlockRequest;
    isAmino(o: any): o is ListenDeliverBlockRequestAmino;
    encode(message: ListenDeliverBlockRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ListenDeliverBlockRequest;
    fromPartial(object: DeepPartial<ListenDeliverBlockRequest>): ListenDeliverBlockRequest;
    fromAmino(object: ListenDeliverBlockRequestAmino): ListenDeliverBlockRequest;
    toAmino(message: ListenDeliverBlockRequest): ListenDeliverBlockRequestAmino;
    fromAminoMsg(object: ListenDeliverBlockRequestAminoMsg): ListenDeliverBlockRequest;
    toAminoMsg(message: ListenDeliverBlockRequest): ListenDeliverBlockRequestAminoMsg;
    fromProtoMsg(message: ListenDeliverBlockRequestProtoMsg): ListenDeliverBlockRequest;
    toProto(message: ListenDeliverBlockRequest): Uint8Array;
    toProtoMsg(message: ListenDeliverBlockRequest): ListenDeliverBlockRequestProtoMsg;
};
export declare const ListenDeliverBlockResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ListenDeliverBlockResponse;
    isAmino(o: any): o is ListenDeliverBlockResponseAmino;
    encode(_: ListenDeliverBlockResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ListenDeliverBlockResponse;
    fromPartial(_: DeepPartial<ListenDeliverBlockResponse>): ListenDeliverBlockResponse;
    fromAmino(_: ListenDeliverBlockResponseAmino): ListenDeliverBlockResponse;
    toAmino(_: ListenDeliverBlockResponse): ListenDeliverBlockResponseAmino;
    fromAminoMsg(object: ListenDeliverBlockResponseAminoMsg): ListenDeliverBlockResponse;
    toAminoMsg(message: ListenDeliverBlockResponse): ListenDeliverBlockResponseAminoMsg;
    fromProtoMsg(message: ListenDeliverBlockResponseProtoMsg): ListenDeliverBlockResponse;
    toProto(message: ListenDeliverBlockResponse): Uint8Array;
    toProtoMsg(message: ListenDeliverBlockResponse): ListenDeliverBlockResponseProtoMsg;
};
export declare const ListenStateChangesRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ListenStateChangesRequest;
    isAmino(o: any): o is ListenStateChangesRequestAmino;
    encode(message: ListenStateChangesRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ListenStateChangesRequest;
    fromPartial(object: DeepPartial<ListenStateChangesRequest>): ListenStateChangesRequest;
    fromAmino(object: ListenStateChangesRequestAmino): ListenStateChangesRequest;
    toAmino(message: ListenStateChangesRequest): ListenStateChangesRequestAmino;
    fromAminoMsg(object: ListenStateChangesRequestAminoMsg): ListenStateChangesRequest;
    toAminoMsg(message: ListenStateChangesRequest): ListenStateChangesRequestAminoMsg;
    fromProtoMsg(message: ListenStateChangesRequestProtoMsg): ListenStateChangesRequest;
    toProto(message: ListenStateChangesRequest): Uint8Array;
    toProtoMsg(message: ListenStateChangesRequest): ListenStateChangesRequestProtoMsg;
};
export declare const ListenStateChangesResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ListenStateChangesResponse;
    isAmino(o: any): o is ListenStateChangesResponseAmino;
    encode(_: ListenStateChangesResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ListenStateChangesResponse;
    fromPartial(_: DeepPartial<ListenStateChangesResponse>): ListenStateChangesResponse;
    fromAmino(_: ListenStateChangesResponseAmino): ListenStateChangesResponse;
    toAmino(_: ListenStateChangesResponse): ListenStateChangesResponseAmino;
    fromAminoMsg(object: ListenStateChangesResponseAminoMsg): ListenStateChangesResponse;
    toAminoMsg(message: ListenStateChangesResponse): ListenStateChangesResponseAminoMsg;
    fromProtoMsg(message: ListenStateChangesResponseProtoMsg): ListenStateChangesResponse;
    toProto(message: ListenStateChangesResponse): Uint8Array;
    toProtoMsg(message: ListenStateChangesResponse): ListenStateChangesResponseProtoMsg;
};
export declare const StoreKVPair: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is StoreKVPair;
    isAmino(o: any): o is StoreKVPairAmino;
    encode(message: StoreKVPair, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): StoreKVPair;
    fromPartial(object: DeepPartial<StoreKVPair>): StoreKVPair;
    fromAmino(object: StoreKVPairAmino): StoreKVPair;
    toAmino(message: StoreKVPair): StoreKVPairAmino;
    fromAminoMsg(object: StoreKVPairAminoMsg): StoreKVPair;
    toAminoMsg(message: StoreKVPair): StoreKVPairAminoMsg;
    fromProtoMsg(message: StoreKVPairProtoMsg): StoreKVPair;
    toProto(message: StoreKVPair): Uint8Array;
    toProtoMsg(message: StoreKVPair): StoreKVPairProtoMsg;
};
export declare const Event: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is Event;
    isAmino(o: any): o is EventAmino;
    encode(message: Event, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): Event;
    fromPartial(object: DeepPartial<Event>): Event;
    fromAmino(object: EventAmino): Event;
    toAmino(message: Event): EventAmino;
    fromAminoMsg(object: EventAminoMsg): Event;
    toAminoMsg(message: Event): EventAminoMsg;
    fromProtoMsg(message: EventProtoMsg): Event;
    toProto(message: Event): Uint8Array;
    toProtoMsg(message: Event): EventProtoMsg;
};
export declare const EventAttribute: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is EventAttribute;
    isAmino(o: any): o is EventAttributeAmino;
    encode(message: EventAttribute, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): EventAttribute;
    fromPartial(object: DeepPartial<EventAttribute>): EventAttribute;
    fromAmino(object: EventAttributeAmino): EventAttribute;
    toAmino(message: EventAttribute): EventAttributeAmino;
    fromAminoMsg(object: EventAttributeAminoMsg): EventAttribute;
    toAminoMsg(message: EventAttribute): EventAttributeAminoMsg;
    fromProtoMsg(message: EventAttributeProtoMsg): EventAttribute;
    toProto(message: EventAttribute): Uint8Array;
    toProtoMsg(message: EventAttribute): EventAttributeProtoMsg;
};
export declare const ExecTxResult: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is ExecTxResult;
    isAmino(o: any): o is ExecTxResultAmino;
    encode(message: ExecTxResult, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): ExecTxResult;
    fromPartial(object: DeepPartial<ExecTxResult>): ExecTxResult;
    fromAmino(object: ExecTxResultAmino): ExecTxResult;
    toAmino(message: ExecTxResult): ExecTxResultAmino;
    fromAminoMsg(object: ExecTxResultAminoMsg): ExecTxResult;
    toAminoMsg(message: ExecTxResult): ExecTxResultAminoMsg;
    fromProtoMsg(message: ExecTxResultProtoMsg): ExecTxResult;
    toProto(message: ExecTxResult): Uint8Array;
    toProtoMsg(message: ExecTxResult): ExecTxResultProtoMsg;
};
