{
  "name": "addressable-binary-heaps",
  "version": "1.0.1",
  "description": "A versatile TypeScript library for addressable binary heaps, delivering optimized and scalable min-heap and max-heap implementations, seamlessly supporting both object-oriented and functional paradigms.",
  "keywords": [
    "data structures",
    "binary heap",
    "binary heaps",
    "heap",
    "heaps",
    "max heap",
    "min heap"
  ],
  "author": "Yiannis Stergiou <hello@styiannis.dev>",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/styiannis/addressable-binary-heaps.git"
  },
  "bugs": {
    "url": "https://github.com/styiannis/addressable-binary-heaps.git"
  },
  "source": "src/index.ts",
  "main": "dist/cjs/index.js",
  "module": "dist/es/index.js",
  "types": "dist/@types/index.d.ts",
  "files": [
    "CHANGELOG.md",
    "dist"
  ],
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=8.0.0"
  },
  "commitlint": {
    "extends": [
      "@commitlint/config-conventional"
    ]
  },
  "scripts": {
    "build": "npx rimraf ./dist && rollup -c",
    "dev": "npx rimraf ./dist && rollup -c --watch",
    "check-types": "tsc --noEmit",
    "check-updates": "npx npm-check-updates",
    "ci": "npm run check-types && npm run lint && npm run build && npm run validate-exports",
    "clear": "npx rimraf ./build ./code_documentation ./coverage_report ./dist",
    "docs": "npx rimraf ./code_documentation && npx typedoc@latest --basePath ./ --entryPoints src/index.ts --entryPointStrategy Expand --readme none --includeVersion --out code_documentation --name 'Addressable Binary Heaps'",
    "format": "npx prettier -w ./",
    "lint": "npx oxlint@latest src",
    "prepack": "npm i && npm run build",
    "reset": "npm run clear && npx rimraf ./node_modules ./package-lock.json ./yarn.lock ./pnpm-lock.yaml",
    "test": "jest",
    "test-coverage": "npx rimraf ./coverage_report && jest --coverage --coverageDirectory=coverage_report",
    "test-coverage-watch": "npm run test-coverage -- --watchAll",
    "test-watch": "jest --watchAll",
    "validate-exports": "node ./scripts/validate-exports.js"
  },
  "devDependencies": {
    "@rollup/plugin-node-resolve": "^16.0.1",
    "@rollup/plugin-typescript": "^12.1.2",
    "@tsconfig/node22": "^22.0.1",
    "@types/jest": "^29.5.14",
    "@types/node": "^22.14.0",
    "jest": "^29.7.0",
    "rollup": "^4.39.0",
    "rollup-plugin-dts": "^6.2.1",
    "ts-jest": "^29.3.1",
    "tslib": "^2.8.1",
    "typescript": "^5.8.2"
  },
  "exports": {
    ".": {
      "import": {
        "types": "./dist/@types/index.d.ts",
        "default": "./dist/es/index.js"
      },
      "require": {
        "types": "./dist/@types/index.d.ts",
        "default": "./dist/cjs/index.js"
      }
    },
    "./max-heap": {
      "import": {
        "types": "./dist/@types/core/max-heap.d.ts",
        "default": "./dist/es/core/max-heap.js"
      },
      "require": {
        "types": "./dist/@types/core/max-heap.d.ts",
        "default": "./dist/cjs/core/max-heap.js"
      }
    },
    "./min-heap": {
      "import": {
        "types": "./dist/@types/core/min-heap.d.ts",
        "default": "./dist/es/core/min-heap.js"
      },
      "require": {
        "types": "./dist/@types/core/min-heap.d.ts",
        "default": "./dist/cjs/core/min-heap.js"
      }
    }
  }
}
