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