{
  "name": "effect-ts-laws",
  "version": "1.3.8",
  "description": "effect-ts law testing using fast-check.",
  "type": "module",
  "author": "Ran Eilam <ran@haag59.com> (https://middle-ages.github.io/)",
  "homepage": "https://github.com/middle-ages/effect-ts-laws",
  "bugs": "https://github.com/middle-ages/effect-ts-laws/issues",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/middle-ages/effect-ts-laws.git"
  },
  "license": "ISC",
  "keywords": [
    "effect",
    "fast-check",
    "law-testing",
    "property-testing",
    "property-based-testing"
  ],
  "devDependencies": {
    "@eslint/js": "^9.28.0",
    "@fast-check/vitest": "0.2.1",
    "@tsconfig/node-lts": "^22.0.1",
    "@tsconfig/strictest": "^2.0.5",
    "@types/node": "^24.0.1",
    "@vitest/coverage-v8": "^3.2.3",
    "@vitest/ui": "^3.2.3",
    "eslint": "^9.28.0",
    "eslint-config-prettier": "^10.1.5",
    "eslint-plugin-prettier": "^5.4.1",
    "fast-check": "^4.1.1",
    "jiti": "^2.4.2",
    "madge": "^8.0.0",
    "prettier": "^3.5.3",
    "typedoc": "^0.28.5",
    "typescript": "^5.8.3",
    "typescript-eslint": "^8.34.0",
    "vite": "^6.3.5",
    "vitest": "^3.2.3"
  },
  "dependencies": {
    "@effect/typeclass": "^0.35.6",
    "effect": "^3.16.6"
  },
  "peerDependencies": {
    "@effect/typeclass": "^0.35.6",
    "@fast-check/vitest": "^0.2.1",
    "effect": "^3.16.6",
    "fast-check": "^4.1.1",
    "vitest": "^3.2.3"
  },
  "prettier": {
    "trailingComma": "all",
    "tabWidth": 2,
    "semi": false,
    "singleQuote": true,
    "arrowParens": "avoid",
    "bracketSpacing": false,
    "bracketSameLine": true,
    "endOfLine": "lf"
  },
  "engines": {
    "node": ">=22.0.0"
  },
  "exports": {
    ".": {
      "import": {
        "types": "./src/index.d.ts",
        "import": "./src/index.js"
      }
    },
    "./typeclass": {
      "import": {
        "types": "./src/typeclass.d.ts",
        "import": "./src/typeclass.js"
      }
    },
    "./typeclass/*": {
      "import": {
        "types": "./src/typeclass/*.d.ts",
        "import": "./src/typeclass/*.js"
      }
    },
    "./vitest": {
      "import": {
        "types": "./src/vitest.d.ts",
        "import": "./src/vitest.js"
      }
    }
  },
  "imports": {
    "#effect-ts-laws": {
      "types": "./src/index.d.ts",
      "import": "./src/index.js"
    },
    "#test": {
      "types": "./src/vitest.d.ts",
      "import": "./src/vitest.js"
    },
    "#law": {
      "types": "./src/law.d.ts",
      "import": "./src/law.js"
    },
    "#laws": {
      "types": "./src/laws.d.ts",
      "import": "./src/laws.js"
    },
    "#util": {
      "types": "./src/util.d.ts",
      "import": "./src/util.js"
    },
    "#arbitrary": {
      "types": "./src/arbitrary.d.ts",
      "import": "./src/arbitrary.js"
    },
    "#algebra": {
      "types": "./src/laws/algebra.ts",
      "import": "./src/laws/algebra.js"
    },
    "#typeclass": {
      "types": "./src/typeclass.d.ts",
      "import": "./src/typeclass.js"
    },
    "#typeclass/*": {
      "types": "./src/typeclass/*.d.ts",
      "import": "./src/typeclass/*.js"
    }
  },
  "scripts": {
    "clean": "dev/clean",
    "lint": "eslint --config config/eslint.config.ts src tests",
    "lint:fix": "eslint --config config/eslint.config.ts --fix src tests",
    "typecheck": "tsc -b --noEmit",
    "test": "vitest -c config/vitest.config.ts --reporter=verbose",
    "coverage": "vitest -c config/vitest.config.ts run --reporter=verbose --coverage",
    "test:run": "vitest -c config/vitest.config.ts run",
    "circular": "madge --circular .",
    "build": "tsc --build",
    "build:all": "dev/build-all",
    "run:examples": "dev/run-examples",
    "build:docs": "dev/build-docs",
    "ls:deps": "pnpm ls --prod",
    "ls:deps:dev": "pnpm ls --dev",
    "publish:docs": "dev/publish-docs",
    "npm": "dev/publish"
  }
}