{
  "name": "@rumenx/chess",
  "version": "1.0.2",
  "description": "A powerful, type-safe chess engine library for TypeScript/JavaScript with complete chess rules, AI opponents, and REST API",
  "keywords": [
    "chess",
    "chess-engine",
    "typescript",
    "chess-game",
    "ai",
    "rest-api",
    "websocket",
    "fen",
    "pgn",
    "minimax",
    "game-engine",
    "board-game"
  ],
  "homepage": "https://github.com/RumenDamyanov/npm-chess#readme",
  "funding": {
    "type": "github",
    "url": "https://github.com/sponsors/RumenDamyanov"
  },
  "bugs": {
    "url": "https://github.com/RumenDamyanov/npm-chess/issues"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/RumenDamyanov/npm-chess.git"
  },
  "license": "MIT",
  "author": {
    "name": "Rumen Damyanov",
    "email": "contact@rumenx.com",
    "url": "https://github.com/RumenDamyanov"
  },
  "type": "module",
  "main": "./dist/cjs/index.js",
  "module": "./dist/esm/index.js",
  "types": "./dist/types/index.d.ts",
  "exports": {
    ".": {
      "import": {
        "types": "./dist/types/index.d.ts",
        "default": "./dist/esm/index.js"
      },
      "require": {
        "types": "./dist/types/index.d.ts",
        "default": "./dist/cjs/index.js"
      }
    },
    "./engine": {
      "import": "./dist/esm/engine/index.js",
      "require": "./dist/cjs/engine/index.js",
      "types": "./dist/types/engine/index.d.ts"
    },
    "./ai": {
      "import": "./dist/esm/ai/index.js",
      "require": "./dist/cjs/ai/index.js",
      "types": "./dist/types/ai/index.d.ts"
    },
    "./api": {
      "import": "./dist/esm/api/index.js",
      "require": "./dist/cjs/api/index.js",
      "types": "./dist/types/api/index.d.ts"
    },
    "./types": {
      "import": "./dist/esm/types/index.js",
      "require": "./dist/cjs/types/index.js",
      "types": "./dist/types/types/index.d.ts"
    },
    "./utils": {
      "import": "./dist/esm/utils/index.js",
      "require": "./dist/cjs/utils/index.js",
      "types": "./dist/types/utils/index.d.ts"
    }
  },
  "files": [
    "dist",
    "README.md",
    "LICENSE.md",
    "CHANGELOG.md"
  ],
  "scripts": {
    "build": "npm run clean && npm run build:esm && npm run build:cjs && npm run build:types",
    "build:esm": "tsc -p tsconfig.json",
    "build:cjs": "tsc -p tsconfig.cjs.json",
    "build:types": "tsc -p tsconfig.json --declaration --emitDeclarationOnly --declarationDir dist/types",
    "build:watch": "tsc -p tsconfig.json --watch",
    "clean": "rimraf dist coverage .tsbuildinfo",
    "dev": "tsx watch src/index.ts",
    "format": "prettier --write \"src/**/*.ts\" \"tests/**/*.ts\" \"*.{json,md}\"",
    "format:check": "prettier --check \"src/**/*.ts\" \"tests/**/*.ts\" \"*.{json,md}\"",
    "lint": "eslint \"src/**/*.ts\" \"tests/**/*.ts\"",
    "lint:fix": "eslint \"src/**/*.ts\" \"tests/**/*.ts\" --fix",
    "test": "jest",
    "test:watch": "jest --watch",
    "test:coverage": "jest --coverage",
    "test:fast": "jest --config jest.config.fast.js",
    "typecheck": "tsc --noEmit",
    "prepublishOnly": "npm run clean && npm run build && npm test",
    "example:basic": "tsx examples/basic-game.ts",
    "example:api": "tsx examples/api-server.ts",
    "example:ai": "tsx examples/ai-game.ts"
  },
  "dependencies": {
    "compression": "^1.8.1",
    "cors": "^2.8.5",
    "dotenv": "^17.2.3",
    "express": "^5.1.0",
    "uuid": "^13.0.0",
    "winston": "^3.15.0"
  },
  "devDependencies": {
    "@types/compression": "^1.8.1",
    "@types/cors": "^2.8.19",
    "@types/express": "^5.0.3",
    "@types/jest": "^30.0.0",
    "@types/node": "^25.0.2",
    "@types/supertest": "^6.0.3",
    "@types/uuid": "^11.0.0",
    "@types/ws": "^8.5.13",
    "@typescript-eslint/eslint-plugin": "^8.45.0",
    "@typescript-eslint/parser": "^8.45.0",
    "eslint": "^8.57.1",
    "eslint-config-prettier": "^10.1.8",
    "eslint-plugin-prettier": "^5.2.1",
    "jest": "^30.2.0",
    "prettier": "^3.3.3",
    "rimraf": "^6.0.1",
    "supertest": "^7.1.4",
    "ts-jest": "^29.2.5",
    "tslib": "^2.8.1",
    "tsx": "^4.19.1",
    "typescript": "^5.6.3",
    "ws": "^8.18.0"
  },
  "peerDependencies": {
    "express": "^5.1.0",
    "fastify": "^4.0.0 || ^5.0.0"
  },
  "peerDependenciesMeta": {
    "express": {
      "optional": true
    },
    "fastify": {
      "optional": true
    }
  },
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=9.0.0"
  },
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  }
}
