Class: Client
Nimiq Albatross client that runs in browsers via WASM and is exposed to Javascript.
Usage:
import init, * as Nimiq from "./pkg/nimiq_web_client.js";
init().then(async () => {
const config = new Nimiq.ClientConfiguration();
const client = await config.instantiateClient();
// ...
});Table of contents
Constructors
Methods
- addConsensusChangedListener
- addHeadChangedListener
- addPeerChangedListener
- addTransactionListener
- free
- getAccount
- getAccounts
- getBlock
- getBlockAt
- getHeadBlock
- getHeadHash
- getHeadHeight
- getNetworkId
- getStaker
- getStakers
- getTransaction
- getTransactionReceiptsByAddress
- getTransactionsByAddress
- getValidator
- getValidators
- isConsensusEstablished
- removeListener
- sendTransaction
- waitForConsensusEstablished
- create
Constructors
constructor
• new Client(): Client
Returns
Methods
addConsensusChangedListener
▸ addConsensusChangedListener(listener): Promise<number>
Adds an event listener for consensus-change events, such as when consensus is established or lost.
Parameters
| Name | Type |
|---|---|
listener | (state: ConsensusState) => any |
Returns
Promise<number>
Defined in
web.d.ts:779
addHeadChangedListener
▸ addHeadChangedListener(listener): Promise<number>
Adds an event listener for new blocks added to the blockchain.
Parameters
| Name | Type |
|---|---|
listener | (hash: string, reason: string, reverted_blocks: string[], adopted_blocks: string[]) => any |
Returns
Promise<number>
Defined in
web.d.ts:785
addPeerChangedListener
▸ addPeerChangedListener(listener): Promise<number>
Adds an event listener for peer-change events, such as when a new peer joins, or a peer leaves.
Parameters
| Name | Type |
|---|---|
listener | (peer_id: string, reason: "left" | "joined", peer_count: number, peer_info?: PlainPeerInfo) => any |
Returns
Promise<number>
Defined in
web.d.ts:791
addTransactionListener
▸ addTransactionListener(listener, addresses): Promise<number>
Adds an event listener for transactions to and from the provided addresses.
The listener is called for transactions when they are included in the blockchain.
Parameters
| Name | Type |
|---|---|
listener | (transaction: PlainTransactionDetails) => any |
addresses | (string | Address)[] |
Returns
Promise<number>
Defined in
web.d.ts:800
free
▸ free(): void
Returns
void
Defined in
web.d.ts:767
getAccount
▸ getAccount(address): Promise<PlainAccount>
Fetches the account for the provided address from the network.
Throws if the address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
address | string | Address |
Returns
Promise<PlainAccount>
Defined in
web.d.ts:865
getAccounts
▸ getAccounts(addresses): Promise<PlainAccount[]>
Fetches the accounts for the provided addresses from the network.
Throws if an address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
addresses | (string | Address)[] |
Returns
Promise<PlainAccount[]>
Defined in
web.d.ts:873
getBlock
▸ getBlock(hash): Promise<PlainBlock>
Fetches a block by its hash.
Throws if the client does not have the block.
Fetching blocks from the network is not yet available.
Parameters
| Name | Type |
|---|---|
hash | string |
Returns
Promise<PlainBlock>
Defined in
web.d.ts:847
getBlockAt
▸ getBlockAt(height): Promise<PlainBlock>
Fetches a block by its height (block number).
Throws if the client does not have the block.
Fetching blocks from the network is not yet available.
Parameters
| Name | Type |
|---|---|
height | number |
Returns
Promise<PlainBlock>
Defined in
web.d.ts:857
getHeadBlock
▸ getHeadBlock(): Promise<PlainBlock>
Returns the current blockchain head block. Note that the web client is a light client and does not have block bodies, i.e. no transactions.
Returns
Promise<PlainBlock>
Defined in
web.d.ts:837
getHeadHash
▸ getHeadHash(): Promise<string>
Returns the block hash of the current blockchain head.
Returns
Promise<string>
Defined in
web.d.ts:826
getHeadHeight
▸ getHeadHeight(): Promise<number>
Returns the block number of the current blockchain head.
Returns
Promise<number>
Defined in
web.d.ts:831
getNetworkId
▸ getNetworkId(): Promise<number>
Returns the network ID that the client is connecting to.
Returns
Promise<number>
Defined in
web.d.ts:811
getStaker
▸ getStaker(address): Promise<PlainStaker>
Fetches the staker for the provided address from the network.
Throws if the address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
address | string | Address |
Returns
Promise<PlainStaker>
Defined in
web.d.ts:881
getStakers
▸ getStakers(addresses): Promise<PlainStaker[]>
Fetches the stakers for the provided addresses from the network.
Throws if an address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
addresses | (string | Address)[] |
Returns
Promise<PlainStaker[]>
Defined in
web.d.ts:889
getTransaction
▸ getTransaction(hash): Promise<PlainTransactionDetails>
Fetches the transaction details for the given transaction hash.
Parameters
| Name | Type |
|---|---|
hash | string |
Returns
Promise<PlainTransactionDetails>
Defined in
web.d.ts:919
getTransactionReceiptsByAddress
▸ getTransactionReceiptsByAddress(address, limit?, min_peers?): Promise<PlainTransactionReceipt[]>
This function is used to query the network for transaction receipts from and to a specific address, that have been included in the chain.
The obtained receipts are not verified before being returned.
Up to a limit number of transaction receipts are returned from newest to oldest. If the network does not have at least min_peers to query, then an error is returned.
Parameters
| Name | Type |
|---|---|
address | string | Address |
limit? | number |
min_peers? | number |
Returns
Promise<PlainTransactionReceipt[]>
Defined in
web.d.ts:933
getTransactionsByAddress
▸ getTransactionsByAddress(address, since_block_height?, known_transaction_details?, limit?, min_peers?): Promise<PlainTransactionDetails[]>
This function is used to query the network for transactions from and to a specific address, that have been included in the chain.
The obtained transactions are verified before being returned.
Up to a limit number of transactions are returned from newest to oldest. If the network does not have at least min_peers to query, then an error is returned.
Parameters
| Name | Type |
|---|---|
address | string | Address |
since_block_height? | number |
known_transaction_details? | PlainTransactionDetails[] |
limit? | number |
min_peers? | number |
Returns
Promise<PlainTransactionDetails[]>
Defined in
web.d.ts:949
getValidator
▸ getValidator(address): Promise<PlainValidator>
Fetches the validator for the provided address from the network.
Throws if the address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
address | string | Address |
Returns
Promise<PlainValidator>
Defined in
web.d.ts:897
getValidators
▸ getValidators(addresses): Promise<PlainValidator[]>
Fetches the validators for the provided addresses from the network.
Throws if an address cannot be parsed and on network errors.
Parameters
| Name | Type |
|---|---|
addresses | (string | Address)[] |
Returns
Promise<PlainValidator[]>
Defined in
web.d.ts:905
isConsensusEstablished
▸ isConsensusEstablished(): Promise<boolean>
Returns if the client currently has consensus with the network.
Returns
Promise<boolean>
Defined in
web.d.ts:816
removeListener
▸ removeListener(handle): Promise<void>
Removes an event listener by its handle.
Parameters
| Name | Type |
|---|---|
handle | number |
Returns
Promise<void>
Defined in
web.d.ts:806
sendTransaction
▸ sendTransaction(transaction): Promise<PlainTransactionDetails>
Sends a transaction to the network and returns PlainTransactionDetails.
Throws in case of network errors.
Parameters
| Name | Type |
|---|---|
transaction | string | PlainTransaction | Transaction |
Returns
Promise<PlainTransactionDetails>
Defined in
web.d.ts:913
waitForConsensusEstablished
▸ waitForConsensusEstablished(): Promise<void>
Returns a promise that resolves when the client has established consensus with the network.
Returns
Promise<void>
Defined in
web.d.ts:821
create
▸ create(config): Promise<Client>
Creates a new Client that automatically starts connecting to the network.
Parameters
| Name | Type |
|---|---|
config | PlainClientConfiguration |
Returns
Promise<Client>
Defined in
web.d.ts:773