import { Rpc } from "../../helpers"; import * as _m0 from "protobufjs/minimal"; import { QueryClient, createProtobufRpcClient } from "@cosmjs/stargate"; import { QueryMarketMapperRevenueShareParams, QueryMarketMapperRevenueShareParamsResponse, QueryMarketMapperRevShareDetails, QueryMarketMapperRevShareDetailsResponse, QueryUnconditionalRevShareConfig, QueryUnconditionalRevShareConfigResponse, QueryOrderRouterRevShare, QueryOrderRouterRevShareResponse } from "./query"; /** Query defines the gRPC querier service. */ export interface Query { /** * MarketMapperRevenueShareParams queries the revenue share params for the * market mapper */ marketMapperRevenueShareParams(request?: QueryMarketMapperRevenueShareParams): Promise; /** Queries market mapper revenue share details for a specific market */ marketMapperRevShareDetails(request: QueryMarketMapperRevShareDetails): Promise; /** Queries unconditional revenue share config */ unconditionalRevShareConfig(request?: QueryUnconditionalRevShareConfig): Promise; /** Queries order router rev share */ orderRouterRevShare(request: QueryOrderRouterRevShare): Promise; } export class QueryClientImpl implements Query { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.marketMapperRevenueShareParams = this.marketMapperRevenueShareParams.bind(this); this.marketMapperRevShareDetails = this.marketMapperRevShareDetails.bind(this); this.unconditionalRevShareConfig = this.unconditionalRevShareConfig.bind(this); this.orderRouterRevShare = this.orderRouterRevShare.bind(this); } marketMapperRevenueShareParams(request: QueryMarketMapperRevenueShareParams = {}): Promise { const data = QueryMarketMapperRevenueShareParams.encode(request).finish(); const promise = this.rpc.request("dydxprotocol.revshare.Query", "MarketMapperRevenueShareParams", data); return promise.then(data => QueryMarketMapperRevenueShareParamsResponse.decode(new _m0.Reader(data))); } marketMapperRevShareDetails(request: QueryMarketMapperRevShareDetails): Promise { const data = QueryMarketMapperRevShareDetails.encode(request).finish(); const promise = this.rpc.request("dydxprotocol.revshare.Query", "MarketMapperRevShareDetails", data); return promise.then(data => QueryMarketMapperRevShareDetailsResponse.decode(new _m0.Reader(data))); } unconditionalRevShareConfig(request: QueryUnconditionalRevShareConfig = {}): Promise { const data = QueryUnconditionalRevShareConfig.encode(request).finish(); const promise = this.rpc.request("dydxprotocol.revshare.Query", "UnconditionalRevShareConfig", data); return promise.then(data => QueryUnconditionalRevShareConfigResponse.decode(new _m0.Reader(data))); } orderRouterRevShare(request: QueryOrderRouterRevShare): Promise { const data = QueryOrderRouterRevShare.encode(request).finish(); const promise = this.rpc.request("dydxprotocol.revshare.Query", "OrderRouterRevShare", data); return promise.then(data => QueryOrderRouterRevShareResponse.decode(new _m0.Reader(data))); } } export const createRpcQueryExtension = (base: QueryClient) => { const rpc = createProtobufRpcClient(base); const queryService = new QueryClientImpl(rpc); return { marketMapperRevenueShareParams(request?: QueryMarketMapperRevenueShareParams): Promise { return queryService.marketMapperRevenueShareParams(request); }, marketMapperRevShareDetails(request: QueryMarketMapperRevShareDetails): Promise { return queryService.marketMapperRevShareDetails(request); }, unconditionalRevShareConfig(request?: QueryUnconditionalRevShareConfig): Promise { return queryService.unconditionalRevShareConfig(request); }, orderRouterRevShare(request: QueryOrderRouterRevShare): Promise { return queryService.orderRouterRevShare(request); } }; };