/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { RunScriptResult, DeployContractExecutionResult, NetworkId, } from "@alephium/web3"; import { TokenPair, TokenPairInstance, TokenPairFactory, TokenPairFactoryInstance, Router, RouterInstance, FeeCollectorPerTokenPairImpl, FeeCollectorPerTokenPairImplInstance, FeeCollectorFactoryImpl, FeeCollectorFactoryImplInstance, } from "."; import { default as testnetDeployments } from "../../deployments/.deployments.testnet.json"; import { default as devnetDeployments } from "../../deployments/.deployments.devnet.json"; export type Deployments = { deployerAddress: string; contracts: { TokenPair: DeployContractExecutionResult; TokenPairFactory: DeployContractExecutionResult; Router: DeployContractExecutionResult; FeeCollectorPerTokenPairImpl: DeployContractExecutionResult; FeeCollectorFactoryImpl: DeployContractExecutionResult; }; }; function toDeployments(json: any): Deployments { const contracts = { TokenPair: { ...json.contracts["TokenPair"], contractInstance: TokenPair.at( json.contracts["TokenPair"].contractInstance.address ), }, TokenPairFactory: { ...json.contracts["TokenPairFactory"], contractInstance: TokenPairFactory.at( json.contracts["TokenPairFactory"].contractInstance.address ), }, Router: { ...json.contracts["Router"], contractInstance: Router.at( json.contracts["Router"].contractInstance.address ), }, FeeCollectorPerTokenPairImpl: { ...json.contracts["FeeCollectorPerTokenPairImpl"], contractInstance: FeeCollectorPerTokenPairImpl.at( json.contracts["FeeCollectorPerTokenPairImpl"].contractInstance.address ), }, FeeCollectorFactoryImpl: { ...json.contracts["FeeCollectorFactoryImpl"], contractInstance: FeeCollectorFactoryImpl.at( json.contracts["FeeCollectorFactoryImpl"].contractInstance.address ), }, }; return { ...json, contracts: contracts as Deployments["contracts"], }; } export function loadDeployments( networkId: NetworkId, deployerAddress?: string ): Deployments { const deployments = networkId === "testnet" ? testnetDeployments : networkId === "devnet" ? devnetDeployments : undefined; if (deployments === undefined) { throw Error("The contract has not been deployed to the " + networkId); } const allDeployments: any[] = Array.isArray(deployments) ? deployments : [deployments]; if (deployerAddress === undefined) { if (allDeployments.length > 1) { throw Error( "The contract has been deployed multiple times on " + networkId + ", please specify the deployer address" ); } else { return toDeployments(allDeployments[0]); } } const result = allDeployments.find( (d) => d.deployerAddress === deployerAddress ); if (result === undefined) { throw Error("The contract deployment result does not exist"); } return toDeployments(result); }