// package: cosmos.streaming.abci.v1
// file: cosmos/streaming/abci/v1/grpc.proto

/* tslint:disable */
/* eslint-disable */

import * as jspb from "google-protobuf";
import * as tendermint_abci_types_pb from "../../../../tendermint/abci/types_pb";
import * as cosmos_base_store_v1beta1_listening_pb from "../../../../cosmos/base/store/v1beta1/listening_pb";

export class ListenBeginBlockRequest extends jspb.Message { 

    hasReq(): boolean;
    clearReq(): void;
    getReq(): tendermint_abci_types_pb.RequestBeginBlock | undefined;
    setReq(value?: tendermint_abci_types_pb.RequestBeginBlock): ListenBeginBlockRequest;

    hasRes(): boolean;
    clearRes(): void;
    getRes(): tendermint_abci_types_pb.ResponseBeginBlock | undefined;
    setRes(value?: tendermint_abci_types_pb.ResponseBeginBlock): ListenBeginBlockRequest;

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenBeginBlockRequest.AsObject;
    static toObject(includeInstance: boolean, msg: ListenBeginBlockRequest): ListenBeginBlockRequest.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenBeginBlockRequest, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenBeginBlockRequest;
    static deserializeBinaryFromReader(message: ListenBeginBlockRequest, reader: jspb.BinaryReader): ListenBeginBlockRequest;
}

export namespace ListenBeginBlockRequest {
    export type AsObject = {
        req?: tendermint_abci_types_pb.RequestBeginBlock.AsObject,
        res?: tendermint_abci_types_pb.ResponseBeginBlock.AsObject,
    }
}

export class ListenBeginBlockResponse extends jspb.Message { 

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenBeginBlockResponse.AsObject;
    static toObject(includeInstance: boolean, msg: ListenBeginBlockResponse): ListenBeginBlockResponse.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenBeginBlockResponse, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenBeginBlockResponse;
    static deserializeBinaryFromReader(message: ListenBeginBlockResponse, reader: jspb.BinaryReader): ListenBeginBlockResponse;
}

export namespace ListenBeginBlockResponse {
    export type AsObject = {
    }
}

export class ListenEndBlockRequest extends jspb.Message { 

    hasReq(): boolean;
    clearReq(): void;
    getReq(): tendermint_abci_types_pb.RequestEndBlock | undefined;
    setReq(value?: tendermint_abci_types_pb.RequestEndBlock): ListenEndBlockRequest;

    hasRes(): boolean;
    clearRes(): void;
    getRes(): tendermint_abci_types_pb.ResponseEndBlock | undefined;
    setRes(value?: tendermint_abci_types_pb.ResponseEndBlock): ListenEndBlockRequest;

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenEndBlockRequest.AsObject;
    static toObject(includeInstance: boolean, msg: ListenEndBlockRequest): ListenEndBlockRequest.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenEndBlockRequest, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenEndBlockRequest;
    static deserializeBinaryFromReader(message: ListenEndBlockRequest, reader: jspb.BinaryReader): ListenEndBlockRequest;
}

export namespace ListenEndBlockRequest {
    export type AsObject = {
        req?: tendermint_abci_types_pb.RequestEndBlock.AsObject,
        res?: tendermint_abci_types_pb.ResponseEndBlock.AsObject,
    }
}

export class ListenEndBlockResponse extends jspb.Message { 

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenEndBlockResponse.AsObject;
    static toObject(includeInstance: boolean, msg: ListenEndBlockResponse): ListenEndBlockResponse.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenEndBlockResponse, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenEndBlockResponse;
    static deserializeBinaryFromReader(message: ListenEndBlockResponse, reader: jspb.BinaryReader): ListenEndBlockResponse;
}

export namespace ListenEndBlockResponse {
    export type AsObject = {
    }
}

export class ListenDeliverTxRequest extends jspb.Message { 
    getBlockHeight(): number;
    setBlockHeight(value: number): ListenDeliverTxRequest;

