{
  "name": "@cravingmaker/eslint-config",
  "version": "0.2.0",
  "private": false,
  "description": "Craving Maker's TypeScript-first ESLint configuration (Flat Config)",
  "keywords": [
    "cravingmaker",
    "eslint",
    "eslint-config",
    "style",
    "code-style",
    "lint",
    "typescript"
  ],
  "homepage": "https://github.com/cravingmaker/eslint-config#readme",
  "bugs": {
    "url": "https://github.com/cravingmaker/eslint-config/issues"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/cravingmaker/eslint-config.git"
  },
  "funding": "https://github.com/sponsors/cravingmaker",
  "license": "MIT",
  "author": "cravingmaker (https://github.com/cravingmaker)",
  "sideEffects": false,
  "type": "module",
  "exports": {
    ".": {
      "types": "./dist/index.d.mts",
      "import": "./dist/index.mjs",
      "default": "./dist/index.mjs"
    },
    "./package.json": "./package.json"
  },
  "main": "./dist/index.mjs",
  "types": "./dist/index.d.mts",
  "files": [
    "dist"
  ],
  "scripts": {
    "build": "npm run gen && npm run clean && tsdown",
    "clean": "node --input-type=module --eval \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true })\"",
    "deps:inspect": "node-modules-inspector --no-open",
    "deps:inspect:build": "node-modules-inspector build --outDir node_modules/.cache/node-modules-inspector-build",
    "deps:report-duplicates": "node-modules-inspector report duplicates",
    "deps:report-sizes": "node-modules-inspector report sizes",
    "format": "prettier --write .",
    "format:check": "prettier --check .",
    "gen": "node scripts/typegen.ts",
    "lint": "npm run build && npm run lint:built",
    "lint:built": "eslint . --max-warnings 0",
    "lint:inspect": "npm run build && eslint-config-inspector --no-open",
    "lint:inspect:build": "npm run build && eslint-config-inspector build --outDir node_modules/.cache/eslint-config-inspector",
    "lint:package": "npm run build && npm run lint:package:built",
    "lint:package:built": "publint --strict",
    "lint:staged": "npm run build && lint-staged",
    "lint:unused": "knip",
    "lint:workflows": "node scripts/check-workflows.mjs",
    "policy:diff": "npm run build && node scripts/policy-diff.ts",
    "prepare": "husky",
    "prepublishOnly": "npm run release:check",
    "release:check": "npm audit --audit-level=low && npm run validate && npm pack --dry-run --ignore-scripts",
    "test": "vitest run",
    "test:package": "npm run build && npm run test:package:built",
    "test:package:built": "vitest run tests/package",
    "test:package:ui": "npm run build && vitest --ui --watch tests/package",
    "test:ui": "npm run build && vitest --ui --watch --exclude \"tests/package/**\"",
    "test:unit": "npm run build && npm run test:unit:built",
    "test:unit:built": "vitest run --exclude \"tests/package/**\"",
    "test:watch": "vitest",
    "typecheck": "npm run gen && npm run typecheck:built",
    "typecheck:built": "tsc --noEmit",
    "typecheck:package": "npm run build && npm run typecheck:package:built",
    "typecheck:package:built": "attw --pack . --profile esm-only",
    "validate": "npm run validate:static && npm test",
    "validate:static": "npm run format:check && npm run build && npm run typecheck:built && npm run lint:unused && npm run lint:built && npm run lint:workflows && npm run lint:package:built && npm run typecheck:package:built"
  },
  "lint-staged": {
    "*.{js,mjs,cjs,jsx,mjsx,ts,mts,tsx,mtsx,svelte,html,md,json,jsonc,json5}": [
      "eslint --fix --max-warnings 0 --no-warn-ignored",
      "prettier --ignore-unknown --write"
    ],
    "!(*.js|*.mjs|*.cjs|*.jsx|*.mjsx|*.ts|*.mts|*.tsx|*.mtsx|*.svelte|*.html|*.md|*.json|*.jsonc|*.json5)": "prettier --ignore-unknown --write"
  },
  "prettier": "@cravingmaker/prettier-config",
  "overrides": {
    "deepmerge-ts": "8.0.2",
    "micromark-extension-math@3.1.0": {
      "katex": "0.18.2"
    }
  },
  "dependencies": {
    "@eslint-community/eslint-plugin-eslint-comments": "4.8.1",
    "@eslint/json": "2.1.1",
    "@eslint/markdown": "8.0.3",
    "@html-eslint/eslint-plugin": "0.66.1",
    "@html-eslint/parser": "0.66.1",
    "@stylistic/eslint-plugin": "5.10.0",
    "eslint-enforce-package-type": "1.3.0",
    "eslint-import-resolver-typescript": "4.4.5",
    "eslint-plugin-functional": "10.0.1",
    "eslint-plugin-import-x": "4.17.1",
    "eslint-plugin-n": "18.4.1",
    "eslint-plugin-package-json": "1.10.1",
    "eslint-plugin-perfectionist": "5.12.1",
    "eslint-plugin-promise": "7.3.0",
    "eslint-plugin-regexp": "3.3.1",
    "eslint-plugin-security": "4.2.0",
    "eslint-plugin-sonarjs": "4.2.2",
    "eslint-plugin-unicorn": "77.0.0",
    "eslint-plugin-unused-imports": "4.4.1",
    "globals": "17.13.0",
    "jsonc-eslint-parser": "3.3.0",
    "typescript-eslint": "8.71.2"
  },
  "devDependencies": {
    "@arethetypeswrong/cli": "0.18.5",
    "@cravingmaker/prettier-config": "0.3.2",
    "@eslint/config-inspector": "3.5.0",
    "@html-eslint/eslint-plugin-react": "0.66.1",
    "@html-eslint/eslint-plugin-svelte": "0.66.1",
    "@types/node": "24.19.2",
    "@vitest/ui": "5.0.5",
    "eslint": "10.12.0",
    "eslint-config-prettier": "10.1.8",
    "eslint-plugin-express-security": "3.2.4",
    "eslint-plugin-react-hooks": "7.1.1",
    "eslint-plugin-react-refresh": "0.5.7",
    "eslint-typegen": "2.3.1",
    "husky": "9.1.7",
    "knip": "6.41.0",
    "lint-staged": "17.6.0",
    "node-modules-inspector": "2.7.0",
    "prettier": "3.9.10",
    "prettier-plugin-svelte": "4.1.1",
    "publint": "0.3.25",
    "react": "19.3.1",
    "svelte": "5.57.2",
    "svelte-eslint-parser": "1.9.0",
    "tsdown": "0.23.1",
    "typescript": "6.0.3",
    "vitest": "5.0.5"
  },
  "peerDependencies": {
    "@html-eslint/eslint-plugin-react": ">=0.60.0 <1",
    "@html-eslint/eslint-plugin-svelte": ">=0.60.0 <1",
    "eslint": ">=10.4.0 <11",
    "eslint-plugin-express-security": ">=1.2.0 <4",
    "eslint-plugin-react-hooks": ">=7.1.0 <8",
    "eslint-plugin-react-refresh": ">=0.5.0 <1",
    "react": ">=19.0.0 <20",
    "svelte": ">=5.0.0 <6",
    "svelte-eslint-parser": ">=1.6.0 <2"
  },
  "peerDependenciesMeta": {
    "@html-eslint/eslint-plugin-react": {
      "optional": true
    },
    "@html-eslint/eslint-plugin-svelte": {
      "optional": true
    },
    "eslint": {
      "optional": false
    },
    "eslint-plugin-express-security": {
      "optional": true
    },
    "eslint-plugin-react-hooks": {
      "optional": true
    },
    "eslint-plugin-react-refresh": {
      "optional": true
    },
    "react": {
      "optional": true
    },
    "svelte": {
      "optional": true
    },
    "svelte-eslint-parser": {
      "optional": true
    }
  },
  "engines": {
    "node": ">=24.15.0"
  },
  "devEngines": {
    "runtime": {
      "name": "node",
      "version": ">=24.15.0",
      "onFail": "error"
    }
  },
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  }
}
