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:556

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:318

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:319

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:378

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:361

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:300

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:285

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:536

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:512

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:417

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