// Copyright © Aptos // SPDX-License-Identifier: Apache-2.0 import { Deserializer, Network, NetworkToChainId, Serializer, } from '@aptos-labs/ts-sdk'; import { ExtendedNetwork, shelbynet } from './shared'; export type SerializeFn = (serializer: Serializer, value: T) => void; export type DeserializeFn = (deserializer: Deserializer) => T; export function chainIdToNetwork(chainId: number): ExtendedNetwork { if (chainId === NetworkToChainId.mainnet) { return Network.MAINNET; } if (chainId === NetworkToChainId.testnet) { return Network.TESTNET; } // At the time of this change, shelbynet's chain id is 59. // In the future, shelbynet will be in the 100-124 range if ((chainId >= 50 && chainId < 100) || (chainId >= 100 && chainId < 125)) { return shelbynet.name; } return Network.DEVNET; } export function isSupportedNetwork( network: string, ): network is ExtendedNetwork { return [ Network.MAINNET, Network.TESTNET, Network.DEVNET, shelbynet.name, ].includes(network as ExtendedNetwork); }