{
  "name": "qtests",
  "version": "4.2.2",
  "description": "Node.js testing framework, Node.js stubbing, method stubbing, ESM testing, console mocking, environment management, ESM and TypeScript support, circuit breaker utilities, security validation, jest HTTP mocking, and auto test generation",
  "publishConfig": {
    "registry": "https://registry.npmjs.org/",
    "access": "public"
  },
  "type": "module",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "engines": {
    "node": ">=20.0.0"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Bijikyu/qtests.git"
  },
  "bugs": {
    "url": "https://github.com/Bijikyu/qtests/issues"
  },
  "homepage": "https://github.com/Bijikyu/qtests#readme",
  "exports": {
    ".": "./dist/index.js",
    "./setup": {
      "import": "./dist/setup.js",
      "require": "./setup.cjs",
      "default": "./dist/setup.js"
    },
    "./setup.js": "./dist/setup.js",
    "./setup.cjs": "./setup.cjs",
    "./loader": "./loader.mjs",
    "./loader.mjs": "./loader.mjs",
    "./lib/*.js": "./dist/lib/*.js",
    "./lib/*": "./dist/lib/*.js",
    "./lib/routeTestUtils": "./dist/lib/routeTestUtils.js",
    "./lib/errorHandling": "./dist/lib/errorHandling/index.js",
    "./lib/memory": "./dist/lib/memory/index.js",
    "./utils/*.js": "./dist/utils/*.js",
    "./utils/*": "./dist/utils/*.js",
    "./config/*.js": "./dist/config/*.js",
    "./config/*": "./dist/config/*.js"
  },
  "bin": {
    "qtests-ts-runner": "bin/qtests-ts-runner",
    "qtests-ts-generate": "bin/qtests-generate.mjs",
    "qtests-generate": "bin/qtests-generate.mjs"
  },
  "scripts": {
    "prepare": "node scripts/ensure-runner.mjs && node scripts/ensure-bins.mjs",
    "pretest": "node scripts/clean-dist.mjs && node scripts/ensure-runner.mjs",
    "test": "node qtests-runner.mjs",
    "ci:verify": "node scripts/ci-verify-runner.mjs",
    "build": "node scripts/clean-build.mjs && tsc -p tsconfig.json && node scripts/copy-stubs.mjs",
    "prepublishOnly": "npm run build",
    "test:scalability": "node scripts/benchmarks/memory-benchmark.js",
    "test:scalability:memory": "node scripts/benchmarks/memory-benchmark.js",
    "test:scalability:database": "node scripts/benchmarks/database-benchmark.js",
    "test:scalability:pool": "node scripts/benchmarks/connection-pool-benchmark.js",
    "test:scalability:circuit": "node scripts/benchmarks/circuit-breaker-benchmark.js",
    "test:scalability:report": "node scripts/benchmarks/generate-report.js",
    "monitor:scalability": "node scripts/simple-scalability-test-clean.js",
    "generate:favicon": "node scripts/generate-favicon.mjs"
  },
  "keywords": [
    "testing",
    "stub",
    "mock",
    "test-framework",
    "esm",
    "typescript",
    "console-mock",
    "environment-management",
    "circuit-breaker",
    "http-testing",
    "auto-test-generation",
    "security-testing",
    "jest-compatible",
    "offline-testing",
    "side-effect-free",
    "axios",
    "winston"
  ],
  "author": "Q",
  "license": "SEE LICENSE IN LICENSE",
  "dependencies": {
    "@langchain/core": "^1.1.40",
    "@types/fs-extra": "^11.0.4",
    "@types/opossum": "^8.1.9",
    "@types/sinon": "^21.0.0",
    "@types/sinonjs__fake-timers": "^8.1.5",
    "axios": "^1.9.0",
    "dotenv": "^17.2.3",
    "express": "^4.18.0",
    "fs-extra": "^11.3.3",
    "generic-pool": "^3.9.0",
    "happy-dom": "^20.1.0",
    "helmet": "^8.1.0",
    "ioredis": "^5.8.2",
    "joi": "^18.0.2",
    "msw": "^2.12.7",
    "node-cache": "^5.1.2",
    "opossum": "^9.0.0",
    "p-queue": "^8.1.1",
    "p-retry": "^7.1.1",
    "p-timeout": "^7.0.1",
    "pg": "^8.17.1",
    "qerrors": "^1.2.4",
    "rate-limiter-flexible": "^5.0.5",
    "redis": "^4.6.0",
    "secure-json-parse": "^4.1.0",
    "sinon": "^21.0.0",
    "winston": "^3.17.0",
    "zod": "^3.25.76"
  },
  "peerDependencies": {
    "jest": ">=29.0.0"
  },
  "peerDependenciesMeta": {
    "jest": {
      "optional": true
    }
  },
  "devDependencies": {
    "@babel/core": "^7.28.3",
    "@babel/preset-env": "^7.28.3",
    "@bijikyu/agentsqripts": "2.0.2",
    "@bijikyu/fileflows": "3.0.0",
    "@openai/codex": "^0.53.0",
    "@types/express": "^5.0.6",
    "@types/jest": "^30.0.0",
    "@types/joi": "^17.2.2",
    "@types/secure-json-parse": "^1.0.5",
    "babel-jest": "^30.2.0",
    "babel-plugin-transform-import-meta": "^2.3.3",
    "commoncontext": "^1.0.3",
    "express-rate-limit": "^7.0.0",
    "jest": "^30.2.0",
    "madge": "^8.0.0",
    "npmcontext": "^1.0.4",
    "opencode-ai": "1.14.19",
    "png-to-ico": "^3.0.1",
    "sharp": "^0.34.5",
    "ts-jest": "^29.4.6",
    "tsx": "^4.20.5",
    "typescript": "^5.6.3"
  },
  "overrides": {
    "minimatch": "^10.2.1",
    "glob": "^11.0.0",
    "qtests": "file:."
  },
  "files": [
    "bin",
    "dist",
    "lib/templates",
    "templates",
    "scripts",
    "setup.cjs",
    "qtests-runner.mjs",
    "README.md",
    "LICENSE"
  ]
}
