{
  "name": "pp-test-kit",
  "version": "0.5.3",
  "license": "ISC",
  "description": "A test kit for detecting prototype pollution and gadgets",
  "type": "module",
  "repository": {
    "type": "git",
    "url": "git+https://gitlab.com/ericcornelissen/pp-test-kit.git"
  },
  "engines": {
    "node": "^22 || ^24 || ^26"
  },
  "exports": {
    "./invariant": {
      "import": {
        "default": "./src/invariant.js"
      }
    },
    "./manual": {
      "import": {
        "default": "./src/manual.js"
      }
    },
    "./simulate": {
      "import": {
        "default": "./src/simulate.js"
      }
    },
    "./throwing": {
      "import": {
        "default": "./src/throwing.js"
      }
    }
  },
  "scripts": {
    "_dev-env": "docker run -it --rm --workdir '/pp-test-kit' --mount 'type=bind,source=.,target=/pp-test-kit' --name pp-test-kit-dev-env pp-test-kit-dev-img",
    "_format": "prettier . --ignore-path .gitignore",
    "audit": "npm-run-all audit:*",
    "audit:deprecations": "depreman --errors-only --report-unused",
    "clean": "git clean --force -X _reports/ .cache/ .temp/",
    "coverage": "c8 --config .c8.json npm test",
    "dogfeed": "node --test 'test/dogfeed/*.test.js'",
    "dev-env": "npm run dev-img && npm run _dev-env",
    "dev-img": "docker build --file Containerfile.dev --tag pp-test-kit-dev-img .",
    "format": "npm run _format -- --write",
    "check": "npm-run-all check:*",
    "check:code": "eslint --config .eslint.js",
    "check:formatting": "npm run _format -- --check",
    "check:licenses": "npx licensee --errors-only",
    "check:lockfile": "lockfile-lint",
    "check:manifest": "ls-engines && publint --strict",
    "check:markdown": "markdownlint --config .markdownlint.yml --dot --ignore-path .gitignore .",
    "mutation": "stryker run .stryker.js",
    "test": "node --test 'test/*.test.js'",
    "test:watch": "node --test --watch 'test/*.test.js'",
    "verify": "npm run check && npm run coverage && npm run mutation"
  },
  "dependencies": {
    "callsites": "^4.0.0"
  },
  "devDependencies": {
    "@ericcornelissen/eslint-plugin-top": "3.5.2",
    "@stryker-mutator/core": "8.7.0",
    "@stryker-mutator/tap-runner": "8.7.0",
    "c8": "10.1.2",
    "depreman": "0.3.8",
    "escape-string-regexp": "5.0.0",
    "eslint": "9.20.1",
    "eslint-plugin-jsdoc": "50.2.2",
    "eslint-plugin-regexp": "2.7.0",
    "fast-check": "3.22.0",
    "licensee": "11.1.1",
    "lockfile-lint": "4.14.0",
    "ls-engines": "0.9.3",
    "markdownlint-cli": "0.43.0",
    "npm-run-all2": "7.0.2",
    "prettier": "3.3.3",
    "publint": "0.2.12"
  }
}
