The Experimental package is used for features that are not ready to be included in the base library. The API should not be considered stable and does not follow semver versioning, so applications requiring it should specify the exact version needed.
These features are not available in the core ethers package, so to use them you must install the @ethersproject/experimental
package and import them from that.
BrainWallet inherits Wallet
Ethers removed support for BrainWallets in v4, since they are unsafe and many can be easily guessed, allowing attackers to steal the funds. This class is offered to ensure older systems which used brain wallets can still recover their funds and assets.
Generates a brain wallet, with a slightly improved experience, in which the generated wallet has a mnemonic.
Generate a brain wallet which is compatible with the ethers v3 and earlier.
EIP1193Bridge inherits EventEmitter
The EIP1193Bridge allows a normal Ethers Signer and Provider to be exposed in as a standard EIP-1193 Provider, which may be useful when interacting with other libraries.
NonceManager inherits Signer
The NonceManager is designed to manage the nonce for a Signer, automatically increasing it as it sends transactions.
Currently the NonceManager does not handle re-broadcast. If you attempt to send a lot of transactions to the network on a node that does not control that account, the transaction pool may drop your transactions.
In the future, it'd be nice if the NonceManager remembered transactions and watched for them on the network, rebroadcasting transactions that appear to have been dropped.
Another future feature will be some sort of failure mode. For example, often a transaction is dependent on another transaction being mined first.
Create a new NonceManager.
The signer whose nonce is being managed.
The provider associated with the signer.
Set the current transaction count (nonce) for the signer.
This may be useful in interacting with the signer outside of using this class.
Bump the current transaction count (nonce) by count.
This may be useful in interacting with the signer outside of using this class.