Utility type for deep partials.
Represents an extended version of an normal ethers Provider that returns additional L2 info and has special functions for L2-specific interactions.
Describes messages sent inside the L2ToL1MessagePasser on L2. Happens to be the same structure as the CoreCrossChainMessage so we'll reuse the type for now.
Stuff that can be coerced into a CrossChainMessage.
Stuff that can be coerced into a CrossChainMessageRequest.
Stuff that can be coerced into a number.
Convenience type for something that looks like the L1 OE contract interface but could be addresses instead of actual contract objects.
Convenience type for something that looks like the L2 OE contract interface but could be addresses instead of actual contract objects.
Stuff that can be coerced into a provider.
Stuff that can be coerced into a signer.
Stuff that can be coerced into a signer or provider.
Stuff that can be coerced into a transaction.
Mapping of L1 chain IDs to the list of custom bridge addresses for each chain.
Mapping of L1 chain IDs to the appropriate contract addresses for the OE deployments to the given network. Simplifies the process of getting the correct contract addresses for a given contract name.
Full list of default L2 contract addresses. TODO(tynes): migrate to predeploys from contracts-bedrock
Returns an provider wrapped as an Optimism L2 provider. Adds a few extra helper functions to simplify the process of estimating the gas usage for a transaction on Optimism. Returns a COPY of the original provider.
Provider to wrap into an L2 provider.
Provider wrapped as an L2 provider.
Estimates the amount of L1 gas required for a given L2 transaction.
L2 provider to query the gas usage from.
Transaction to estimate L1 gas for.
Estimated L1 gas.
Estimates the amount of L1 gas cost for a given L2 transaction in wei.
L2 provider to query the gas usage from.
Transaction to estimate L1 gas cost for.
Estimated L1 gas cost.
Estimates the L2 gas cost for a given L2 transaction in wei.
L2 provider to query the gas usage from.
Transaction to estimate L2 gas cost for.
Estimated L2 gas cost.
Estimates the total gas cost for a given L2 transaction in wei.
L2 provider to query the gas usage from.
Transaction to estimate total gas cost for.
Estimated total gas cost.
Automatically connects to all contract addresses, both L1 and L2, for the given L2 chain ID. The user can provide custom contract address overrides for L1 or L2 contracts. If the given chain ID is not known then the user MUST provide custom contract addresses for ALL L1 contracts or this function will throw an error.
Chain ID for the L2 network.
Additional options for connecting to the contracts.
Custom contract address overrides for L1 or L2 contracts.
An object containing ethers.Contract objects connected to the appropriate addresses on both L1 and L2.
Gets a series of bridge adapters for the given L2 chain ID.
Chain ID for the L2 network.
Cross chain messenger to connect to the bridge adapters
Additional options for connecting to the custom bridges.
Custom bridge adapters.
An object containing all bridge adapters
Gets the current L1 gas price as seen on L2.
L2 provider to query the L1 gas price from.
Current L1 gas price as seen on L2.
Returns an ethers.Contract object for the given name, connected to the appropriate address for the given L2 chain ID. Users can also provide a custom address to connect the contract to instead. If the chain ID is not known then the user MUST provide a custom address or this function will throw an error.
Name of the contract to connect to.
Chain ID for the L2 network.
Additional options for connecting to the contract.
Custom address to connect to the contract.
Signer or provider to connect to the contract.
An ethers.Contract object connected to the appropriate address and interface.
Utility for hashing a LowLevelMessage object.
LowLevelMessage object to hash.
Hash of the given LowLevelMessage.
Utility for hashing a message hash. This computes the storage slot where the message hash will be stored in state. HashZero is used because the first mapping in the contract is used.
Message hash to hash.
Hash of the given message hash.
Determines if a given Provider is an L2Provider. Will coerce type if true
The provider to check
Boolean
Generates a Merkle proof (using the particular scheme we use within Lib_MerkleTree).
Leaves of the merkle tree.
Index to generate a proof for.
Merkle proof sibling leaves, as hex strings.
Generates a Merkle-Patricia trie proof for a given account and storage slot.
RPC provider attached to an EVM-compatible chain.
Block number to generate the proof at.
Address to generate the proof for.
Storage slot to generate the proof for.
Account proof and storage proof.
Compute the min gas limit for a migrated withdrawal.
Returns a copy of the given object ({ ...obj }) with the given keys omitted.
Object to return with the keys omitted.
Keys to omit from the returned object.
A copy of the given object with the given keys omitted.
Converts an address-like into a 0x-prefixed address string.
Address-like to convert into an address.
Address-like as an address.
Converts a number-like into an ethers BigNumber.
Number-like to convert into a BigNumber.
Number-like as a BigNumber.
Converts a number-like into a number.
Number-like to convert into a number.
Number-like as a number.
Converts a ProviderLike into a Provider. Assumes that if the input is a string then it is a JSON-RPC url.
ProviderLike to turn into a Provider.
Input as a Provider.
Converts a SignerOrProviderLike into a Signer or a Provider. Assumes that if the input is a string then it is a JSON-RPC url.
SignerOrProviderLike to turn into a Signer or Provider.
Input as a Signer or Provider.
Pulls a transaction hash out of a TransactionLike object.
TransactionLike to convert into a transaction hash.
Transaction hash corresponding to the TransactionLike input.
Generated using TypeDoc
Stuff that can be coerced into an address.