import { Observable } from 'rxjs'; import { Address, SignedTransaction, Transaction } from 'tsjs-xpx-chain-sdk'; import { BlockchainNetworkConnection } from '../../../connection/blockchain-network-connection'; /** * Class represents the blockchain transaction client */ export declare class TransactionClient { readonly connection: BlockchainNetworkConnection; static readonly StatusForSuccessfulUnconfirmedTransaction = "SUCCESS"; private readonly transactionHttp; private readonly blockchainNetworkRestApiUrl; /** * Construct the class with BlockchainNetworkConnection * * @param connection the blockchain network connection */ constructor(connection: BlockchainNetworkConnection); /** * Synchronously announce a signed transaction to blockchain *
*
* This method is equivalent to calling `PUT /transaction` * * @param signedTransaction the signed transaction * @param address the signer's address * @return the transaction announce result */ announce(signedTransaction: SignedTransaction, address: Address): Promise; /** * Retrieves a transaction from blockchain *
*
* This method is equivalent to calling `GET /transaction/{transactionHash}` * * @param transactionHash the signed transaction * @return the transaction announce response */ getTransaction(transactionHash: string): Observable; private announceAndWaitForStatus; private getAddedFailedTransactionStatus; private getAddedUnconfirmedTransactionStatus; private getListener; private closeListener; }