import { IQueryClient, IEventClient } from '@interchainjs/types'; import { StatusResponse as ChainStatus, Block, TxResponse, ValidatorsResponse as ValidatorSet, BlockSearchResponse as SearchBlocksResult, TxSearchResponse as SearchTxsResult, BlockchainResponse as BlockchainInfo, BlockHeader, Commit, UnconfirmedTxsResponse as UnconfirmedTxs, ConsensusParams, HealthResponse as HealthResult, NumUnconfirmedTxsResponse as NumUnconfirmedTxs, AbciInfoResponse as AbciInfo, NetInfoResponse as NetInfo, AbciQueryResponse as AbciQueryResult, ConsensusState, TxEvent, BlockEvent, BroadcastTxAsyncResponse, BroadcastTxCommitResponse } from './responses'; import { BlockResultsResponse as BlockResults } from './responses/common/block/block-results-response'; import { CheckTxResponse } from './responses'; import { BroadcastTxSyncResponse } from './responses/common/broadcast-tx-sync/broadcast-tx-sync-response'; import { ConsensusStateDumpResponse } from './responses/common/consensus'; import { GenesisResponse as Genesis } from './responses/common/genesis'; import { GenesisChunkedResponse as GenesisChunk } from './responses/common/genesis-chunked'; import { AbciQueryParams, BlockSearchParams, TxSearchParams } from './requests'; import { BroadcastTxParams } from './requests/common/tx'; import { ProtocolInfo } from './protocol'; import { BaseAccount } from '@interchainjs/cosmos-types'; import type { PubkeyDecoderMap } from '../utils'; export interface ICosmosQueryClient extends IQueryClient { getStatus(): Promise; getAbciInfo(): Promise; getHealth(): Promise; getNetInfo(): Promise; getBlock(height?: number): Promise; getBlockByHash(hash: string): Promise; getBlockResults(height?: number): Promise; searchBlocks(params: BlockSearchParams): Promise; getBlockchain(minHeight?: number, maxHeight?: number): Promise; getHeader(height?: number): Promise; getHeaderByHash(hash: string): Promise; getCommit(height?: number): Promise; getTx(hash: string, prove?: boolean): Promise; searchTxs(params: TxSearchParams): Promise; checkTx(tx: string): Promise; getUnconfirmedTxs(limit?: number): Promise; getNumUnconfirmedTxs(): Promise; broadcastTxSync(params: BroadcastTxParams): Promise; broadcastTxAsync(params: BroadcastTxParams): Promise; broadcastTxCommit(params: BroadcastTxParams): Promise; getValidators(height?: number, page?: number, perPage?: number): Promise; getConsensusParams(height?: number): Promise; getConsensusState(): Promise; dumpConsensusState(): Promise; getGenesis(): Promise; getGenesisChunked(chunk: number): Promise; queryAbci(params: AbciQueryParams): Promise; request(service: string, method: string, data: Uint8Array): Promise; getBaseAccount(address: string, opts?: { readonly pubkeyDecoders?: PubkeyDecoderMap; }): Promise; getProtocolInfo(): ProtocolInfo; } export interface ICosmosEventClient extends IEventClient { subscribeToBlocks(): AsyncIterable; subscribeToBlockHeaders(): AsyncIterable; subscribeToTxs(query?: string): AsyncIterable; subscribeToValidatorSetUpdates(): AsyncIterable; }