import { PageRequest, PageRequestSDKType, PageResponse, PageResponseSDKType } from "../../cosmos/base/query/v1beta1/pagination";
import { ValidatorMevMatches, ValidatorMevMatchesSDKType, MevNodeToNodeMetrics, MevNodeToNodeMetricsSDKType } from "./mev";
import { OrderId, OrderIdSDKType, LongTermOrderPlacement, LongTermOrderPlacementSDKType, Order, OrderSDKType, StreamLiquidationOrder, StreamLiquidationOrderSDKType } from "./order";
import { SubaccountId, SubaccountIdSDKType } from "../subaccounts/subaccount";
import { ClobPair, ClobPairSDKType } from "./clob_pair";
import { EquityTierLimitConfiguration, EquityTierLimitConfigurationSDKType } from "./equity_tier_limit_config";
import { BlockRateLimitConfiguration, BlockRateLimitConfigurationSDKType } from "./block_rate_limit_config";
import { LiquidationsConfig, LiquidationsConfigSDKType } from "./liquidations_config";
import { StreamSubaccountUpdate, StreamSubaccountUpdateSDKType } from "../subaccounts/streaming";
import { StreamPriceUpdate, StreamPriceUpdateSDKType } from "../prices/streaming";
import { OffChainUpdateV1, OffChainUpdateV1SDKType } from "../indexer/off_chain_updates/off_chain_updates";
import { ClobMatch, ClobMatchSDKType } from "./matches";
import * as _m0 from "protobufjs/minimal";
import { DeepPartial, Long } from "../../helpers";
/** QueryGetClobPairRequest is request type for the ClobPair method. */
export interface QueryGetClobPairRequest {
    /** QueryGetClobPairRequest is request type for the ClobPair method. */
    id: number;
}
/** QueryGetClobPairRequest is request type for the ClobPair method. */
export interface QueryGetClobPairRequestSDKType {
    id: number;
}
/** QueryClobPairResponse is response type for the ClobPair method. */
export interface QueryClobPairResponse {
    clobPair?: ClobPair;
}
/** QueryClobPairResponse is response type for the ClobPair method. */
export interface QueryClobPairResponseSDKType {
    clob_pair?: ClobPairSDKType;
}
/** QueryAllClobPairRequest is request type for the ClobPairAll method. */
export interface QueryAllClobPairRequest {
    pagination?: PageRequest;
}
/** QueryAllClobPairRequest is request type for the ClobPairAll method. */
export interface QueryAllClobPairRequestSDKType {
    pagination?: PageRequestSDKType;
}
/** QueryClobPairAllResponse is response type for the ClobPairAll method. */
export interface QueryClobPairAllResponse {
    clobPair: ClobPair[];
    pagination?: PageResponse;
}
/** QueryClobPairAllResponse is response type for the ClobPairAll method. */
export interface QueryClobPairAllResponseSDKType {
    clob_pair: ClobPairSDKType[];
    pagination?: PageResponseSDKType;
}
/**
 * MevNodeToNodeCalculationRequest is a request message used to run the
 * MEV node <> node calculation.
 */
export interface MevNodeToNodeCalculationRequest {
    /**
     * Represents the matches on the "block proposer". Note that this field
     * does not need to be the actual block proposer's matches for a block, since
     * the MEV calculation logic is run with this nodes matches as the "block
     * proposer" matches.
     */
    blockProposerMatches?: ValidatorMevMatches;
    /** Represents the matches and mid-prices on the validator. */
    validatorMevMetrics?: MevNodeToNodeMetrics;
}
/**
 * MevNodeToNodeCalculationRequest is a request message used to run the
 * MEV node <> node calculation.
 */
export interface MevNodeToNodeCalculationRequestSDKType {
    block_proposer_matches?: ValidatorMevMatchesSDKType;
    validator_mev_metrics?: MevNodeToNodeMetricsSDKType;
}
/**
 * MevNodeToNodeCalculationResponse is a response message that contains the
 * MEV node <> node calculation result.
 */
