{
  "name": "interacto",
  "description": "Front-end framework for processing user interface events in TypeScript",
  "version": "8.2.0",
  "author": "Arnaud Blouin",
  "contributors": [
    "Gwendal Didot",
    "Rémi Daniel"
  ],
  "keywords": [
    "event processing",
    "user interaction",
    "user interface",
    "ui",
    "undo",
    "redo",
    "front-end",
    "framework",
    "touch",
    "dnd",
    "drag and drop",
    "typescript"
  ],
  "bugs": {
    "url": "https://github.com/interacto/interacto-ts/issues"
  },
  "homepage": "https://github.com/interacto/interacto-ts",
  "repository": "https://github.com/interacto/interacto-ts.git",
  "license": "GPL-3.0",
  "main": "./dist/interacto.js",
  "module": "./dist/interacto.mjs",
  "types": "./dist/interacto.d.ts",
  "exports": {
    ".": {
      "import": {
        "types": "./dist/interacto.d.ts",
        "default": "./dist/interacto.mjs"
      }
    }
  },
  "devDependencies": {
    "@commitlint/cli": "19.6.0",
    "@commitlint/config-conventional": "19.6.0",
    "@eslint/js": "9.15.0",
    "@jest/globals": "29.7.0",
    "@rollup/plugin-terser": "0.4.4",
    "@stryker-mutator/core": "7.3.0",
    "@stryker-mutator/jest-runner": "7.3.0",
    "@stylistic/eslint-plugin": "2.11.0",
    "@types/eslint__js": "8.42.3",
    "@types/jest": "29.5.14",
    "@types/node": "20.14.15",
    "barrelsby": "2.8.1",
    "eslint": "9.15.0",
    "eslint-plugin-array-func": "5.0.2",
    "eslint-plugin-import": "2.31.0",
    "eslint-plugin-jest": "28.9.0",
    "eslint-plugin-jsdoc": "50.5.0",
    "eslint-plugin-tsdoc": "0.4.0",
    "eslint-plugin-unicorn": "56.0.1",
    "globals": "15.11.0",
    "husky": "9.0.11",
    "interacto-nono": "0.5.0",
    "jest": "29.7.0",
    "jest-environment-jsdom": "29.7.0",
    "jest-mock-extended": "3.0.7",
    "rollup": "3.29.5",
    "rollup-plugin-dts": "6.1.1",
    "rollup-plugin-esbuild": "6.1.1",
    "ts-jest": "29.2.5",
    "typedoc": "0.26.11",
    "typescript": "5.6.3",
    "typescript-eslint": "8.15.0"
  },
  "scripts": {
    "package": "npm run pre-build && npm run build && npm run doc",
    "build": "rollup -c",
    "generate-barrels": "barrelsby -c ./barrelsby-config.json --delete",
    "compile": "tsc",
    "compile-test": "tsc -p tsconfig.test.json",
    "pre-build": "npm run clean && npm run generate-barrels && npm run compile && npm run lint && npm run compile-test && npm run coverage",
    "clean": "(rm -rf dist out-test coverage .stryker-tmp)",
    "clean-all": "npm run clean && (rm -rf reports docs)",
    "test": "jest",
    "lint": "eslint src test",
    "lint-fix": "eslint src test --fix",
    "coverage": "jest --coverage --collectCoverageFrom=src*/**/*.ts --coverageDirectory reports",
    "doc": "typedoc --out docs src/interacto.ts",
    "test-publish": "npm pack",
    "gen-changelog": "git log --pretty=\"* %s\" $(git describe --tags --abbrev=0 @^)..@ | sort > commits",
    "mutation": "npx stryker run",
    "commitlint": "commitlint --edit"
  },
  "dependencies": {
    "rxjs": "7.8.1"
  },
  "files": [
    "dist/"
  ],
  "jest": {
    "transform": {
      ".(ts|tsx)": [
        "ts-jest",
        {
          "tsconfig": "tsconfig.test.json"
        }
      ]
    },
    "testEnvironment": "jsdom",
    "coverageReporters": [
      "lcov",
      "cobertura",
      "clover"
    ],
    "coverageThreshold": {
      "global": {
        "branches": 80,
        "functions": 90,
        "lines": 90,
        "statements": 90
      }
    },
    "testRegex": "(.*\\.)(test|spec)\\.ts$",
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js"
    ]
  },
  "engines": {
    "node": ">=20.10.0"
  }
}
