{
  "name": "root",
  "private": true,
  "engines": {
    "node": ">=20.1.0 <21 || >=22 <23"
  },
  "packageManager": "yarn@1.22.22+sha256.c17d3797fb9a9115bf375e31bfd30058cac6bc9c3b8807a3d8cb2094794b51ca",
  "workspaces": [
    "packages/*"
  ],
  "scripts": {
    "clean": "rm -rf ./packages/*/lib ./packages/*/*.tsbuildinfo",
    "clean:nm": "rm -rf ./packages/*/node_modules ./node_modules",
    "build": "lerna run build",
    "build:bundle": "lerna run build:bundle",
    "build:watch": "lerna exec --parallel -- 'yarn run build:watch'",
    "build:ifchanged": "lerna exec -- ../../scripts/build_if_changed.sh",
    "lint": "biome check",
    "lint:fix": "yarn lint --write",
    "lint-dashboards": "node scripts/lint-grafana-dashboards.mjs ./dashboards",
    "check-build": "lerna run check-build",
    "check-bundle": "lerna run check-bundle",
    "check-readme": "lerna run check-readme",
    "check-types": "lerna run check-types",
    "check-spelling": "pyspelling -c .pyspelling.yml -v",
    "docs:build": "lerna run check-readme && lerna run docs:build && ./scripts/prepare-docs.sh",
    "docs:serve": "yarn --cwd docs install && yarn --cwd docs start",
    "docs:lint": "prettier '**/*.md' --check",
    "docs:lint:fix": "prettier '**/*.md' --write",
    "test": "lerna run test --concurrency 1",
    "test:unit": "lerna run test:unit --concurrency 1",
    "test:browsers": "lerna run test:browsers --concurrency 1",
    "test:e2e": "lerna run test:e2e --concurrency 1",
    "test:e2e:sim": "lerna run test:e2e:sim",
    "download-spec-tests": "lerna run download-spec-tests",
    "test:spec": "lerna run test:spec",
    "benchmark": "yarn benchmark:files 'packages/*/test/perf/**/*.test.ts'",
    "benchmark:files": "NODE_OPTIONS='--max-old-space-size=4096 --loader=ts-node/esm' benchmark --config .benchrc.yaml --defaultBranch unstable",
    "release:create-rc": "node scripts/release/create_rc.mjs",
    "release:tag-rc": "node scripts/release/tag_rc.mjs",
    "release:tag-stable": "node scripts/release/tag_stable.mjs",
    "release:publish": "lerna publish from-package --yes --no-verify-access"
  },
  "devDependencies": {
    "@actions/core": "^1.10.1",
    "@chainsafe/benchmark": "^1.2.3",
    "@biomejs/biome": "^1.9.3",
    "@types/node": "^20.12.8",
    "@vitest/browser": "^3.0.6",
    "@vitest/coverage-v8": "^3.0.6",
    "crypto-browserify": "^3.12.0",
    "dotenv": "^16.4.5",
    "electron": "^26.2.2",
    "https-browserify": "^1.0.0",
    "jsdom": "^23.0.1",
    "lerna": "^7.3.0",
    "libp2p": "1.4.3",
    "node-gyp": "^9.4.0",
    "npm-run-all": "^4.1.5",
    "path-browserify": "^1.0.1",
    "prettier": "^3.2.5",
    "process": "^0.11.10",
    "rollup-plugin-visualizer": "^5.12.0",
    "stream-browserify": "^3.0.0",
    "stream-http": "^3.2.0",
    "supertest": "^6.3.3",
    "ts-node": "^10.9.2",
    "typescript": "^5.7.3",
    "typescript-docs-verifier": "^2.5.3",
    "vite": "^6.0.11",
    "vite-plugin-dts": "^4.5.0",
    "vite-plugin-node-polyfills": "^0.23.0",
    "vite-plugin-top-level-await": "^1.5.0",
    "vitest": "^3.0.6",
    "vitest-when": "^0.6.0",
    "wait-port": "^1.1.0",
    "webdriverio": "^9.7.2"
  },
  "resolutions": {
    "dns-over-http-resolver": "^2.1.1",
    "loupe": "^2.3.6",
    "testcontainers/**/nan": "^2.19.0"
  }
}
