import { PageRequest, PageResponse } from "../../../../cosmos/base/query/v1beta1/pagination"; import { ConnectionEnd, IdentifiedConnection } from "./connection"; import { Height, IdentifiedClientState } from "../../client/v1/client"; import { Any } from "../../../../google/protobuf/any"; import { Rpc } from "@osmonauts/helpers"; import * as _m0 from "protobufjs/minimal"; import { QueryConnectionRequest, QueryConnectionResponse, QueryConnectionsRequest, QueryConnectionsResponse, QueryClientConnectionsRequest, QueryClientConnectionsResponse, QueryConnectionClientStateRequest, QueryConnectionClientStateResponse, QueryConnectionConsensusStateRequest, QueryConnectionConsensusStateResponse } from "./query"; /** Query defines the RPC service */ export interface Query { connection(request: QueryConnectionRequest): Promise; /*Connection queries an IBC connection end.*/ connections(request: QueryConnectionsRequest): Promise; /*Connections queries all the IBC connections of a chain.*/ clientConnections(request: QueryClientConnectionsRequest): Promise; /*ClientConnections queries the connection paths associated with a client state.*/ connectionClientState(request: QueryConnectionClientStateRequest): Promise; /*ConnectionClientState queries the client state associated with the connection.*/ connectionConsensusState(request: QueryConnectionConsensusStateRequest): Promise; /*ConnectionConsensusState queries the consensus state associated with the connection.*/ } export class QueryClientImpl implements Query { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.connection = this.connection.bind(this); this.connections = this.connections.bind(this); this.clientConnections = this.clientConnections.bind(this); this.connectionClientState = this.connectionClientState.bind(this); this.connectionConsensusState = this.connectionConsensusState.bind(this); } connection(request: QueryConnectionRequest): Promise { const data = QueryConnectionRequest.encode(request).finish(); const promise = this.rpc.request("ibc.core.connection.v1.Query", "Connection", data); return promise.then(data => QueryConnectionResponse.decode(new _m0.Reader(data))); } connections(request: QueryConnectionsRequest): Promise { const data = QueryConnectionsRequest.encode(request).finish(); const promise = this.rpc.request("ibc.core.connection.v1.Query", "Connections", data); return promise.then(data => QueryConnectionsResponse.decode(new _m0.Reader(data))); } clientConnections(request: QueryClientConnectionsRequest): Promise { const data = QueryClientConnectionsRequest.encode(request).finish(); const promise = this.rpc.request("ibc.core.connection.v1.Query", "ClientConnections", data); return promise.then(data => QueryClientConnectionsResponse.decode(new _m0.Reader(data))); } connectionClientState(request: QueryConnectionClientStateRequest): Promise { const data = QueryConnectionClientStateRequest.encode(request).finish(); const promise = this.rpc.request("ibc.core.connection.v1.Query", "ConnectionClientState", data); return promise.then(data => QueryConnectionClientStateResponse.decode(new _m0.Reader(data))); } connectionConsensusState(request: QueryConnectionConsensusStateRequest): Promise { const data = QueryConnectionConsensusStateRequest.encode(request).finish(); const promise = this.rpc.request("ibc.core.connection.v1.Query", "ConnectionConsensusState", data); return promise.then(data => QueryConnectionConsensusStateResponse.decode(new _m0.Reader(data))); } }