export interface MevNodeToNodeCalculationResponse {
    results: MevNodeToNodeCalculationResponse_MevAndVolumePerClob[];
}
/**
 * MevNodeToNodeCalculationResponse is a response message that contains the
 * MEV node <> node calculation result.
 */
export interface MevNodeToNodeCalculationResponseSDKType {
    results: MevNodeToNodeCalculationResponse_MevAndVolumePerClobSDKType[];
}
/** MevAndVolumePerClob contains information about the MEV and volume per CLOB. */
export interface MevNodeToNodeCalculationResponse_MevAndVolumePerClob {
    clobPairId: number;
    mev: number;
    volume: Long;
}
/** MevAndVolumePerClob contains information about the MEV and volume per CLOB. */
export interface MevNodeToNodeCalculationResponse_MevAndVolumePerClobSDKType {
    clob_pair_id: number;
    mev: number;
    volume: Long;
}
/**
 * QueryEquityTierLimitConfigurationRequest is a request message for
 * EquityTierLimitConfiguration.
 */
export interface QueryEquityTierLimitConfigurationRequest {
}
/**
 * QueryEquityTierLimitConfigurationRequest is a request message for
 * EquityTierLimitConfiguration.
 */
export interface QueryEquityTierLimitConfigurationRequestSDKType {
}
/**
 * QueryEquityTierLimitConfigurationResponse is a response message that contains
 * the EquityTierLimitConfiguration.
 */
export interface QueryEquityTierLimitConfigurationResponse {
    equityTierLimitConfig?: EquityTierLimitConfiguration;
}
/**
 * QueryEquityTierLimitConfigurationResponse is a response message that contains
 * the EquityTierLimitConfiguration.
 */
export interface QueryEquityTierLimitConfigurationResponseSDKType {
    equity_tier_limit_config?: EquityTierLimitConfigurationSDKType;
}
/**
 * QueryBlockRateLimitConfigurationRequest is a request message for
 * BlockRateLimitConfiguration.
 */
export interface QueryBlockRateLimitConfigurationRequest {
}
/**
 * QueryBlockRateLimitConfigurationRequest is a request message for
 * BlockRateLimitConfiguration.
 */
export interface QueryBlockRateLimitConfigurationRequestSDKType {
}
/**
 * QueryBlockRateLimitConfigurationResponse is a response message that contains
 * the BlockRateLimitConfiguration.
 */
export interface QueryBlockRateLimitConfigurationResponse {
    blockRateLimitConfig?: BlockRateLimitConfiguration;
}
/**
 * QueryBlockRateLimitConfigurationResponse is a response message that contains
 * the BlockRateLimitConfiguration.
 */
export interface QueryBlockRateLimitConfigurationResponseSDKType {
    block_rate_limit_config?: BlockRateLimitConfigurationSDKType;
}
/** QueryStatefulOrderRequest is a request message for StatefulOrder. */
export interface QueryStatefulOrderRequest {
    /** Order id to query. */
    orderId?: OrderId;
}
/** QueryStatefulOrderRequest is a request message for StatefulOrder. */
export interface QueryStatefulOrderRequestSDKType {
    order_id?: OrderIdSDKType;
}
/**
 * QueryStatefulOrderResponse is a response message that contains the stateful
 * order.
 */
export interface QueryStatefulOrderResponse {
    /** Stateful order placement. */
    orderPlacement?: LongTermOrderPlacement;
    /** Fill amounts. */
    fillAmount: Long;
    /** Triggered status. */
    triggered: boolean;
}
/**
 * QueryStatefulOrderResponse is a response message that contains the stateful
 * order.
 */
export interface QueryStatefulOrderResponseSDKType {
    order_placement?: LongTermOrderPlacementSDKType;
    fill_amount: Long;
    triggered: boolean;
}
/**
 * QueryLiquidationsConfigurationRequest is a request message for
 * LiquidationsConfiguration.
 */
export interface QueryLiquidationsConfigurationRequest {
}
/**
 * QueryLiquidationsConfigurationRequest is a request message for
 * LiquidationsConfiguration.
 */
