{
  "name": "computed-types",
  "version": "1.11.2",
  "description": "Runtime validation types for TypeScript.",
  "keywords": [
    "runtime",
    "validation",
    "type",
    "typescript",
    "function",
    "schema",
    "functional",
    "composition",
    "interfaces",
    "data",
    "input",
    "neuledge"
  ],
  "scripts": {
    "type-check": "tsc --noEmit",
    "type-check:watch": "npm run type-check -- --watch",
    "clean": "rm -rf lib",
    "build": "npm run build:types && npm run build:js",
    "build:types": "tsc --emitDeclarationOnly",
    "build:js": "babel src --out-dir lib --extensions \".js,.ts\" --source-maps inline",
    "lint": "eslint \"src/**\"",
    "lint:strict": "npm run lint -- --max-warnings 0",
    "fix": "npm run fix:lint",
    "fix:lint": "npm run lint -- --fix",
    "mocha": "TS_NODE_FILES=true mocha -r ts-node/register \"src/**/*.test.ts\" --timeout 10000",
    "mocha:coverage": "nyc npm run mocha && nyc report --reporter=lcov",
    "mocha:build": "mocha lib/**/*.test.js --timeout 10000",
    "test": "npm run type-check && npm run lint -- --quiet && npm run mocha",
    "coverage": "npm run type-check && npm run lint -- --quiet && npm run mocha:coverage",
    "test:build": "npm run mocha:build",
    "test:commit": "if [[ -z \"$(git status --untracked-files=no --porcelain)\" ]]; then\n  echo \"All filed committed.\"\nelse\n  echo \"Uncommitted changes found. Please Commit them first.\" && exit 1\nfi",
    "prepare": "npm run clean && npm run build && husky install",
    "prepublishOnly": "npm run test:commit && npm run test:build && npm run lint:strict",
    "postpublish": "git push && git push --tags",
    "postversion": "npm publish"
  },
  "author": "Moshe Simantov <me@moshe.io>",
  "repository": "https://github.com/neuledge/computed-types",
  "license": "MIT",
  "main": "lib/index",
  "module": "lib/index",
  "types": "lib/index",
  "exports": {
    ".": {
      "import": "./index.mjs",
      "require": "./lib/index.js"
    },
    "./lib/*": "./lib/*"
  },
  "files": [
    "index.mjs",
    "/lib/*"
  ],
  "devDependencies": {
    "@babel/cli": "^7.17.6",
    "@babel/core": "^7.17.8",
    "@babel/plugin-proposal-class-properties": "^7.16.7",
    "@babel/plugin-proposal-decorators": "^7.17.8",
    "@babel/plugin-proposal-object-rest-spread": "^7.17.3",
    "@babel/preset-env": "^7.16.11",
    "@babel/preset-typescript": "^7.16.7",
    "@types/chai": "^4.3.0",
    "@types/chai-as-promised": "^7.1.5",
    "@types/mocha": "^9.1.0",
    "@typescript-eslint/eslint-plugin": "^5.15.0",
    "@typescript-eslint/parser": "^5.15.0",
    "babel-plugin-transform-typescript-metadata": "^0.3.2",
    "chai": "^4.3.6",
    "chai-as-promised": "^7.1.1",
    "coveralls": "^3.1.1",
    "eslint": "^8.11.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-plugin-prettier": "^4.0.0",
    "husky": "^7.0.4",
    "mocha": "^9.2.2",
    "nyc": "^15.1.0",
    "prettier": "^2.6.0",
    "ts-node": "^10.7.0",
    "typescript": "^4.6.2"
  },
  "lint-staged": {
    "src/**/*": "eslint"
  }
}
