import '@nomicfoundation/hardhat-toolbox'; import '@nomiclabs/hardhat-truffle5'; import '@vechain/sdk-hardhat-plugin'; import 'hardhat-contract-sizer'; import 'hardhat-ignore-warnings'; import 'solidity-coverage'; import 'solidity-docgen'; import 'hardhat-interface-generator'; import '@nomicfoundation/hardhat-verify'; import * as dotenv from 'dotenv'; dotenv.config(); const VECHAIN_DERIVATION_PATH = "m/44'/818'/0'/0"; const getEnvMnemonic = () => { const mnemonic = process.env.MNEMONIC; return mnemonic ?? ''; }; const config = { solidity: { compilers: [ { version: '0.8.20', settings: { optimizer: { enabled: true, runs: 200, }, evmVersion: 'paris', }, }, ], }, contractSizer: { alphaSort: true, disambiguatePaths: false, runOnCompile: true, strict: true, }, mocha: { timeout: 1800000, }, gasReporter: { enabled: false, }, defaultNetwork: 'hardhat', networks: { hardhat: { chainId: 1337, }, vechain_solo: { url: 'http://localhost:8669', accounts: { mnemonic: getEnvMnemonic(), count: 20, path: VECHAIN_DERIVATION_PATH, }, gas: 10000000, }, vechain_testnet: { url: 'https://testnet.vechain.org', chainId: 100010, accounts: { mnemonic: getEnvMnemonic(), count: 20, path: VECHAIN_DERIVATION_PATH, }, gas: 10000000, }, vechain_mainnet: { url: 'https://mainnet.vechain.org', chainId: 100009, accounts: { mnemonic: getEnvMnemonic(), count: 20, path: VECHAIN_DERIVATION_PATH, }, gas: 10000000, }, }, docgen: { pages: 'files', }, sourcify: { enabled: true, apiUrl: 'https://sourcify.dev/server', browserUrl: 'https://repo.sourcify.dev', }, }; export default config;