export interface QueryLiquidationsConfigurationRequestSDKType {
}
/**
 * QueryLiquidationsConfigurationResponse is a response message that contains
 * the LiquidationsConfiguration.
 */
export interface QueryLiquidationsConfigurationResponse {
    liquidationsConfig?: LiquidationsConfig;
}
/**
 * QueryLiquidationsConfigurationResponse is a response message that contains
 * the LiquidationsConfiguration.
 */
export interface QueryLiquidationsConfigurationResponseSDKType {
    liquidations_config?: LiquidationsConfigSDKType;
}
/** QueryNextClobPairIdRequest is a request message for the next clob pair id */
export interface QueryNextClobPairIdRequest {
}
/** QueryNextClobPairIdRequest is a request message for the next clob pair id */
export interface QueryNextClobPairIdRequestSDKType {
}
/** QueryNextClobPairIdResponse is a response message for the next clob pair id */
export interface QueryNextClobPairIdResponse {
    /** QueryNextClobPairIdResponse is a response message for the next clob pair id */
    nextClobPairId: number;
}
/** QueryNextClobPairIdResponse is a response message for the next clob pair id */
export interface QueryNextClobPairIdResponseSDKType {
    next_clob_pair_id: number;
}
/** QueryLeverageRequest is a request message for Leverage. */
export interface QueryLeverageRequest {
    /** The address of the wallet that owns the subaccount. */
    owner: string;
    /** The unique number of the subaccount for the owner. */
    number: number;
}
/** QueryLeverageRequest is a request message for Leverage. */
export interface QueryLeverageRequestSDKType {
    owner: string;
    number: number;
}
/** QueryLeverageResponse is a response message that contains the leverage map. */
export interface QueryLeverageResponse {
    /** List of clob pair leverage settings. */
    clobPairLeverage: ClobPairLeverageInfo[];
}
/** QueryLeverageResponse is a response message that contains the leverage map. */
export interface QueryLeverageResponseSDKType {
    clob_pair_leverage: ClobPairLeverageInfoSDKType[];
}
/** ClobPairLeverageInfo represents the leverage setting for a single clob pair. */
export interface ClobPairLeverageInfo {
    /** The clob pair ID. */
    clobPairId: number;
    /** The user selected imf. */
    customImfPpm: number;
}
/** ClobPairLeverageInfo represents the leverage setting for a single clob pair. */
export interface ClobPairLeverageInfoSDKType {
    clob_pair_id: number;
    custom_imf_ppm: number;
}
/**
 * StreamOrderbookUpdatesRequest is a request message for the
 * StreamOrderbookUpdates method.
 */
export interface StreamOrderbookUpdatesRequest {
    /** Clob pair ids to stream orderbook updates for. */
    clobPairId: number[];
    /** Subaccount ids to stream subaccount updates for. */
    subaccountIds: SubaccountId[];
    /** Market ids for price updates. */
    marketIds: number[];
    /**
     * Filter order updates by subaccount IDs.
     * If true, the orderbook updates only include orders from provided subaccount
     * IDs.
     */
    filterOrdersBySubaccountId: boolean;
}
/**
 * StreamOrderbookUpdatesRequest is a request message for the
 * StreamOrderbookUpdates method.
 */
export interface StreamOrderbookUpdatesRequestSDKType {
    clob_pair_id: number[];
    subaccount_ids: SubaccountIdSDKType[];
    market_ids: number[];
    filter_orders_by_subaccount_id: boolean;
}
/**
 * StreamOrderbookUpdatesResponse is a response message for the
 * StreamOrderbookUpdates method.
 */
export interface StreamOrderbookUpdatesResponse {
    /** Batch of updates for the clob pair. */
    updates: StreamUpdate[];
}
/**
 * StreamOrderbookUpdatesResponse is a response message for the
 * StreamOrderbookUpdates method.
 */
