Skip to main content

networks

Interfaces

ArbitrumNetwork

Defined in: dataEntities/networks.ts:32

Represents an Arbitrum chain, e.g. Arbitrum One, Arbitrum Sepolia, or an L3 chain.

Properties

PropertyTypeDescriptionDefined in
chainIdnumberId of the chain.dataEntities/networks.ts:40
confirmPeriodBlocksnumberThe time allowed for validators to dispute or challenge state assertions. Measured in L1 blocks.dataEntities/networks.ts:60
ethBridgeEthBridgeThe core contractsdataEntities/networks.ts:48
isBold?booleanHas the network been upgraded to bold. True if yes, otherwise undefined This is a temporary property and will be removed in future if Bold is widely adopted and the legacy challenge protocol is deprecateddataEntities/networks.ts:84
isCustombooleanWhether or not the chain was registered by the user.dataEntities/networks.ts:78
isTestnetbooleanWhether or not it is a testnet chain.dataEntities/networks.ts:74
namestringName of the chain.dataEntities/networks.ts:36
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 chaindataEntities/networks.ts:70
parentChainIdnumberChain id of the parent chain, i.e. the chain on which this chain settles to.dataEntities/networks.ts:44
retryableLifetimeSeconds?numberRepresents how long a retryable ticket lasts for before it expires (in seconds). Defaults to 7 days.dataEntities/networks.ts:64
teleporter?TeleporterThe teleporter contracts.dataEntities/networks.ts:56
tokenBridge?TokenBridgeThe token bridge contracts.dataEntities/networks.ts:52

L2NetworkTokenBridge

Defined in: dataEntities/networks.ts:131

This type is only here for when you want to achieve backwards compatibility between SDK v3 and v4.

Please see TokenBridge for the latest type.

Deprecated

since v4

Type Aliases

L2Network

type L2Network = Prettify<Omit<ArbitrumNetwork, "chainId" | "parentChainId" | "tokenBridge"> & object>;

Defined in: dataEntities/networks.ts:94

This type is only here for when you want to achieve backwards compatibility between SDK v3 and v4.

Please see ArbitrumNetwork for the latest type.

Deprecated

since v4

Functions

assertArbitrumNetworkHasTokenBridge()

function assertArbitrumNetworkHasTokenBridge<T>(network: T): asserts network is T & { tokenBridge: TokenBridge };

Defined in: dataEntities/networks.ts:554

Asserts that the given object has a token bridge. This is useful because not all Arbitrum network operations require a token bridge.

Type Parameters

Type Parameter
T extends ArbitrumNetwork

Parameters

ParameterTypeDescription
networkTArbitrumNetwork object

Returns

asserts network is T & { tokenBridge: TokenBridge }

Throws

ArbSdkError if the object does not have a token bridge


getArbitrumNetwork()

Call Signature

function getArbitrumNetwork(chainId: number): ArbitrumNetwork;

Defined in: dataEntities/networks.ts:316

Returns the Arbitrum chain associated with the given signer, provider or chain id.

Parameters
ParameterType
chainIdnumber
Returns

ArbitrumNetwork

Note

Throws if the chain is not an Arbitrum chain.

Call Signature

function getArbitrumNetwork(signerOrProvider: SignerOrProvider): Promise<ArbitrumNetwork>;

Defined in: dataEntities/networks.ts:317

Returns the Arbitrum chain associated with the given signer, provider or chain id.

Parameters
ParameterType
signerOrProviderSignerOrProvider
Returns

Promise<ArbitrumNetwork>

Note

Throws if the chain is not an Arbitrum chain.


getArbitrumNetworkInformationFromRollup()

function getArbitrumNetworkInformationFromRollup(rollupAddress: string, parentProvider: Provider): Promise<ArbitrumNetworkInformationFromRollup>;

Defined in: dataEntities/networks.ts:376

Returns all the information about an Arbitrum network that can be fetched from its Rollup contract.

Parameters