    hasReq(): boolean;
    clearReq(): void;
    getReq(): tendermint_abci_types_pb.RequestDeliverTx | undefined;
    setReq(value?: tendermint_abci_types_pb.RequestDeliverTx): ListenDeliverTxRequest;

    hasRes(): boolean;
    clearRes(): void;
    getRes(): tendermint_abci_types_pb.ResponseDeliverTx | undefined;
    setRes(value?: tendermint_abci_types_pb.ResponseDeliverTx): ListenDeliverTxRequest;

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenDeliverTxRequest.AsObject;
    static toObject(includeInstance: boolean, msg: ListenDeliverTxRequest): ListenDeliverTxRequest.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenDeliverTxRequest, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenDeliverTxRequest;
    static deserializeBinaryFromReader(message: ListenDeliverTxRequest, reader: jspb.BinaryReader): ListenDeliverTxRequest;
}

export namespace ListenDeliverTxRequest {
    export type AsObject = {
        blockHeight: number,
        req?: tendermint_abci_types_pb.RequestDeliverTx.AsObject,
        res?: tendermint_abci_types_pb.ResponseDeliverTx.AsObject,
    }
}

export class ListenDeliverTxResponse extends jspb.Message { 

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenDeliverTxResponse.AsObject;
    static toObject(includeInstance: boolean, msg: ListenDeliverTxResponse): ListenDeliverTxResponse.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenDeliverTxResponse, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenDeliverTxResponse;
    static deserializeBinaryFromReader(message: ListenDeliverTxResponse, reader: jspb.BinaryReader): ListenDeliverTxResponse;
}

export namespace ListenDeliverTxResponse {
    export type AsObject = {
    }
}

export class ListenCommitRequest extends jspb.Message { 
    getBlockHeight(): number;
    setBlockHeight(value: number): ListenCommitRequest;

    hasRes(): boolean;
    clearRes(): void;
    getRes(): tendermint_abci_types_pb.ResponseCommit | undefined;
    setRes(value?: tendermint_abci_types_pb.ResponseCommit): ListenCommitRequest;
    clearChangeSetList(): void;
    getChangeSetList(): Array<cosmos_base_store_v1beta1_listening_pb.StoreKVPair>;
    setChangeSetList(value: Array<cosmos_base_store_v1beta1_listening_pb.StoreKVPair>): ListenCommitRequest;
    addChangeSet(value?: cosmos_base_store_v1beta1_listening_pb.StoreKVPair, index?: number): cosmos_base_store_v1beta1_listening_pb.StoreKVPair;

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenCommitRequest.AsObject;
    static toObject(includeInstance: boolean, msg: ListenCommitRequest): ListenCommitRequest.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenCommitRequest, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenCommitRequest;
    static deserializeBinaryFromReader(message: ListenCommitRequest, reader: jspb.BinaryReader): ListenCommitRequest;
}

export namespace ListenCommitRequest {
    export type AsObject = {
        blockHeight: number,
        res?: tendermint_abci_types_pb.ResponseCommit.AsObject,
        changeSetList: Array<cosmos_base_store_v1beta1_listening_pb.StoreKVPair.AsObject>,
    }
}

export class ListenCommitResponse extends jspb.Message { 

    serializeBinary(): Uint8Array;
    toObject(includeInstance?: boolean): ListenCommitResponse.AsObject;
    static toObject(includeInstance: boolean, msg: ListenCommitResponse): ListenCommitResponse.AsObject;
    static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
    static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
    static serializeBinaryToWriter(message: ListenCommitResponse, writer: jspb.BinaryWriter): void;
    static deserializeBinary(bytes: Uint8Array): ListenCommitResponse;
    static deserializeBinaryFromReader(message: ListenCommitResponse, reader: jspb.BinaryReader): ListenCommitResponse;
}

export namespace ListenCommitResponse {
    export type AsObject = {
    }
}