export interface StreamOrderbookUpdatesResponseSDKType {
    updates: StreamUpdateSDKType[];
}
/**
 * StreamUpdate is an update that will be pushed through the
 * GRPC stream.
 */
export interface StreamUpdate {
    /** Block height of the update. */
    blockHeight: number;
    /** Exec mode of the update. */
    execMode: number;
    orderbookUpdate?: StreamOrderbookUpdate;
    orderFill?: StreamOrderbookFill;
    takerOrder?: StreamTakerOrder;
    subaccountUpdate?: StreamSubaccountUpdate;
    priceUpdate?: StreamPriceUpdate;
}
/**
 * StreamUpdate is an update that will be pushed through the
 * GRPC stream.
 */
export interface StreamUpdateSDKType {
    block_height: number;
    exec_mode: number;
    orderbook_update?: StreamOrderbookUpdateSDKType;
    order_fill?: StreamOrderbookFillSDKType;
    taker_order?: StreamTakerOrderSDKType;
    subaccount_update?: StreamSubaccountUpdateSDKType;
    price_update?: StreamPriceUpdateSDKType;
}
/**
 * StreamOrderbookUpdate provides information on an orderbook update. Used in
 * the full node GRPC stream.
 */
export interface StreamOrderbookUpdate {
    /**
     * Snapshot indicates if the response is from a snapshot of the orderbook.
     * All updates should be ignored until snapshot is recieved.
     * If the snapshot is true, then all previous entries should be
     * discarded and the orderbook should be resynced.
     */
    snapshot: boolean;
    /**
     * Orderbook updates for the clob pair. Can contain order place, removals,
     * or updates.
     */
    updates: OffChainUpdateV1[];
}
/**
 * StreamOrderbookUpdate provides information on an orderbook update. Used in
 * the full node GRPC stream.
 */
export interface StreamOrderbookUpdateSDKType {
    snapshot: boolean;
    updates: OffChainUpdateV1SDKType[];
}
/**
 * StreamOrderbookFill provides information on an orderbook fill. Used in
 * the full node GRPC stream.
 */
export interface StreamOrderbookFill {
    /**
     * Clob match. Provides information on which orders were matched
     * and the type of order.
     */
    clobMatch?: ClobMatch;
    /**
     * All orders involved in the specified clob match. Used to look up
     * price of a match through a given maker order id.
     */
    orders: Order[];
    /** Resulting fill amounts for each order in the orders array. */
    fillAmounts: Long[];
}
/**
 * StreamOrderbookFill provides information on an orderbook fill. Used in
 * the full node GRPC stream.
 */
export interface StreamOrderbookFillSDKType {
    clob_match?: ClobMatchSDKType;
    orders: OrderSDKType[];
    fill_amounts: Long[];
}
/**
 * StreamTakerOrder provides information on a taker order that was attempted
 * to be matched on the orderbook.
 * It is intended to be used only in full node streaming.
 */
export interface StreamTakerOrder {
    order?: Order;
    liquidationOrder?: StreamLiquidationOrder;
    /**
     * Information on the taker order after it is matched on the book,
     * either successfully or unsuccessfully.
     */
    takerOrderStatus?: StreamTakerOrderStatus;
}
/**
 * StreamTakerOrder provides information on a taker order that was attempted
 * to be matched on the orderbook.
 * It is intended to be used only in full node streaming.
 */
export interface StreamTakerOrderSDKType {
    order?: OrderSDKType;
    liquidation_order?: StreamLiquidationOrderSDKType;
    taker_order_status?: StreamTakerOrderStatusSDKType;
}
/**
 * StreamTakerOrderStatus is a representation of a taker order
 * after it is attempted to be matched on the orderbook.
 * It is intended to be used only in full node streaming.
 */
