How metamask calculates nonces
constNonceTracker=require('@metamask/nonce-tracker');constnonceTracker=newNonceTracker(config);nonceLock=nonceTracker.getNonceLock('0xselectedEthereumAddress');nonce=nonceLock.nextNonce;optsObject {Object}
Returns Promise<Object> with the key releaseLock (the gloabl mutex)
address
highestLocallyConfirmednumber A hex string of the highest nonce on a confirmed transaction.nextNetworkNoncenumber The next nonce suggested by the eth_getTransactionCount method.highestSuggestednumber The maximum between the other two, the number returned.
this will return an object with the nextNoncenonceDetails, and the releaseLock
Note: releaseLock must be called after adding a signed tx to pending transactions (or discarding).
address{string} the hex string for the address whose nonce we are calculating
Returns Promise<NonceDetails>
yarn test