Skip to main content

Module: assetBridger/ethBridger

EthBridger

Bridger for moving ETH back and forth between parent and child chain

Extends

  • AssetBridger< EthDepositParams | EthDepositToParams | ParentToChildTxReqAndSigner, EthWithdrawParams | ChildToParentTxReqAndSigner >

Properties

PropertyTypeDescription
nativeToken?stringIn case of a chain that uses ETH as its native/gas token, this is either undefined or the zero address

In case of a chain that uses an ERC-20 token from the parent chain as its native/gas token, this is the address of said token on the parent chain

Accessors

nativeTokenIsEth

protected get nativeTokenIsEth(): boolean
Source

arbitrum-sdk/src/lib/assetBridger/assetBridger.ts:68

Inherited from

AssetBridger.nativeTokenIsEth

Methods

approveGasToken()

approveGasToken(params): Promise< TransactionResponse >

Approves the custom gas token to be spent by the Inbox on the parent chain.

Parameters
ParameterTypeDescription
paramsWithParentSigner< ApproveGasTokenParamsOrTxRequest >
Returns

Promise< TransactionResponse >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:219


checkChildChain()

protected checkChildChain(sop): Promise< void >

Check the signer/provider matches the childChain, throws if not

Parameters
ParameterTypeDescription
sopSignerOrProvider
Returns

Promise< void >

Inherited from

AssetBridger.checkChildChain

Source

arbitrum-sdk/src/lib/assetBridger/assetBridger.ts:60


checkParentChain()

protected checkParentChain(sop): Promise< void >

Check the signer/provider matches the parentChain, throws if not

Parameters
ParameterTypeDescription
sopSignerOrProvider
Returns

Promise< void >

Inherited from

AssetBridger.checkParentChain

Source

arbitrum-sdk/src/lib/assetBridger/assetBridger.ts:49


deposit()

deposit(params): Promise< ParentEthDepositTransaction >

Deposit ETH from Parent onto Child chain

Parameters
ParameterTypeDescription
paramsEthDepositParams | ParentToChildTxReqAndSigner
Returns

Promise< ParentEthDepositTransaction >

Overrides

AssetBridger.deposit

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:287


depositTo()

depositTo(params): Promise< ParentContractCallTransaction >

Deposit ETH from parent chain onto a different child chain address

Parameters
ParameterTypeDescription
paramsEthDepositToParams | ParentToChildTransactionRequest & {overrides: Overrides; parentSigner: Signer;} & {childProvider: Provider;}
Returns

Promise< ParentContractCallTransaction >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:339


getApproveGasTokenRequest()

getApproveGasTokenRequest(params?): Required< Pick< TransactionRequest, "data" | "value" | "to" > >

Creates a transaction request for approving the custom gas token to be spent by the inbox on the parent chain

Parameters
ParameterTypeDescription
params?ApproveGasTokenParams
Returns

Required< Pick< TransactionRequest, "data" | "value" | "to" > >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:191


getDepositRequest()

getDepositRequest(params): Promise< OmitTyped< ParentToChildTransactionRequest, "retryableData" > >

Gets tx request for depositing ETH or custom gas token

Parameters
ParameterTypeDescription
paramsEthDepositRequestParams
Returns

Promise< OmitTyped< ParentToChildTransactionRequest, "retryableData" > >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:268


getDepositRequestData()

private getDepositRequestData(params): string

Gets transaction calldata for a tx request for depositing ETH or custom gas token

Parameters
ParameterTypeDescription
paramsEthDepositRequestParams
Returns

string

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:241


getDepositToRequest()

getDepositToRequest(params): Promise< ParentToChildTransactionRequest >

Get a transaction request for an ETH deposit to a different child chain address using Retryables

Parameters
ParameterTypeDescription
paramsEthDepositToRequestParams
Returns

Promise< ParentToChildTransactionRequest >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:312


getWithdrawalRequest()

getWithdrawalRequest(params): Promise< ChildToParentTransactionRequest >

Get a transaction request for an eth withdrawal

Parameters
ParameterTypeDescription
paramsEthWithdrawParams
Returns

Promise< ChildToParentTransactionRequest >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:368


isApproveGasTokenParams()

private isApproveGasTokenParams(params): params is WithParentSigner<ApproveGasTokenParams>

Asserts that the provided argument is of type ApproveGasTokenParams and not ApproveGasTokenTxRequest.

Parameters
ParameterTypeDescription
paramsApproveGasTokenParamsOrTxRequest
Returns

params is WithParentSigner<ApproveGasTokenParams>

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:181


withdraw()

withdraw(params): Promise< ChildContractTransaction >

Withdraw ETH from child chain onto parent chain

Parameters
ParameterTypeDescription
paramsChildToParentTxReqAndSigner | EthWithdrawParams & {childSigner: Signer;}
Returns

Promise< ChildContractTransaction >

Overrides

AssetBridger.withdraw

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:404


fromProvider()

static fromProvider(childProvider): Promise< EthBridger >

Instantiates a new EthBridger from a child chain Provider

Parameters
ParameterTypeDescription
childProviderProvider
Returns

Promise< EthBridger >

Source

arbitrum-sdk/src/lib/assetBridger/ethBridger.ts:173