Module: message/L2ToL1MessageNitro
L2ToL1MessageNitro
Base functionality for nitro L2->L1 messages
Extended By
Methods
fromEvent()
static fromEvent<T>(
l1SignerOrProvider,
event,
l1Provider?): L2ToL1MessageReaderOrWriterNitro< T >
Instantiates a new L2ToL1MessageWriterNitro or L2ToL1MessageReaderNitro object.
Type parameters
| Parameter |
|---|
T extends SignerOrProvider |
Parameters
| Parameter | Type | Description |
|---|---|---|
l1SignerOrProvider | T | Signer or provider to be used for executing or reading the L2-to-L1 message. |
event | object | The event containing the data of the L2-to-L1 message. |
event.arbBlockNum | BigNumber | - |
event.caller? | string | - |
event.callvalue? | BigNumber | - |
event.data? | string | - |
event.destination? | string | - |
event.ethBlockNum? | BigNumber | - |
event.hash? | BigNumber | - |
event.position? | BigNumber | - |
event.timestamp? | BigNumber | - |
l1Provider? | Provider | Optional. Used to override the Provider which is attached to l1SignerOrProvider in case you need more control. This will be a required parameter in a future major version update. |
Returns
L2ToL1MessageReaderOrWriterNitro\< T >
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:136
L2ToL1MessageReaderNitro
Provides read-only access nitro for l2-to-l1-messages
Extends
Methods
getFirstExecutableBlock()
getFirstExecutableBlock(l2Provider): Promise< null | BigNumber >
Estimates the L1 block number in which this L2 to L1 tx will be available for execution. If the message can or already has been executed, this returns null
Parameters
| Parameter | Type | Description |
|---|---|---|
l2Provider | Provider |
Returns
Promise\< null | BigNumber >
expected L1 block number where the L2 to L1 message will be executable. Returns null if the message can be or already has been executed
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:419
hasExecuted()
protected hasExecuted(l2Provider): Promise< boolean >
Check if this message has already been executed in the Outbox
Parameters
| Parameter | Type |
|---|---|
l2Provider | Provider |
Returns
Promise\< boolean >
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:207
status()
status(l2Provider): Promise< L2ToL1MessageStatus >
Get the status of this message In order to check if the message has been executed proof info must be provided.
Parameters
| Parameter | Type |
|---|---|
l2Provider | Provider |
Returns
Promise\< L2ToL1MessageStatus >
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:222
waitUntilReadyToExecute()
waitUntilReadyToExecute(l2Provider, retryDelay = 500): Promise< CONFIRMED | EXECUTED >
Waits until the outbox entry has been created, and will not return until it has been. WARNING: Outbox entries are only created when the corresponding node is confirmed. Which can take 1 week+, so waiting here could be a very long operation.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
l2Provider | Provider | undefined | - |
retryDelay | number | 500 |
Returns
Promise\< CONFIRMED | EXECUTED >
outbox entry status (either executed or confirmed but not pending)
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:397
fromEvent()
static fromEvent<T>(
l1SignerOrProvider,
event,
l1Provider?): L2ToL1MessageReaderOrWriterNitro< T >
Instantiates a new L2ToL1MessageWriterNitro or L2ToL1MessageReaderNitro object.
Type parameters
| Parameter |
|---|
T extends SignerOrProvider |
Parameters
| Parameter | Type | Description |
|---|---|---|
l1SignerOrProvider | T | Signer or provider to be used for executing or reading the L2-to-L1 message. |
event | object | The event containing the data of the L2-to-L1 message. |
event.arbBlockNum | BigNumber | - |
event.caller? | string | - |
event.callvalue? | BigNumber | - |
event.data? | string | - |
event.destination? | string | - |
event.ethBlockNum? | BigNumber | - |
event.hash? | BigNumber | - |
event.position? | BigNumber | - |
event.timestamp? | BigNumber | - |
l1Provider? | Provider | Optional. Used to override the Provider which is attached to l1SignerOrProvider in case you need more control. This will be a required parameter in a future major version update. |
Returns
L2ToL1MessageReaderOrWriterNitro\< T >
Inherited from
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:136
L2ToL1MessageWriterNitro
Provides read and write access for nitro l2-to-l1-messages
Extends
Constructors
constructor()
new L2ToL1MessageWriterNitro(
l1Signer,
event,
l1Provider?): L2ToL1MessageWriterNitro
Instantiates a new L2ToL1MessageWriterNitro object.
Parameters
| Parameter | Type | Description |
|---|---|---|
l1Signer | Signer | The signer to be used for executing the L2-to-L1 message. |
event | object | The event containing the data of the L2-to-L1 message. |
event.arbBlockNum | BigNumber | - |
event.caller? | string | - |
event.callvalue? | BigNumber | - |
event.data? | string | - |
event.destination? | string | - |
event.ethBlockNum? | BigNumber | - |
event.hash? | BigNumber | - |
event.position? | BigNumber | - |
event.timestamp? | BigNumber | - |
l1Provider? | Provider | Optional. Used to override the Provider which is attached to l1Signer in case you need more control. This will be a required parameter in a future major version update. |
Returns
Overrides
L2ToL1MessageReaderNitro.constructor
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:514
Properties
| Property | Type | Description |
|---|---|---|
private readonly l1Signer | Signer | The signer to be used for executing the L2-to-L1 message. |
Methods
execute()
execute(l2Provider, overrides?): Promise< ContractTransaction >
Executes the L2ToL1Message on L1. Will throw an error if the outbox entry has not been created, which happens when the corresponding assertion is confirmed.
Parameters
| Parameter | Type |
|---|---|
l2Provider | Provider |
overrides? | Overrides |
Returns
Promise\< ContractTransaction >
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:528
getFirstExecutableBlock()
getFirstExecutableBlock(l2Provider): Promise< null | BigNumber >
Estimates the L1 block number in which this L2 to L1 tx will be available for execution. If the message can or already has been executed, this returns null
Parameters
| Parameter | Type | Description |
|---|---|---|
l2Provider | Provider |
Returns
Promise\< null | BigNumber >
expected L1 block number where the L2 to L1 message will be executable. Returns null if the message can be or already has been executed
Inherited from
L2ToL1MessageReaderNitro.getFirstExecutableBlock
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:419
hasExecuted()
protected hasExecuted(l2Provider): Promise< boolean >
Check if this message has already been executed in the Outbox
Parameters
| Parameter | Type |
|---|---|
l2Provider | Provider |
Returns
Promise\< boolean >
Inherited from
L2ToL1MessageReaderNitro.hasExecuted
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:207
status()
status(l2Provider): Promise< L2ToL1MessageStatus >
Get the status of this message In order to check if the message has been executed proof info must be provided.
Parameters
| Parameter | Type |
|---|---|
l2Provider | Provider |
Returns
Promise\< L2ToL1MessageStatus >
Inherited from
L2ToL1MessageReaderNitro.status
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:222
waitUntilReadyToExecute()
waitUntilReadyToExecute(l2Provider, retryDelay = 500): Promise< CONFIRMED | EXECUTED >
Waits until the outbox entry has been created, and will not return until it has been. WARNING: Outbox entries are only created when the corresponding node is confirmed. Which can take 1 week+, so waiting here could be a very long operation.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
l2Provider | Provider | undefined | - |
retryDelay | number | 500 |
Returns
Promise\< CONFIRMED | EXECUTED >
outbox entry status (either executed or confirmed but not pending)
Inherited from
L2ToL1MessageReaderNitro.waitUntilReadyToExecute
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:397
fromEvent()
static fromEvent<T>(
l1SignerOrProvider,
event,
l1Provider?): L2ToL1MessageReaderOrWriterNitro< T >
Instantiates a new L2ToL1MessageWriterNitro or L2ToL1MessageReaderNitro object.
Type parameters
| Parameter |
|---|
T extends SignerOrProvider |
Parameters
| Parameter | Type | Description |
|---|---|---|
l1SignerOrProvider | T | Signer or provider to be used for executing or reading the L2-to-L1 message. |
event | object | The event containing the data of the L2-to-L1 message. |
event.arbBlockNum | BigNumber | - |
event.caller? | string | - |
event.callvalue? | BigNumber | - |
event.data? | string | - |
event.destination? | string | - |
event.ethBlockNum? | BigNumber | - |
event.hash? | BigNumber | - |
event.position? | BigNumber | - |
event.timestamp? | BigNumber | - |
l1Provider? | Provider | Optional. Used to override the Provider which is attached to l1SignerOrProvider in case you need more control. This will be a required parameter in a future major version update. |
Returns
L2ToL1MessageReaderOrWriterNitro\< T >
Inherited from
L2ToL1MessageReaderNitro.fromEvent
Source
arbitrum-sdk/src/lib/message/L2ToL1MessageNitro.ts:136
L2ToL1MessageReaderOrWriterNitro
L2ToL1MessageReaderOrWriterNitro: <T> T extends Provider ? L2ToL1MessageReaderNitro : L2ToL1MessageWriterNitro
Conditional type for Signer or Provider. If T is of type Provider then L2ToL1MessageReaderOrWriter\<T> will be of type L2ToL1MessageReader. If T is of type Signer then L2ToL1MessageReaderOrWriter\<T> will be of type L2ToL1MessageWriter.
Type parameters
| Parameter |
|---|
T extends SignerOrProvider |