import "@nomicfoundation/hardhat-toolbox" import { HardhatUserConfig } from "hardhat/config" import "@nomiclabs/hardhat-solhint" import "solidity-coverage" import "dotenv/config" import "./tasks" const MAINNET_RPC_URL = process.env.MAINNET_RPC_URL || "https://eth-mainnet.g.alchemy.com/v2/your-api-key" const SEPOLIA_RPC_URL = process.env.SEPOLIA_RPC_URL || "https://eth-sepolia.g.alchemy.com/v2/your-api-key" const MATIC_RPC_URL = process.env.MATIC_RPC_URL || "https://polygon-mainnet.g.alchemy.com/v2/your-api-key" const MUMBAI_RPC_URL = process.env.MUMBAI_RPC_URL || "https://polygon-mumbai.g.alchemy.com/v2/v3/your-api-key" const ETHERSCAN_API_KEY = process.env.ETHERSCAN_API_KEY || "api-key" const POLYGONSCAN_API_KEY = process.env.POLYGONSCAN_API_KEY || "api-key" // Import MNEMONIC or single private key const MNEMONIC = process.env.MNEMONIC || "your mnemonic" const PRIVATE_KEY = process.env.PRIVATE_KEY const config: HardhatUserConfig = { defaultNetwork: "hardhat", networks: { mainnet: { url: MAINNET_RPC_URL, accounts: PRIVATE_KEY ? [PRIVATE_KEY] : { mnemonic: MNEMONIC }, }, hardhat: { // // If you want to do some forking, uncomment this // forking: { // url: MAINNET_RPC_URL // } }, localhost: { url: "http://127.0.0.1:8545", }, sepolia: { url: SEPOLIA_RPC_URL, accounts: PRIVATE_KEY ? [PRIVATE_KEY] : { mnemonic: MNEMONIC }, }, matic: { url: MATIC_RPC_URL, accounts: PRIVATE_KEY ? [PRIVATE_KEY] : { mnemonic: MNEMONIC }, }, mumbai: { url: MUMBAI_RPC_URL, accounts: PRIVATE_KEY ? [PRIVATE_KEY] : { mnemonic: MNEMONIC }, }, }, etherscan: { // Your API key for Etherscan // Obtain one at https://etherscan.io/ apiKey: { mainnet: ETHERSCAN_API_KEY, sepolia: ETHERSCAN_API_KEY, // Polygon polygon: POLYGONSCAN_API_KEY, polygonMumbai: POLYGONSCAN_API_KEY, }, }, solidity: { compilers: [ { version: "0.8.28", }, ], }, } export default config