{
  "name": "@xwordly/xword-parser",
  "version": "1.1.0",
  "description": "Fast, type-safe TypeScript library for parsing crossword puzzles (PUZ, iPUZ, JPZ, XD)",
  "main": "./dist/index.js",
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "browser": "./dist/xword-parser.browser.min.js",
      "import": "./dist/index.mjs",
      "require": "./dist/index.js"
    },
    "./lazy": {
      "types": "./dist/lazy.d.ts",
      "import": "./dist/lazy.mjs",
      "require": "./dist/lazy.js"
    },
    "./package.json": "./package.json"
  },
  "sideEffects": false,
  "files": [
    "dist",
    "README.md",
    "LICENSE"
  ],
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  },
  "keywords": [
    "crossword",
    "crossword-puzzle",
    "puzzle",
    "parser",
    "puz",
    "ipuz",
    "jpz",
    "xd",
    "typescript",
    "converter",
    "puzzle-parser",
    "file-parser",
    "acrosslite",
    "puzzle-format",
    "ipuz-format",
    "puz-format",
    "jpz-format",
    "xd-format",
    "crossword-converter",
    "puzzle-library"
  ],
  "author": "Xwordly Team",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/mjkoo/xword-parser"
  },
  "bugs": {
    "url": "https://github.com/xwordly/xword-parser/issues"
  },
  "homepage": "https://github.com/xwordly/xword-parser#readme",
  "type": "module",
  "devDependencies": {
    "@commitlint/cli": "^20.5.0",
    "@commitlint/config-conventional": "^20.5.0",
    "@eslint/js": "^10.0.1",
    "@fast-check/vitest": "^0.3.0",
    "@types/node": "^25.5.0",
    "@vitest/coverage-v8": "^4.1.2",
    "@vitiate/core": "^0.3.0",
    "@vitiate/fuzzed-data-provider": "^0.3.0",
    "eslint": "^10.1.0",
    "eslint-config-prettier": "^10.1.8",
    "globals": "^17.4.0",
    "lefthook": "^2.1.4",
    "prettier": "^3.8.1",
    "tsdown": "^0.21.7",
    "typescript": "^6.0.2",
    "typescript-eslint": "^8.57.2",
    "vitest": "^4.1.2",
    "vitest-sonar-reporter": "^3.0.0"
  },
  "engines": {
    "node": ">=20"
  },
  "dependencies": {
    "buffer": "^6.0.3",
    "fast-xml-parser": "^5.5.9",
    "vitiate": "^0.3.0"
  },
  "scripts": {
    "build": "tsdown",
    "dev": "tsdown --watch",
    "test": "vitest run",
    "test:watch": "vitest watch",
    "test:coverage": "vitest run --coverage --reporter=default --reporter=junit --outputFile.junit=./test-results.xml",
    "test:fuzz": "pnpm exec vitiate regression",
    "bench": "vitest bench",
    "bench:ci": "vitest bench --run --outputJson bench-results.json",
    "bench:compare": "node scripts/compare-benchmarks.js",
    "fuzz": "pnpm exec vitiate fuzz",
    "fuzz:quick": "pnpm exec vitiate fuzz --fuzz-time 60",
    "lint": "eslint . --fix",
    "lint:check": "eslint .",
    "format": "prettier --write \"**/*.{ts,tsx,json,yml,yaml}\"",
    "format:check": "prettier --check \"**/*.{ts,tsx,json,yml,yaml}\"",
    "typecheck": "tsc --noEmit",
    "analyze": "tsdown --devtools",
    "audit": "pnpm audit --prod"
  }
}