export interface StreamTakerOrderStatus {
    /**
     * The state of the taker order after attempting to match it against the
     * orderbook. Possible enum values can be found here:
     * https://github.com/ritbit/v4-chain/blob/main/protocol/x/clob/types/orderbook.go#L105
     */
    orderStatus: number;
    /** The amount of remaining (non-matched) base quantums of this taker order. */
    remainingQuantums: Long;
    /**
     * The amount of base quantums that were *optimistically* filled for this
     * taker order when the order is matched against the orderbook. Note that if
     * any quantums of this order were optimistically filled or filled in state
     * before this invocation of the matching loop, this value will not include
     * them.
     */
    optimisticallyFilledQuantums: Long;
}
/**
 * StreamTakerOrderStatus is a representation of a taker order
 * after it is attempted to be matched on the orderbook.
 * It is intended to be used only in full node streaming.
 */
export interface StreamTakerOrderStatusSDKType {
    order_status: number;
    remaining_quantums: Long;
    optimistically_filled_quantums: Long;
}
export declare const QueryGetClobPairRequest: {
    encode(message: QueryGetClobPairRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryGetClobPairRequest;
    fromPartial(object: DeepPartial<QueryGetClobPairRequest>): QueryGetClobPairRequest;
};
export declare const QueryClobPairResponse: {
    encode(message: QueryClobPairResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryClobPairResponse;
    fromPartial(object: DeepPartial<QueryClobPairResponse>): QueryClobPairResponse;
};
export declare const QueryAllClobPairRequest: {
    encode(message: QueryAllClobPairRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryAllClobPairRequest;
    fromPartial(object: DeepPartial<QueryAllClobPairRequest>): QueryAllClobPairRequest;
};
export declare const QueryClobPairAllResponse: {
    encode(message: QueryClobPairAllResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryClobPairAllResponse;
    fromPartial(object: DeepPartial<QueryClobPairAllResponse>): QueryClobPairAllResponse;
};
export declare const MevNodeToNodeCalculationRequest: {
    encode(message: MevNodeToNodeCalculationRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): MevNodeToNodeCalculationRequest;
    fromPartial(object: DeepPartial<MevNodeToNodeCalculationRequest>): MevNodeToNodeCalculationRequest;
};
export declare const MevNodeToNodeCalculationResponse: {
    encode(message: MevNodeToNodeCalculationResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): MevNodeToNodeCalculationResponse;
    fromPartial(object: DeepPartial<MevNodeToNodeCalculationResponse>): MevNodeToNodeCalculationResponse;
};
export declare const MevNodeToNodeCalculationResponse_MevAndVolumePerClob: {
    encode(message: MevNodeToNodeCalculationResponse_MevAndVolumePerClob, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): MevNodeToNodeCalculationResponse_MevAndVolumePerClob;
    fromPartial(object: DeepPartial<MevNodeToNodeCalculationResponse_MevAndVolumePerClob>): MevNodeToNodeCalculationResponse_MevAndVolumePerClob;
};
export declare const QueryEquityTierLimitConfigurationRequest: {
    encode(_: QueryEquityTierLimitConfigurationRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryEquityTierLimitConfigurationRequest;
    fromPartial(_: DeepPartial<QueryEquityTierLimitConfigurationRequest>): QueryEquityTierLimitConfigurationRequest;
};
export declare const QueryEquityTierLimitConfigurationResponse: {
    encode(message: QueryEquityTierLimitConfigurationResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryEquityTierLimitConfigurationResponse;
    fromPartial(object: DeepPartial<QueryEquityTierLimitConfigurationResponse>): QueryEquityTierLimitConfigurationResponse;
};
export declare const QueryBlockRateLimitConfigurationRequest: {
    encode(_: QueryBlockRateLimitConfigurationRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryBlockRateLimitConfigurationRequest;
    fromPartial(_: DeepPartial<QueryBlockRateLimitConfigurationRequest>): QueryBlockRateLimitConfigurationRequest;
};
export declare const QueryBlockRateLimitConfigurationResponse: {
    encode(message: QueryBlockRateLimitConfigurationResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryBlockRateLimitConfigurationResponse;
    fromPartial(object: DeepPartial<QueryBlockRateLimitConfigurationResponse>): QueryBlockRateLimitConfigurationResponse;
};
export declare const QueryStatefulOrderRequest: {
    encode(message: QueryStatefulOrderRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryStatefulOrderRequest;
    fromPartial(object: DeepPartial<QueryStatefulOrderRequest>): QueryStatefulOrderRequest;
};
export declare const QueryStatefulOrderResponse: {
    encode(message: QueryStatefulOrderResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryStatefulOrderResponse;
    fromPartial(object: DeepPartial<QueryStatefulOrderResponse>): QueryStatefulOrderResponse;
};
export declare const QueryLiquidationsConfigurationRequest: {
    encode(_: QueryLiquidationsConfigurationRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryLiquidationsConfigurationRequest;
    fromPartial(_: DeepPartial<QueryLiquidationsConfigurationRequest>): QueryLiquidationsConfigurationRequest;
};
export declare const QueryLiquidationsConfigurationResponse: {
    encode(message: QueryLiquidationsConfigurationResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryLiquidationsConfigurationResponse;
    fromPartial(object: DeepPartial<QueryLiquidationsConfigurationResponse>): QueryLiquidationsConfigurationResponse;
};
export declare const QueryNextClobPairIdRequest: {
    encode(_: QueryNextClobPairIdRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryNextClobPairIdRequest;
    fromPartial(_: DeepPartial<QueryNextClobPairIdRequest>): QueryNextClobPairIdRequest;
};
export declare const QueryNextClobPairIdResponse: {
    encode(message: QueryNextClobPairIdResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryNextClobPairIdResponse;
    fromPartial(object: DeepPartial<QueryNextClobPairIdResponse>): QueryNextClobPairIdResponse;
};
export declare const QueryLeverageRequest: {
    encode(message: QueryLeverageRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryLeverageRequest;
    fromPartial(object: DeepPartial<QueryLeverageRequest>): QueryLeverageRequest;
};
export declare const QueryLeverageResponse: {
    encode(message: QueryLeverageResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): QueryLeverageResponse;
    fromPartial(object: DeepPartial<QueryLeverageResponse>): QueryLeverageResponse;
};
export declare const ClobPairLeverageInfo: {
    encode(message: ClobPairLeverageInfo, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ClobPairLeverageInfo;
    fromPartial(object: DeepPartial<ClobPairLeverageInfo>): ClobPairLeverageInfo;
};
export declare const StreamOrderbookUpdatesRequest: {
    encode(message: StreamOrderbookUpdatesRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamOrderbookUpdatesRequest;
    fromPartial(object: DeepPartial<StreamOrderbookUpdatesRequest>): StreamOrderbookUpdatesRequest;
};
export declare const StreamOrderbookUpdatesResponse: {
    encode(message: StreamOrderbookUpdatesResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamOrderbookUpdatesResponse;
    fromPartial(object: DeepPartial<StreamOrderbookUpdatesResponse>): StreamOrderbookUpdatesResponse;
};
export declare const StreamUpdate: {
    encode(message: StreamUpdate, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamUpdate;
    fromPartial(object: DeepPartial<StreamUpdate>): StreamUpdate;
};
export declare const StreamOrderbookUpdate: {
    encode(message: StreamOrderbookUpdate, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamOrderbookUpdate;
    fromPartial(object: DeepPartial<StreamOrderbookUpdate>): StreamOrderbookUpdate;
};
export declare const StreamOrderbookFill: {
    encode(message: StreamOrderbookFill, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamOrderbookFill;
    fromPartial(object: DeepPartial<StreamOrderbookFill>): StreamOrderbookFill;
};
export declare const StreamTakerOrder: {
    encode(message: StreamTakerOrder, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamTakerOrder;
    fromPartial(object: DeepPartial<StreamTakerOrder>): StreamTakerOrder;
};
export declare const StreamTakerOrderStatus: {
    encode(message: StreamTakerOrderStatus, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): StreamTakerOrderStatus;
    fromPartial(object: DeepPartial<StreamTakerOrderStatus>): StreamTakerOrderStatus;
};
//# sourceMappingURL=query.d.ts.map