{"_id":"@2h2d/oxlint-config","_rev":"15-60ed8dbfbb85ec00ebe8f9e93a50fa88","name":"@2h2d/oxlint-config","dist-tags":{"alpha":"0.1.0-alpha.12","latest":"0.1.1"},"versions":{"0.1.0-alpha.0":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.0","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.0","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"d7d484bf98e2f2b0b3a251a31f2aa2c72b54b5a4","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.0.tgz","fileCount":34,"integrity":"sha512-/NPTqk251rJO97iMW4zSFOxBy2Sal3rUq5n7sCpCVLntPEddE7DzKTXnjZw1KVhJtU9Pc2011S4GjF6eYAl8VQ==","signatures":[{"sig":"MEYCIQDD2qJpHQQp2cKTmGlXrk73dzL3pNhST7ikdNRbkUCI1wIhAIxc1Md0TC33gltFo6OBSQqcBibDT19BR6gJiXQHNNer","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64123},"type":"module","_from":"file:/var/folders/f0/z1glf4ld54l0khslj0h9jtt00000gn/T/tmp.ddipLi7myZ/2h2d-oxlint-config-0.1.0-alpha.0.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"_resolved":"/var/folders/f0/z1glf4ld54l0khslj0h9jtt00000gn/T/tmp.ddipLi7myZ/2h2d-oxlint-config-0.1.0-alpha.0.tgz","_integrity":"sha512-/NPTqk251rJO97iMW4zSFOxBy2Sal3rUq5n7sCpCVLntPEddE7DzKTXnjZw1KVhJtU9Pc2011S4GjF6eYAl8VQ==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@oxlint/plugins":"1.77.0"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"0.62.0","oxlint":"1.77.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.77.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.0_1787016037031_0.7712043267096345","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.1":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.1","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.1","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"98de243d42f456aede5915b159abc8e977cedb29","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.1.tgz","fileCount":34,"integrity":"sha512-rOqqtpU+dySsRdj2d/SbtFdbyLj026yedloOkZGW9dQP6q0a0LZuAkMHErAqlDOZ4Hi1qkJLDHdVARTr/PWENA==","signatures":[{"sig":"MEUCIQDIXv5cGvsrkj6kk0TkIosHcJf50Y9Rgi893USjWs25fQIgID36+BckP/LekPHkvnj7y4kz24FNOWN/RBNEXcRFP/Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":64303},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.1.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.1.tgz","_integrity":"sha512-rOqqtpU+dySsRdj2d/SbtFdbyLj026yedloOkZGW9dQP6q0a0LZuAkMHErAqlDOZ4Hi1qkJLDHdVARTr/PWENA==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.1_1787018333997_0.538794832921333","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.2":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.2","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.2","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"5cefaccd6b3f3698dde3299fc63e4f5a8f88b4f5","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.2.tgz","fileCount":38,"integrity":"sha512-WvskvQMxy52GLkAlfJ5EYcAuCwA3ncy1YDKmh6MjWEIrj+hmhGA9fE43t7scS0ngH8GvlVBz6jQaXsuvI8eXUQ==","signatures":[{"sig":"MEQCIDNjyvKg2govJ7dnHb6ZJ7kyNTWjOpLX37SymQIh7uQeAiBHNMVam56XMnR/qneluf0PbiEG+spdByu+bnnWNX3kEg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77140},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.2.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.2.tgz","_integrity":"sha512-WvskvQMxy52GLkAlfJ5EYcAuCwA3ncy1YDKmh6MjWEIrj+hmhGA9fE43t7scS0ngH8GvlVBz6jQaXsuvI8eXUQ==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.2_1787058830384_0.35565548441002415","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.3":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.3","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.3","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"77e08dccd943ab8de299809bf02261c059729518","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.3.tgz","fileCount":32,"integrity":"sha512-ZlmsdAHUwgi+YlVz/LoTHMD4HBCyu7cub6k83YOge6LYKtowFVmzwoABtm4KWU+i8uw6a6hC2iCBhI/4FIEuhw==","signatures":[{"sig":"MEUCIQDscE9wYw5n/HKkkL/9aRDTmO/q1oRKET0nfoko/ti1CgIgDyvfFrCdm9pMLZksbGp0QK6SXSqMyIAK2iTEadoMfi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77842},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.3.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.3.tgz","_integrity":"sha512-ZlmsdAHUwgi+YlVz/LoTHMD4HBCyu7cub6k83YOge6LYKtowFVmzwoABtm4KWU+i8uw6a6hC2iCBhI/4FIEuhw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.3_1787091880478_0.9674420019764358","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.4":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.4","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.4","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"0ee8aa4b5050a94b26df1974933c01ac88441a82","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.4.tgz","fileCount":32,"integrity":"sha512-iftPATqfgF/EfRJofJzrtwFVw82Iv9Us6OffCx19e4O9YDq90xKt4dibvJHG5vDNcs0dLSiuBv6BTVriU+D0/g==","signatures":[{"sig":"MEQCIC1jSIjOs62hb1v6RkqHn9BwiHl7ZBG27d5G1clZw5vRAiAy70lQYutcD8bjVEgJGwwIcmG8RDP2FED9l1+g4AVWUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":80404},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.4.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.4.tgz","_integrity":"sha512-iftPATqfgF/EfRJofJzrtwFVw82Iv9Us6OffCx19e4O9YDq90xKt4dibvJHG5vDNcs0dLSiuBv6BTVriU+D0/g==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.4_1787129533920_0.10773430297699949","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.5":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.5","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.5","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"0cb712c9325c2c01899ca4d18f0264d17eb0f9fc","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.5.tgz","fileCount":30,"integrity":"sha512-chc6LlF86MandA6irP1/lwzsxzb8XVVTJ86S/RlKKXoYkYN9pgLwmJh9SpoPZ1yt8oyRaNoqE4q/PJGDOSqOvw==","signatures":[{"sig":"MEUCIQC8tc+mbG89aewbrSQrTDBHn2EaF5G9Mb2U5YFfQeds8gIgSGv3pfmlNvmgARLvB9AnAU8J6o/bOciaHS5hr1NIyEY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60909},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.5.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.5.tgz","_integrity":"sha512-chc6LlF86MandA6irP1/lwzsxzb8XVVTJ86S/RlKKXoYkYN9pgLwmJh9SpoPZ1yt8oyRaNoqE4q/PJGDOSqOvw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.5_1787133176494_0.17094343004400514","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.6":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.6","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.6","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"666fb9e6969b4b3fb16801f3441bdca307708c5a","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.6.tgz","fileCount":34,"integrity":"sha512-vuj4jtTDzcgT7gHEksyDE1DMwWvprUQBCk9jRjei/m6LkvDay8lMgeWofstuipcw3zuT8gg/BTFrPfrfjNrJmw==","signatures":[{"sig":"MEQCIEylCs+qGuhN6LGcLTOA4ScJi4Ph801Y3YT7lkC+uXwEAiA3TtWg04TuVlAyUgbzuwCtbNfxosCxv42aFKXnN34zGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":81162},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.6.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"},"./advisory-rules":{"types":"./dist/advisory-rules.d.ts","default":"./dist/advisory-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.6.tgz","_integrity":"sha512-vuj4jtTDzcgT7gHEksyDE1DMwWvprUQBCk9jRjei/m6LkvDay8lMgeWofstuipcw3zuT8gg/BTFrPfrfjNrJmw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.6_1787143022455_0.6757731931517461","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.7":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.7","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.7","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"e6b656405d36468bde48d3dab979d001c740e94a","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.7.tgz","fileCount":36,"integrity":"sha512-w5EA/CpXLlp1k2v2r7FkOTW4yXrDLHLXLm2+D8nuYddMmDTWff/vDNFZg75En6yCeatjID5Qoz9t8M8rPU9V9Q==","signatures":[{"sig":"MEUCIDv0VNcDFD4g0HJRYIsG6cpZtKHJPGc2faZaBeFtkwvyAiEAlo+4UPuXXS702gWemnXfcFdRSkQ7KOvfrhQ3UQZVUgM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":82900},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.7.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"},"./advisory-rules":{"types":"./dist/advisory-rules.d.ts","default":"./dist/advisory-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.7.tgz","_integrity":"sha512-w5EA/CpXLlp1k2v2r7FkOTW4yXrDLHLXLm2+D8nuYddMmDTWff/vDNFZg75En6yCeatjID5Qoz9t8M8rPU9V9Q==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.7_1787147814657_0.841140002809512","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.8":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.8","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.8","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"fb8c252ec6ed7c8c12e382be8f32e902a140a203","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.8.tgz","fileCount":38,"integrity":"sha512-KtbRWCIj2ihYyb0bUZKPvBcW9EYUbpUDkpIpu8WAlJju/rgF/z7LVQBVCMev3PWB4L5Beuz3YxpIHAj9ZOGEMw==","signatures":[{"sig":"MEQCIBWliTQg+aTNqR4guJmx3mjewaZqokyNA4T5Ese38JFfAiBVe4I0ebTfYrKUXWStRRrlB9/fMpEhRpVWst4GAo8h/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":86967},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.8.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"},"./advisory-rules":{"types":"./dist/advisory-rules.d.ts","default":"./dist/advisory-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.8.tgz","_integrity":"sha512-KtbRWCIj2ihYyb0bUZKPvBcW9EYUbpUDkpIpu8WAlJju/rgF/z7LVQBVCMev3PWB4L5Beuz3YxpIHAj9ZOGEMw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.8_1787163087094_0.7396634308936287","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.9":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.9","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.9","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"11f41356aba38df755841aa43ce7cc30f672feb5","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.9.tgz","fileCount":38,"integrity":"sha512-moBU453c2lGZeriC8k+FVIQ/iO/qgZ4DNvAgCD/sv0twX0R6FIXGneCCRYzcGQZSZxe2UWSb7lHayFsPgaYB7A==","signatures":[{"sig":"MEQCIH3je5JpT9OSp0FZNn6/fw1/bDGEDZYCE4/2oy81A/pEAiAHhRdAqpy2xYSxza5vm0NRJsyDdcj/YrvVp80HHBqemg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87533},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.9.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"},"./advisory-rules":{"types":"./dist/advisory-rules.d.ts","default":"./dist/advisory-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.9.tgz","_integrity":"sha512-moBU453c2lGZeriC8k+FVIQ/iO/qgZ4DNvAgCD/sv0twX0R6FIXGneCCRYzcGQZSZxe2UWSb7lHayFsPgaYB7A==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.9_1787391689573_0.26748538601831684","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.10":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.10","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.10","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"f67efd4cf36b721cd4dee22a80011d9dc0bbc9bb","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.10.tgz","fileCount":30,"integrity":"sha512-rUnOAoACgxjq3NvlS44koOv+Ztk4QjKoiEecK0ix6vtgRm8p3v5MXymbnE/XI/YRF/WFYjyfjtFZYD0z9lszHQ==","signatures":[{"sig":"MEUCIQDe2EuaYmIteytB3FosAA5b+fo+nPSwSm9xKCglt390/QIgcjDyp9Yl7ek0SIXcf7GTmH86ouNWeoYR6yFVmjPp4Xc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":64256},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.10.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.10.tgz","_integrity":"sha512-rUnOAoACgxjq3NvlS44koOv+Ztk4QjKoiEecK0ix6vtgRm8p3v5MXymbnE/XI/YRF/WFYjyfjtFZYD0z9lszHQ==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0","oxlint-tsgolint":"7.0.2001"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.10_1787478717841_0.0778966158568779","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.11":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.11","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.11","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"46223fbd18a71596a1424fdfe0da821a51dbfd03","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.11.tgz","fileCount":34,"integrity":"sha512-0+tywH/n7o1aum926t2ALFWM0Z+Uk5VI8dJbVqv6TzPId3DA5tF62IMdnM3Rp9c5+o8ytaNgpVvbnmGcgvkICw==","signatures":[{"sig":"MEUCIQDWKcRRl5cKC6IvnXaRGnCOxUEVk7GgK2hKApephESaRgIgcxq1ANjhxqsJGbVlit3o5FRmbjp/MCN3YEecQzA4NXs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74841},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.11.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.11.tgz","_integrity":"sha512-0+tywH/n7o1aum926t2ALFWM0Z+Uk5VI8dJbVqv6TzPId3DA5tF62IMdnM3Rp9c5+o8ytaNgpVvbnmGcgvkICw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0","oxlint-tsgolint":"7.0.2001"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.11_1787541128183_0.625198458135807","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.12":{"name":"@2h2d/oxlint-config","version":"0.1.0-alpha.12","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0-alpha.12","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"a5a04cbb7a83b2d071179f17f3d622dfe7890a42","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0-alpha.12.tgz","fileCount":34,"integrity":"sha512-Xt9xBxaXYylAsUIs91636rNsqkP2ZfBJaI2Tu8DQMMaTz9FRSkRarRl/+ci0MVyuT9WFgK7lGH+5jjAb8KVIoA==","signatures":[{"sig":"MEYCIQCphkXu7SLXhcdLOobyvlJQUycG8hJyBDuzTwsTq18J5wIhAI7qAy6Bd9h98aTRv4bLACx5VZ7EIRYzEFSQ1ZnFNUrz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0-alpha.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75256},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.12.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0-alpha.12.tgz","_integrity":"sha512-Xt9xBxaXYylAsUIs91636rNsqkP2ZfBJaI2Tu8DQMMaTz9FRSkRarRl/+ci0MVyuT9WFgK7lGH+5jjAb8KVIoA==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0","oxlint-tsgolint":"7.0.2001"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0-alpha.12_1787560526398_0.5268761819255361","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@2h2d/oxlint-config","version":"0.1.0","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","_id":"@2h2d/oxlint-config@0.1.0","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"homepage":"https://github.com/2h2d-co/oxlint-config#readme","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"0e65316b3a17cac238fab4da94b983892200d41b","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.0.tgz","fileCount":34,"integrity":"sha512-kECZBbSU9NhTW3+w8tQIj51uNHlLIHuOhylY+cc+jyTrsQMi52CN+H40W0b5Kuo4nmJAIx7WUEe3eHl8sfiyuQ==","signatures":[{"sig":"MEQCIAyGkUohCMckgnSxrb2JAvJJfo+x0hK5k+zYwWm6DUZ6AiB9CQzCzAT0+2qTSlnZurQVYPB05pdhWDVuVUNXbDJBrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":81729},"type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0.tgz","types":"dist/index.d.ts","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"}},"_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.0.tgz","_integrity":"sha512-kECZBbSU9NhTW3+w8tQIj51uNHlLIHuOhylY+cc+jyTrsQMi52CN+H40W0b5Kuo4nmJAIx7WUEe3eHl8sfiyuQ==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.78.0"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"0.63.0","oxlint":"1.78.0","typescript":"7.0.2","@types/node":"22.20.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.78.0","oxlint-tsgolint":"7.0.2001"},"_npmOperationalInternal":{"tmp":"tmp/oxlint-config_0.1.0_1787586951901_0.07470772785636992","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"_id":"@2h2d/oxlint-config@0.1.1","bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"dist":{"shasum":"ca7e1f29764f4afcbb892e66c94ffc51e7e09080","tarball":"https://registry.npmjs.org/@2h2d/oxlint-config/-/oxlint-config-0.1.1.tgz","integrity":"sha512-89WaHEcj1KGP2rKwcL+ow8WSirlnL6vNKpJDyGjYA7YVi+KuMmXt6P1Njk9WX/j6ROLsXWIxUlbRKDYL2VzdJw==","fileCount":34,"unpackedSize":82024,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@2h2d%2foxlint-config@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID4d6nFCmndTXJ9veRtlgYWbFdrw26F+BC7y2wq1XR9VAiAID/sp/KiYqfhifcUppoVh4SQ4vnQgaKPEr3JxVyf/BQ=="}]},"name":"@2h2d/oxlint-config","type":"module","_from":"file:/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.1.tgz","types":"dist/index.d.ts","author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugin":{"types":"./dist/plugin.d.ts","default":"./dist/plugin.js"},"./strict-rules":{"types":"./dist/strict-rules.d.ts","default":"./dist/strict-rules.js"}},"license":"MIT","scripts":{"fmt":"oxfmt","lint":"oxlint","test":"npm run build && node --test --test-concurrency=1 test/*.test.ts","build":"rm -rf dist && tsc -p tsconfig.build.json","check":"hk check --all --check","release":"node scripts/release.ts","lint:fix":"oxlint --fix","pack:dry":"npm run build && npm pack --dry-run --ignore-scripts --allow-directory=all","typecheck":"tsc -p tsconfig.json"},"version":"0.1.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4509bd6d-4422-4d40-a85d-630280300206"},"approver":{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}},"homepage":"https://github.com/2h2d-co/oxlint-config#readme","_resolved":"/home/runner/work/oxlint-config/oxlint-config/npm-package/2h2d-oxlint-config-0.1.1.tgz","_integrity":"sha512-89WaHEcj1KGP2rKwcL+ow8WSirlnL6vNKpJDyGjYA7YVi+KuMmXt6P1Njk9WX/j6ROLsXWIxUlbRKDYL2VzdJw==","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"_npmVersion":"11.18.0","description":"Shared Oxlint rules and configuration for 2h2d repositories","directories":{},"maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"_nodeVersion":"26.6.0","dependencies":{"@oxlint/plugins":"1.79.0"},"devDependencies":{"oxfmt":"0.64.0","oxlint":"1.79.0","typescript":"7.0.2","@types/node":"22.20.1","@2h2d/ts-config":"0.0.1","oxlint-tsgolint":"7.0.2001"},"peerDependencies":{"oxlint":"1.79.0","oxlint-tsgolint":"7.0.2001"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/oxlint-config_0.1.1_1787778357833_0.6174569289880745"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-18T01:20:36.828Z","modified":"2026-08-26T21:05:58.349Z","0.1.0-alpha.0":"2026-08-18T01:20:37.193Z","0.1.0-alpha.1":"2026-08-18T01:58:54.088Z","0.1.0-alpha.2":"2026-08-18T13:13:50.486Z","0.1.0-alpha.3":"2026-08-18T22:24:40.559Z","0.1.0-alpha.4":"2026-08-19T08:52:14.003Z","0.1.0-alpha.5":"2026-08-19T09:52:56.564Z","0.1.0-alpha.6":"2026-08-19T12:37:02.533Z","0.1.0-alpha.7":"2026-08-19T13:56:54.759Z","0.1.0-alpha.8":"2026-08-19T18:11:27.217Z","0.1.0-alpha.9":"2026-08-22T09:41:29.659Z","0.1.0-alpha.10":"2026-08-23T09:51:57.923Z","0.1.0-alpha.11":"2026-08-24T03:12:08.283Z","0.1.0-alpha.12":"2026-08-24T08:35:26.491Z","0.1.0":"2026-08-24T15:55:52.005Z","0.1.1":"2026-08-26T21:05:57.929Z"},"bugs":{"url":"https://github.com/2h2d-co/oxlint-config/issues"},"author":{"name":"Kaan Ozdokmeci","email":"kaan@ozdokmeci.com"},"license":"MIT","homepage":"https://github.com/2h2d-co/oxlint-config#readme","repository":{"url":"git+https://github.com/2h2d-co/oxlint-config.git","type":"git"},"description":"Shared Oxlint rules and configuration for 2h2d repositories","maintainers":[{"name":"kaanozdokmeci","email":"kaan@ozdokmeci.com"}],"readme":"# @2h2d/oxlint-config\n\nShared Oxlint rules and strict configuration for 2h2d TypeScript and JavaScript repositories.\n\nThe package combines:\n\n- custom syntax and scope rules under the `2h2d/` namespace;\n- selected native Oxlint rules;\n- one versioned policy consumed by regular Oxlint and Vite+ projects.\n\n## Install\n\nInstall the package and its exact supported Oxlint version as development dependencies:\n\n```bash\nnpm install --save-dev --save-exact @2h2d/oxlint-config@0.1.1 oxlint@1.79.0 oxlint-tsgolint@7.0.2001\n```\n\n## Oxlint configuration\n\nCreate `oxlint.config.ts`:\n\n```ts\nimport { strictConfig } from \"@2h2d/oxlint-config\";\nimport { defineConfig } from \"oxlint\";\n\nexport default defineConfig({\n  extends: [strictConfig],\n});\n```\n\nThe inherited configuration enables the TypeScript, Unicorn, Oxc, and Promise plugins; the native\n`correctness` category; the shared rules; built-in globals; type-aware linting and type checking;\nand unused suppression reporting. Add project-specific rules or overrides after `extends`.\n\nThe package requires Node.js 22.19 or newer, matching the generated 2h2d TypeScript projects.\n\n## Vite+ configuration\n\nImport the same rule map into the Vite+ lint configuration:\n\n```ts\nimport { strictRules } from \"@2h2d/oxlint-config/strict-rules\";\nimport { defineConfig } from \"vite-plus\";\n\nexport default defineConfig({\n  lint: {\n    plugins: [\"typescript\", \"unicorn\", \"oxc\", \"promise\"],\n    jsPlugins: [\n      {\n        name: \"2h2d\",\n        specifier: \"@2h2d/oxlint-config/plugin\",\n      },\n    ],\n    rules: strictRules,\n    options: {\n      reportUnusedDisableDirectives: \"error\",\n      typeAware: true,\n      typeCheck: true,\n    },\n  },\n});\n```\n\n## Custom rules\n\nThe strict preset enables these custom rules as errors:\n\n- `2h2d/no-broad-dictionary-values`\n- `2h2d/no-broad-object-parameters`\n- `2h2d/no-module-mocking`\n- `2h2d/no-typebox-unsafe`\n- `2h2d/require-narrow-suppression-directives`\n- `2h2d/require-promise-rejection-parameter`\n\nThe suppression-directive rule requires lint suppressions to use `disable-line` or\n`disable-next-line`, name exactly one rule, and include an explanation after `--`. Native\n`typescript/ban-ts-comment` separately bans `@ts-ignore` and `@ts-nocheck` while allowing\n`@ts-expect-error` with a meaningful description. Both explanations require at least ten\ncharacters. `reportUnusedDisableDirectives: \"error\"` is a root configuration option supplied by\nthe inherited strict configuration.\n\nThe module-mocking rule prohibits `mock`, `doMock`, and `unstable_mockModule` calls on Jest and\nVitest APIs. Tests replace dependencies through production interfaces or faithful implementations.\nNative restricted-method rules were not adopted because loading their framework plugins also\nactivates unrelated correctness-category rules, and loading both produces duplicate diagnostics.\n\nThe TypeBox rule rejects `Unsafe` calls imported from `typebox`, including named, aliased, default,\nand namespace import forms. Prefer TypeBox builders. When builders cannot express the schema, use\nconst native JSON Schema and derive the static type with `Static<typeof schema>`; although TypeBox\ndoes not strongly check the native schema's keywords, deriving from it still prevents an\nindependently declared static type from drifting away. Use `Unsafe` with a narrow explained\nsuppression only when neither representation can express the required invariant.\n\nThe broad-object-parameter rule rejects the lowercase `object` contract on function inputs,\nincluding local generic aliases that resolve to it, while allowing meaningful generic constraints\nsuch as `Value extends object`. Suppress it narrowly when “any non-primitive” is the exact intended\nAPI. Do not replace an accurate `object` contract with a one-position generic such as\n`<Value extends object>(value: Value): void`; native\n`typescript/no-unnecessary-type-parameters` rejects that generic because it does not relate or\npreserve type information.\n\nThe dictionary rule rejects direct value contracts based on `object` and semantically empty\ncontracts hidden behind intersections or utility types. Native `typescript/no-empty-object-type`\nowns explicit `{}` and empty declaration diagnostics, while `typescript/no-explicit-any` owns\nexplicit `any`. Use `unknown` when values are genuinely uncertain and narrow them before use.\n\nThe Promise rejection parameter rule requires inline and locally resolvable `.catch` callbacks, and\nthe rejection callback passed to `.then`, to declare the rejection reason. It closes the syntax gap\nbetween Promise callbacks and native `preserve-caught-error` without guessing whether a particular\nlogging or diagnostic sink is adequate. Because Oxlint JavaScript plugins do not receive type\ninformation, unrelated APIs using `catch` or `then` can use a narrow explained suppression.\n\n## Native rules\n\nThe strict rule map explicitly enables these native Oxlint rules. The exported strict configuration\nadditionally enables Oxlint's native `correctness` category; inspect the effective version-pinned\nset with `oxlint --print-config <file>`.\n\n```json\n{\n  \"array-callback-return\": \"error\",\n  \"eqeqeq\": [\"error\", \"always\", { \"null\": \"ignore\" }],\n  \"no-case-declarations\": \"error\",\n  \"no-constructor-return\": \"error\",\n  \"no-extend-native\": \"error\",\n  \"no-new-func\": \"error\",\n  \"no-new-wrappers\": \"error\",\n  \"no-proto\": \"error\",\n  \"no-prototype-builtins\": \"error\",\n  \"no-var\": \"error\",\n  \"oxc/misrefactored-assign-op\": \"error\",\n  \"oxc/no-accumulating-spread\": \"error\",\n  \"preserve-caught-error\": [\"error\", { \"requireCatchParameter\": true }],\n  \"promise/no-callback-in-promise\": \"off\",\n  \"promise/no-multiple-resolved\": \"error\",\n  \"promise/valid-params\": \"off\",\n  \"typescript/ban-ts-comment\": [\n    \"error\",\n    {\n      \"minimumDescriptionLength\": 10,\n      \"ts-check\": false,\n      \"ts-expect-error\": \"allow-with-description\",\n      \"ts-ignore\": true,\n      \"ts-nocheck\": true\n    }\n  ],\n  \"typescript/consistent-type-assertions\": [\"error\", { \"assertionStyle\": \"never\" }],\n  \"typescript/method-signature-style\": [\"error\", \"property\"],\n  \"typescript/no-empty-object-type\": \"error\",\n  \"typescript/no-explicit-any\": \"error\",\n  \"typescript/no-floating-promises\": [\n    \"error\",\n    {\n      \"allowForKnownSafeCalls\": [\n        {\n          \"from\": \"package\",\n          \"name\": [\"describe\", \"it\", \"test\"],\n          \"package\": \"node:test\"\n        }\n      ],\n      \"ignoreVoid\": false\n    }\n  ],\n  \"typescript/no-import-type-side-effects\": \"error\",\n  \"typescript/no-invalid-void-type\": \"error\",\n  \"typescript/no-misused-promises\": \"error\",\n  \"typescript/no-non-null-assertion\": \"error\",\n  \"typescript/no-require-imports\": \"error\",\n  \"typescript/no-unnecessary-type-parameters\": \"error\",\n  \"typescript/no-unsafe-argument\": \"error\",\n  \"typescript/no-unsafe-assignment\": \"error\",\n  \"typescript/no-unsafe-call\": \"error\",\n  \"typescript/no-unsafe-enum-comparison\": \"error\",\n  \"typescript/no-unsafe-function-type\": \"error\",\n  \"typescript/no-unsafe-member-access\": \"error\",\n  \"typescript/no-unsafe-return\": \"error\",\n  \"typescript/only-throw-error\": \"error\",\n  \"typescript/prefer-promise-reject-errors\": [\n    \"error\",\n    {\n      \"allowEmptyReject\": false,\n      \"allowThrowingAny\": true,\n      \"allowThrowingUnknown\": true\n    }\n  ],\n  \"typescript/return-await\": [\"error\", \"error-handling-correctness-only\"],\n  \"typescript/switch-exhaustiveness-check\": [\n    \"error\",\n    {\n      \"allowDefaultCaseForExhaustiveSwitch\": false,\n      \"considerDefaultExhaustiveForUnions\": false\n    }\n  ],\n  \"typescript/use-unknown-in-catch-callback-variable\": \"error\",\n  \"unicorn/no-accessor-recursion\": \"error\",\n  \"unicorn/no-array-fill-with-reference-type\": \"error\",\n  \"unicorn/no-new-buffer\": \"error\",\n  \"unicorn/prefer-node-protocol\": \"error\",\n  \"oxc/double-comparisons\": \"off\",\n  \"oxc/erasing-op\": \"off\",\n  \"oxc/number-arg-out-of-range\": \"off\",\n  \"oxc/uninvoked-array-callback\": \"off\",\n  \"unicorn/no-empty-file\": \"off\",\n  \"unicorn/no-new-array\": \"off\",\n  \"unicorn/no-single-promise-in-promise-methods\": \"off\",\n  \"unicorn/no-thenable\": \"off\",\n  \"unicorn/no-useless-spread\": \"off\",\n  \"unicorn/prefer-string-starts-ends-with\": \"off\"\n}\n```\n\nSwitch cases containing lexical declarations use explicit blocks so their bindings cannot leak into\nthe switch-wide lexical environment.\nConstructors may return early without a value but must not replace their initialized instance.\nIntentional singleton, proxy, cache, or other instance-substitution behavior requires an explained\nsuppression.\nFunction-scoped `var` declarations are prohibited in favor of `let` and `const`; TypeScript ambient\ndeclarations remain valid. Native global prototypes must not be extended. Intentional polyfills or\nruntime patches require a narrow explained suppression because they alter process-wide behavior.\nBoxed primitive constructors are prohibited because they introduce object identity and truthiness;\nintentional wrapper identity requires an explained suppression instead of applying the fixer.\nThe deprecated magic `__proto__` accessor is prohibited in favor of explicit `Object` or `Reflect`\nprototype operations. Null-prototype object literals remain valid; intentional data fields named\n`__proto__` require an explained suppression.\nDirect calls to inherited object prototype methods are prohibited because null-prototype or\nexternally shadowed objects make them unsafe; prefer `Object.hasOwn` for ownership checks.\nGlobal CommonJS `require` calls are prohibited in ESM projects; explicit local `createRequire`\nbindings remain valid, while intentional `.cjs` boundaries require an explained suppression.\nIncomplete compound-assignment refactors such as `total += total + amount` are rejected; intentional\nrecurrence formulas can use an ordinary assignment or an explained suppression.\nAccumulating spread is rejected because repeated full copies produce quadratic work. Compliance\nmust preserve caller-owned seeds and intentional snapshots; explain those immutable contracts\nrather than replacing them blindly with mutation.\nInline Promise executors must not reach a second resolve or reject call after settlement.\nRecursive access through the same getter or setter is rejected. Dynamic accessors that replace\nthemselves before the reported access require an explained suppression.\nFilling every array position with the same obvious object reference is rejected. Intentional shared\nimmutable sentinels and custom cloning `fill` methods require an explained suppression.\nThe deprecated argument-overloaded `new Buffer` API is prohibited in favor of explicit allocation\nor conversion methods. The native rule currently recognizes only the global `Buffer` binding.\nNode.js built-in module specifiers must use the explicit `node:` protocol. Intentional build-time\naliases for bare built-in names require an explained suppression because their resolution differs.\n\nThe strict map explicitly disables twelve rules inherited from the native `correctness` category.\nSyntax-only comparison algebra is not sound for values such as `NaN` or objects with coercion\nsemantics. Arithmetic involving zero can preserve `NaN`, infinity, negative zero, or operand side\neffects instead of collapsing to the numeric value `0`. Obsolete number-formatting limits reject\nprecision values permitted by modern JavaScript. Function values passed to array methods such as\n`fill` are not necessarily callbacks. Spread can intentionally snapshot an iterable or convert\nsparse slots into dense `undefined` values. Empty committed files can be meaningful artifacts;\nsingle-argument `new Array(length)` has intentional sparse-array semantics; a one-element Promise\ncombinator can preserve aggregation shape and Promise identity; custom thenables are a standard\ninteroperability contract; and anchored regular expressions are not always equivalent to\n`startsWith` or `endsWith`.\nNative `promise/no-new-statics` is active through the `correctness` category.\n`promise/valid-params` remains disabled because it rejects valid parameterless forwarding calls and\ncan mistake unrelated `then`, `catch`, and `finally` methods for Promise operations.\n`promise/no-callback-in-promise` remains disabled because it relies on callback names, can be\nbypassed by renaming, and rejects legitimate Promise-to-callback adapters.\n\nThe test suite pins the exact correctness-category inventory for every loaded native plugin.\nOxlint upgrades fail until each added, removed, or reclassified rule is reviewed explicitly.\n\nEvery catch must bind its failure, and replacement built-in errors must preserve that value as their\n`cause`. Promise-style rejection callbacks must likewise bind their rejection reason. Whether a\ncaught failure should be logged or recorded is a review decision rather than a custom lint\nheuristic.\n\nEvery non-const type assertion and postfix non-null assertion is prohibited. `as const` remains\nallowed. Empty `{}` and unsafe `Function` contracts are prohibited. Object-type callables use\nfunction-property syntax so `strictFunctionTypes` checks parameter variance. `void promise` is not\naccepted as Promise rejection handling, and a Promise returned from a `try` block must be awaited\nwhen rejection would otherwise bypass local error handling. Only the `describe`, `it`, and `test`\ndeclarations from `node:test` are exempt from floating-Promise enforcement because the test runner\nobserves their Promises.\n\nGeneric parameters must relate multiple positions or preserve information through an output. Do not\nuse a one-position generic merely to disguise a broad input contract.\n\n`Promise.reject` requires an `Error` when the rejection type is known. An `unknown` or externally\ntyped `any` reason may be forwarded unchanged so the lint policy does not force wrapping that\nalters failure identity. Explicit `any` remains prohibited at its source.\n\n## Rule namespaces\n\nRules retain the namespace of their implementation:\n\n- native TypeScript rules use configuration IDs such as `typescript/no-explicit-any` and are\n  displayed as `typescript(no-explicit-any)`;\n- native ESLint-compatible rules use IDs such as `preserve-caught-error` and are displayed as\n  `eslint(preserve-caught-error)`;\n- rules implemented by this package use IDs such as `2h2d/no-broad-object-parameters` and are\n  displayed as `2h2d(no-broad-object-parameters)`.\n\nImporting a native rule through `strictRules` does not move it into the `2h2d` namespace.\n\n## Rule design\n\n- Parse uncertain values at their I/O boundary.\n- Declare callable object-type members as function properties so their parameters are checked\n  contravariantly.\n- Derive static types from their runtime schemas instead of pairing them through `Type.Unsafe`.\n- Propagate unexpected failures and preserve their original causes.\n- Keep promises observable and use exhaustive union handling.\n- Use named contracts for meaningful inputs and outputs.\n- Use `unknown` for genuinely uncertain dictionary values and narrow each value before use.\n- Represent data with recursive `JsonValue` and `JsonObject` only after establishing that it is\n  JSON.\n- Replace dependencies through production interfaces rather than module-loader mocks.\n- Apply policy to every committed TypeScript and JavaScript file without special directories for\n  vendored, test, or tooling code.\n- Prefer a narrow explained suppression over distorting a contract, adding a pass-through helper,\n  or deleting useful test coverage.\n\n## Compatibility\n\nOxlint JavaScript plugins are currently alpha and outside normal semantic-versioning guarantees.\nThis package pins and tests Oxlint and `@oxlint/plugins` 1.79.0 with\n`oxlint-tsgolint` 7.0.2001. Update those versions together and validate the package-consumer\nintegration test before release.\n\n## Development\n\n```bash\nnpm install\nnpm run check\nnpm test\nnpm run pack:dry\n```\n\n`npm test` builds the package before running rule, preset, package-export, and Oxlint consumer tests.\n\n## Packaging\n\n`.github/npm-package-files` is the authoritative package-content allowlist used by the local release\ncommand and both CI jobs. Update it whenever the intended published file set changes.\n\n## Release staging\n\nRepository setup:\n\n1. Configure npm trusted publishing for `2h2d-co/oxlint-config` using\n   `.github/workflows/publish.yml` and the `npm-publish` environment.\n2. Restrict that GitHub environment to `v*` tags without a deployment reviewer or administrator\n   bypass.\n3. Protect `main` with code-owner review and protect `v*` tags from unauthorized changes while\n   retaining the repository-administrator release path.\n4. Replace `.github/release-signers` if release commits use a different SSH signing key.\n\nRelease flow:\n\n1. Run `npm run release -- X.Y.Z` from a clean, synchronized `main`.\n2. Inspect the signed release commit and lightweight tag.\n3. Push them atomically with `git push --atomic origin main vX.Y.Z`.\n4. Approve the staged package after CI verifies its source, signature, digest, provenance, and\n   contents.\n\n## Attribution\n\nSelected rules are adapted from\n[`dmmulroy/anti-slop`](https://github.com/dmmulroy/anti-slop) under the MIT License. See\n`THIRD_PARTY_NOTICES.md` and `LICENSES/anti-slop-MIT.txt`.\n","readmeFilename":"README.md"}