import { CONTRACT_NAMES, DEPLOY_TYPES, NETWORK_LIST } from '@configuration'; import { Mnemonic } from 'ethers'; export type NetworkName = (typeof NETWORK_LIST.name)[number]; export type NetworkChainId = (typeof NETWORK_LIST.chainId)[number]; export declare const NetworkNameByChainId: Record; export type DeployType = (typeof DEPLOY_TYPES)[number]; export type ContractName = (typeof CONTRACT_NAMES)[number]; export declare const CONTRACT_FACTORY_NAMES: string[]; export type ContractFactoryName = (typeof CONTRACT_FACTORY_NAMES)[number]; export interface Endpoints { jsonRpc: string; mirror: string; } export interface DeployedContract { address: string; proxyAddress?: string; proxyAdminAddress?: string; } export interface ContractConfig { name: ContractName; factoryName: ContractFactoryName; deployType: DeployType; addresses?: Record; } export default class Configuration { private _mnemonic; private _privateKeys; private _endpoints; private _contracts; constructor(); get mnemonic(): Record; get privateKeys(): Record; get endpoints(): Record; get contracts(): Record; set contracts(contracts: Record); setContractAddressList({ contractName, network, addresses, }: { contractName: ContractName; network: NetworkName; addresses: DeployedContract; }): void; private _initMnemonic; private _initPrivateKeys; private _initEndpoints; private _initContracts; private static _getDeployedAddresses; private static _getEnvironmentVariableList; private static _getEnvironmentVariable; }