import type { Keplr as Leap } from '@keplr-wallet/types'; import type { OfflineDirectSigner } from '@cosmjs/proto-signing'; import type { TxRaw } from '@routerprotocol/chain-api/cosmos/tx/v1beta1/tx_pb'; import { ChainId, CosmosChainId, TestnetCosmosChainId } from '../../..'; export declare class LeapWallet { private chainId; constructor(chainId: CosmosChainId | TestnetCosmosChainId | ChainId); getLeapWallet(): Promise; getAccounts(): Promise; getKey(): Promise<{ name: string; algo: string; pubKey: Uint8Array; address: Uint8Array; bech32Address: string; }>; getOfflineSigner(): Promise; /** * This method is used to broadcast a transaction to the network. * Since it uses the `Sync` mode, it will not wait for the transaction to be included in a block, * so we have to make sure the transaction is included in a block after its broadcasted * * @param txRaw - raw transaction to broadcast * @returns tx hash */ broadcastTx(txRaw: TxRaw): Promise; /** * This method is used to broadcast a transaction to the network. * Since it uses the `Block` mode, and it will wait for the transaction to be included in a block, * * @param txRaw - raw transaction to broadcast * @returns tx hash */ broadcastTxBlock(txRaw: TxRaw): Promise; waitTxBroadcasted(txHash: string): Promise; getChainEndpoints(): Promise<{ rpc: string; rest: string; }>; checkChainIdSupport: () => Promise; private getLeap; }