ParameterTypeDescription
rollupAddressstringAddress of the Rollup contract on the parent chain
parentProviderProviderProvider for the parent chain

Returns

Promise<ArbitrumNetworkInformationFromRollup>

An ArbitrumNetworkInformationFromRollup object


getArbitrumNetworks()

function getArbitrumNetworks(): ArbitrumNetwork[];

Defined in: dataEntities/networks.ts:359

Returns all Arbitrum networks registered in the SDK, both default and custom.

Returns

ArbitrumNetwork[]


getChildrenForNetwork()

function getChildrenForNetwork(parentChainOrChainId: number | ArbitrumNetwork): ArbitrumNetwork[];

Defined in: dataEntities/networks.ts:298

Returns a list of children chains for the given chain or chain id.

Parameters

ParameterType
parentChainOrChainIdnumber | ArbitrumNetwork

Returns

ArbitrumNetwork[]


isParentNetwork()

function isParentNetwork(parentChainOrChainId: number | ArbitrumNetwork): boolean;

Defined in: dataEntities/networks.ts:283

Determines if a chain is a parent of any other chain. Could be an L1 or an L2 chain.

Parameters

ParameterType
parentChainOrChainIdnumber | ArbitrumNetwork

Returns

boolean


mapL2NetworkToArbitrumNetwork()

function mapL2NetworkToArbitrumNetwork(l2Network: object): ArbitrumNetwork;

Defined in: dataEntities/networks.ts:534

Maps the old L2Network (from SDK v3) to ArbitrumNetwork (from SDK v4).

Parameters

ParameterTypeDescription
l2Network{ chainID: number; confirmPeriodBlocks: number; ethBridge: EthBridge; isBold?: boolean; isCustom: boolean; isTestnet: boolean; name: string; nativeToken?: string; partnerChainID: number; retryableLifetimeSeconds?: number; teleporter?: Teleporter; tokenBridge: L2NetworkTokenBridge; }-
l2Network.chainIDnumber-
l2Network.confirmPeriodBlocksnumberThe time allowed for validators to dispute or challenge state assertions. Measured in L1 blocks.
l2Network.ethBridgeEthBridgeThe core contracts
l2Network.isBold?booleanHas the network been upgraded to bold. True if yes, otherwise undefined This is a temporary property and will be removed in future if Bold is widely adopted and the legacy challenge protocol is deprecated
l2Network.isCustombooleanWhether or not the chain was registered by the user.
l2Network.isTestnetbooleanWhether or not it is a testnet chain.
l2Network.namestringName of the chain.
l2Network.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
l2Network.partnerChainIDnumber-
l2Network.retryableLifetimeSeconds?numberRepresents how long a retryable ticket lasts for before it expires (in seconds). Defaults to 7 days.
l2Network.teleporter?TeleporterThe teleporter contracts.
l2Network.tokenBridgeL2NetworkTokenBridge-

Returns

ArbitrumNetwork


mapL2NetworkTokenBridgeToTokenBridge()

function mapL2NetworkTokenBridgeToTokenBridge(input: L2NetworkTokenBridge): TokenBridge;

Defined in: dataEntities/networks.ts:510

Maps the old L2Network.tokenBridge (from SDK v3) to ArbitrumNetwork.tokenBridge (from SDK v4).

Parameters

ParameterType
inputL2NetworkTokenBridge

Returns

TokenBridge


registerCustomArbitrumNetwork()

function registerCustomArbitrumNetwork(network: ArbitrumNetwork, options?: object): ArbitrumNetwork;

Defined in: dataEntities/networks.ts:415

Registers a custom Arbitrum network.

Parameters

ParameterTypeDescription
networkArbitrumNetworkArbitrumNetwork to be registered
options?{ throwIfAlreadyRegistered?: boolean; }Additional options
options.throwIfAlreadyRegistered?booleanWhether or not the function should throw if the network is already registered, defaults to false

Returns

ArbitrumNetwork