{"_id":"@skapxd/eslint-opinionated","_rev":"40-80b22321074fa20c08d42add6349a1f9","name":"@skapxd/eslint-opinionated","dist-tags":{"latest":"8.6.0"},"versions":{"0.1.0":{"name":"@skapxd/eslint-opinionated","version":"0.1.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.1.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"8f840bac67a1faf8287fe3292937f97da8ff9f07","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.1.0.tgz","fileCount":42,"integrity":"sha512-W3P7BWidBbyqcWRM73haS4c6eM8tF0TXM2ipiF04lNBHnqwAf8mEvNM5cNtQ6SpjbC8ywsykZ7ZXy1gUbZbsGA==","signatures":[{"sig":"MEUCIQDUJ/rrwAwbn0zGRXM8ldyWA39OSQT4KGUbofe4hvfFGAIgXK8XofNK0bPazJyacCC5u7h9myJIqkJ7j9/tkKQbVKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1133955},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"dfd209862b624afd6321f988cb63c98f08bd9948","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.1.0_1781037752596_0.3057171424209819","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@skapxd/eslint-opinionated","version":"0.1.1","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.1.1","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"d760b8229e4302c109662f1f73d58cfe72ccc1e0","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.1.1.tgz","fileCount":42,"integrity":"sha512-uMkhU+rh5LhSWzooBspXV/XMXox4merQtEEvYEpZiv+JYlhEAbABXw+zVxWy+8de9esQk+OHDKOBgWJBwp2DNw==","signatures":[{"sig":"MEUCIAEkgRbK9mcluT+712mMuzMAT8rolN/nuakLMIekNpuKAiEAiSTfkWVRK3nEkIw9YzqL6FduqL9Dk3orE3H4h2N5PGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1151947},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"2bb18772fb6b4edd7969e5a64ebbb8da96438f26","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.1.1_1781039069578_0.47797628600712083","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@skapxd/eslint-opinionated","version":"0.2.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.2.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"e408dac639f869c0533c654c3c2f165bc818cd25","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.2.0.tgz","fileCount":42,"integrity":"sha512-ytlBr9D/Rso42ag/i62B93VoAC0DTGtrgme+nQO280d7Hhy6NKnr75TOA2qoHlWJSCRZOAHl7EDmkOlezoRxdA==","signatures":[{"sig":"MEYCIQDzH8/F/cnfFmI2O+ZPTr/xXEvqJ7xFfkECflsXelizRgIhAJJGxzAd0nqNm1xrgSO4oC5Rivye4dk1Xmk7KO3OmcLV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1149292},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"7dfcf583c7d9d6f54edb858d96114f82784c99cd","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.2.0_1781040083118_0.3975133453347639","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@skapxd/eslint-opinionated","version":"0.3.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.3.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"cea77f7ab573c439b5b2dccfb6d3676e633426b7","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.3.0.tgz","fileCount":42,"integrity":"sha512-8JFpq7iEoT/mh6mjbVnyLgfNHv4ItPbmG+G8yZNpQfsHenwQUjdzfh8VcuSv8KZyXCSo/koUi4BFfvLgSqBUVA==","signatures":[{"sig":"MEUCIQCpfnFX0lKUQZr5NCWT/V9GYf4/3f7JxDkFkZC2/f2hfAIgWArCWvROLRNuJhs0bkoHtcYyG0ABslP8jxzgRrEfty4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1149325},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"b1e4cf09e1ba9af9fda3f7d018d3be3f7b30146d","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.3.0_1781040598295_0.9490760513561571","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@skapxd/eslint-opinionated","version":"0.4.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.4.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"2177f09abbc0f17999108a05ea23a11527d223a3","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.4.0.tgz","fileCount":42,"integrity":"sha512-KM9A/644+sJLPYFlWcJC3Ke1C58vcqxj+nbeQINArc1gtQduy9Kv4wr+0uK7Kz5+7bglvDJW7Hz9K8P3HTXlWQ==","signatures":[{"sig":"MEUCIA4mOYp3bwqz6Bz7uFIZS6uTh6eTFy00G38tVLRy7AGOAiEA8r1D4zv4O14D42Mikq8oH9DqUavfYWbUzgG8U26ulYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1153797},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"543df9bf3a22edf05d6c418b3f8ae25dfcbaac13","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.4.0_1781041456408_0.6091078220949826","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@skapxd/eslint-opinionated","version":"0.5.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.5.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"0777c035960a814e2b65a4bd394c9ce4be7f6ee4","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.5.0.tgz","fileCount":42,"integrity":"sha512-ON3xj15HP80t2SkyJraYgcL9Gc/zAwQURojD6DjgXkopEl8YNyza5Xqs+M7elj9mWvA/lvm3JE+NufEYnDGXpw==","signatures":[{"sig":"MEYCIQCosFoQdohvRqpAxexjFUEWlHGUfY6QR+aIjAJTw1cJlgIhAPmTKXHSCK4kanS/82Y2PJaHPEWGK8y9fgBP0Bj9K2XL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1164446},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"6bfb045fd5596f38a2b8fd5bcaf08870235baaad","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.5.0_1781041993073_0.4424050363876797","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@skapxd/eslint-opinionated","version":"0.6.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.6.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"3598004f55e4e4e87271ee8d4469608797fb5ae5","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.6.0.tgz","fileCount":42,"integrity":"sha512-v2IjULnbGbrsumBg6pPphBNDr3B3IhAW2eAUpOZZSTxVKhCdp9m+MEAtX0EF10hBZb/FhLQbZja2u39/rVD5zw==","signatures":[{"sig":"MEQCIBV/BHhemoyOtiIrS4Atld9bl3U1+2BLF7ecJ+7AT94uAiB2OV+GmKRws9gXZVIAocCITOjfCCouDulgWG4c2kUPPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1181466},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"015b755e97379a7a33705736f37845f73ff05715","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.6.0_1781044159989_0.6092302707832982","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@skapxd/eslint-opinionated","version":"0.7.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.7.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"594e7e9417c047b3ab5797f0e9c4b565810930c7","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.7.0.tgz","fileCount":44,"integrity":"sha512-VKrV9WUvHXbhGSoN4he/P4aF+CwNWmTRVcivjsek0sEdioZdlxEkNBcRx8XiqutkUPpuCxPL+oKMQ8E4Ypt5Cg==","signatures":[{"sig":"MEYCIQDQd5ERxi3Tgbutuxbxh9dKhjr6+rse9ve/yY8i0O9H8AIhAPjmEV8JTa/1s1a3tDC7khqVoCItegczkgonnkXvJvBE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1219645},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"423f5694201a91cabbdc4577db4ac98a6ce04f90","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.7.0_1781134358717_0.3516929023866573","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@skapxd/eslint-opinionated","version":"0.8.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.8.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"b5cd4e2314802d793431659987d0dc54a2ad0dd2","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.8.0.tgz","fileCount":44,"integrity":"sha512-L31IeV3vLTcdh0cPZHjGFHfsWPiICAk2vE68zj9wadhIWRTxnxysODJbjWz3opZz95cKEy5wedacJlEsQo7iQg==","signatures":[{"sig":"MEUCIQClUwBZQ1PU72ViMrOrU4OplemqVn4/vAVej9u34E51AQIgRw3WOxqIdJUd8S6+VmgZUY55aVia3gyJ60XjjQrFaJk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1237022},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"ccb4dc26818b5b7cd3205edcdfc9061d112b05b9","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.8.0_1781135109777_0.266077757782214","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@skapxd/eslint-opinionated","version":"0.9.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.9.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"7c295c7f88ed8c62fe725fca5432a1cf90eab45f","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.9.0.tgz","fileCount":44,"integrity":"sha512-kzFUbzdjiMTG23NiL1i5N6AtqbbULnJz5rhgm5Ovr0KHS/oqo5TkdjLruUj9T2z2BoS4EgCrWnzoB8FYatVkeA==","signatures":[{"sig":"MEQCICJmT/b+wZk5dS2R9UDzmaXbNoY1bAlpZhADw8Jdwu8mAiAqAqvZ6QIwDa9m9yuupn2wCgpivlU0LO34b9MbxNwGKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1286234},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"14dccdbf56409ed01746aa93835d7ace88f9e686","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.9.0_1781139278375_0.32364244713267154","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@skapxd/eslint-opinionated","version":"0.10.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.10.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"813027eca86e0ed2210369b741bdd17c6ea42e55","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.10.0.tgz","fileCount":44,"integrity":"sha512-TuWuhf/xuSgxLLrUnbtH75RgNQ6EWZcDUpiBV7OAFYG37ulIoQp58s3cQs01FvfkIKm33QbWkf8xzPkAn9r6Sw==","signatures":[{"sig":"MEYCIQC6iSM3Xzv+4+1nUekxKt59biQPAp/tLTJb+wpVeXeM1gIhANOajLW2tHuw97uEJxeaBo4SBIiux4Hoy2JJB8TugqHt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1331442},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"d3087b85f4b4a4702c10408cc67076b6eec93d05","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.10.0_1781187326280_0.19750815399892652","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@skapxd/eslint-opinionated","version":"0.11.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.11.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"6a57ea347dc89b119fea33144574bd794bacec24","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.11.0.tgz","fileCount":44,"integrity":"sha512-Zv9geZHMCuGKW3W7gyGAcPxW6KakEDz+JYnwW5wtDSg6rWlmEElIclCHm5/4FbbQyNQr5Jq0/QxZ5cka8Sixsg==","signatures":[{"sig":"MEQCIHGJwLOqtRoVl8aXd5cVPlWb+UR7yo17nVLLW5U7euj5AiAQ5F2eW9i/NYLIOEdNbUYKOVHlTGtIFpCdMuk/nKRuNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1355549},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"27234d6770a1da4dbc2c94fa3fba09fdcab36a92","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.11.0_1781188578469_0.027266239933181335","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@skapxd/eslint-opinionated","version":"0.12.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.12.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"0f754aa610517c0c9e877e06db6b98ccd1caddc9","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.12.0.tgz","fileCount":44,"integrity":"sha512-jKD2xKmS6ixUOmwFUAc+ANSnLlS6jtzfyCdp7+8Cq5x3/o11x3HKj5QqFqbLlwjonKzf8/jrRH7z25h6OSt0Kw==","signatures":[{"sig":"MEUCICMCwgRpyvMm0UPQK51u9eg83j4yQkMKbRojJAJ3d3HzAiEAglbkC0JfP7y5TC5bwdbXtbYepIK7pvmYx0bLkVKZ70k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1381641},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"6cb4c49e92654026306ca7f0598f56f149818fa2","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.12.0_1781191180424_0.6269006450594756","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@skapxd/eslint-opinionated","version":"0.12.1","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.12.1","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"d0808f50ae7e1571ab77ea67d0dad2a8e89db6c7","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.12.1.tgz","fileCount":44,"integrity":"sha512-4tN1pukiJg4CAkLNBp5EP80j+Gb2kRLvKS3xkPL7ZcMJCnfva1UULUZrGrbvuxVFaVbzCjxn6JsvPzKC5b4FTw==","signatures":[{"sig":"MEQCIC0ddNmtZjuuhd+4BP71BpoFSFZHRqOw9yWga4s8cAqRAiB2I5jVYNBzKZikrkhyRRvX9L5gixfhUuttwr6MNflnzg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1395099},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"a6cbb4c87824a0c544d7df5255798d8092eb4e14","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.12.1_1781191984156_0.6608283369238794","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@skapxd/eslint-opinionated","version":"0.13.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.13.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"9a15403ddc5b38e451490a9f066f303b512db77b","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.13.0.tgz","fileCount":44,"integrity":"sha512-U/nHk20zMNzqWbzDuuxYjQ0mPUiXnmQL7JrJB/8TsDSDq+SOOzhhZE39NRqldxbRNe1Nk26kbvqSF5sWHF9xJg==","signatures":[{"sig":"MEQCIEMRagl0AT6OQtxZqElUSpgkWlrCh46imsaZiMt2Jy8XAiBI9XFwgNvFm2fkM5DF3mRuYbuHE2YNOQpd5ZOUBwClIA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1405416},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"68ef1c7d2a22936799d999043095edb63220676e","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.13.0_1781204120995_0.9993752668046074","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@skapxd/eslint-opinionated","version":"0.14.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.14.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"097e7f3d4aad4a101471b7031b0496ff58a85666","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.14.0.tgz","fileCount":52,"integrity":"sha512-JP8c6y3aOq5yYMzhWUBNVDtk4k6fx5ISOZQ8P6WgS4ZyS/if4jkCI8GkwJlLnSFUh/v+qDAjoQXKSprqvxMmYQ==","signatures":[{"sig":"MEUCIDJyTpJL6LJUjhPh9t4oenNJ/h7/zqTZwxQRBKvJpjl2AiEAyBgm/2tXbTKtAwoDV+0tAY4wm+kXIMdLkqcI9/w8C1o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2010693},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./nest":{"types":"./dist/nest/index.d.ts","import":"./dist/nest/index.mjs","require":"./dist/nest/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"a55a0a7204de77fc9eac5db165b7948f5b912951","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.14.0_1781218427968_0.3873046967225817","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@skapxd/eslint-opinionated","version":"0.15.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.15.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"802f88ef287fd9989a214cff1112c8ea32202c0b","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.15.0.tgz","fileCount":52,"integrity":"sha512-lY0LDAvHCVRqMHILAikyfTQ1qCtd5IgsPPLs2LAenMOeT6fMDZH9VE8hJmNqzT3iZHb5m6bDK7sVhFcn4Ro+3g==","signatures":[{"sig":"MEUCIQC6BLr8rcUPHucGjRF3x/as3ievD/z3BQPr31oE4ofV1AIgLjyNEDWForotYykZGiy5MYWQSke2sjiFDBKsdw1Ky/U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2053646},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./nest":{"types":"./dist/nest/index.d.ts","import":"./dist/nest/index.mjs","require":"./dist/nest/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"f15e676a3bcb75920f480f73a09b013e83656851","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.15.0_1781264572786_0.30800094054323557","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@skapxd/eslint-opinionated","version":"0.16.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.16.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"9289b4d85e3d95cf436f8415c91bd8395049b120","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.16.0.tgz","fileCount":52,"integrity":"sha512-CA0D82sDUU71yXwU6ByxqyUGPShV8OTqXzba2NTR4l6T0pz5KhbXKWyNNAXxgD1EpXZRPP2q7IG7e3sSrLTlEg==","signatures":[{"sig":"MEQCIC2MFGkWrTAleXm5X+oNlVATFRqgs3HtH/3/57bYYwxlAiAYEGsLuC2HpLn25je1vE6YyG93bHZXcL9E7oeuIKZGPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2091634},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./nest":{"types":"./dist/nest/index.d.ts","import":"./dist/nest/index.mjs","require":"./dist/nest/index.js"},"./next":{"types":"./dist/next/index.d.ts","import":"./dist/next/index.mjs","require":"./dist/next/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","import":"./dist/astro/index.mjs","require":"./dist/astro/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.mjs","require":"./dist/shared/index.js"}},"gitHead":"a1f4fd4d285e9feee5b15a94e2c725f3aef508fe","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.16.0_1781265364045_0.35818401281959766","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@skapxd/eslint-opinionated","version":"0.17.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.17.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"32b8cda6588c8b9dff7ef72fcbfa3b9bb006f433","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.17.0.tgz","fileCount":52,"integrity":"sha512-QmKQTREqmUwYkxQ2XNEz0ssXUcGJwdwlS+hi7f47OI9mdH10DFDIizQst8xvRJcT7TkjVXYxrhG+QBOzqyISvg==","signatures":[{"sig":"MEYCIQDD7zg/RMszcAXE3antwmLRj2Pf+UTB1W6jKRfFbeuN1wIhANlMd+EYPzH1qk0EpQEwMYtsOx9rYyOB78kNgCSqtHqA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2181709},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"fba906b2658da40ff427228d39a89814b003690d","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.17.0_1781266630744_0.8601533250778692","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@skapxd/eslint-opinionated","version":"0.18.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@0.18.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"49a735bb95100aced7a9f458493de9a15533bf09","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-0.18.0.tgz","fileCount":52,"integrity":"sha512-EVFWzARjLBXefQ2F1hq+BbJ8L0CLNsMWEdvO1LKBYkm7okRHTSG/LJZtn8ZPXKyU8g6lOr2eoqcII9z464BX2Q==","signatures":[{"sig":"MEUCIQC7E6Hg78b9/CJ/SM6C4G4Rypjlde35m1L3k2KzYAuVXgIgZ48ZBJS3RWAxXZ74hSkgFWlNhCQngo8UwAPW7AbkPXY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2238414},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"b7c9b1a5eafdf6255d6a323782585ca7d54c5541","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_0.18.0_1781269874097_0.6534081615517291","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@skapxd/eslint-opinionated","version":"1.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@1.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"b724aaee45d1ef778c40cfe4af113af522d3c223","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-1.0.0.tgz","fileCount":52,"integrity":"sha512-yR1bffZ41sN1XwdxMBHgQt4iwtwC2Gh7cGSi8XB6XSQZE+opOR113lupcDmyQeX6zx/VkUqRDuEp3GNPpizWYw==","signatures":[{"sig":"MEYCIQCnbpJO94Kxa4y7fjYiwA2ClpgqDFPAyQPUWC/8Pnqt8gIhAMC8n9renHm/+g76PfZMxbErUmW1xWkSe0zDMuoNJ8hn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2236406},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"ff098a64527bcd02b200b1f75617d1c55f4ad079","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_1.0.0_1781270341134_0.7140086227684372","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@skapxd/eslint-opinionated","version":"2.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@2.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"872133a20627edac152449fa503ecab8c4fecbbe","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-2.0.0.tgz","fileCount":52,"integrity":"sha512-9Icn0BGoPCSZoORwRqPrh5yGLLotkrxdx5CP9DE95R1yOSpvoCh5NPc9LPtdd1uorD2EIRQ5UjzWLQoFc9QUyg==","signatures":[{"sig":"MEUCIQDtMuWr2v7FTM7WYe+TzQghD6yC0Z5xFlEfdsxNXsIU/QIgVEMJ75v94yEJ5UjM0cfDkro6I578LNB23Enl/Vs1oB0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2241088},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"39003e4d5ee96800d33fcc5c272c6171d074df63","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_2.0.0_1781270699922_0.09102362778846174","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@skapxd/eslint-opinionated","version":"3.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@3.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint-changed":"dist/cli.js"},"dist":{"shasum":"0de4698d1609a82d5d536abf5b443b0e5386d263","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-3.0.0.tgz","fileCount":52,"integrity":"sha512-kx/z7QOjBwvEq/fU1QQD5snSVKJJ0dau9XM+lBseUztRl6eXCLgY5RGsok9Jl8ptUY5R6SelEVmxxO0A6VM8tg==","signatures":[{"sig":"MEYCIQDfz76ukwET03ZuxF6dDWRYN6qfoTRv9TGE29RoWcBgQQIhAM3jHpYClHSHDqARTcvz5PT4U+F2IYkuJBRoFchsSuA+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2514707},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"e77f692fd28031f99e198c2573c961e28de30e14","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","lint:changed":"tsup && node dist/cli.js","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","@skapxd/result":"^1.0.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","commander":"^15.0.0","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_3.0.0_1781356235289_0.270116820366173","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@skapxd/eslint-opinionated","version":"4.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@4.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"12321863c7f512c54580b4fd07560fa4a6668a13","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-4.0.0.tgz","fileCount":54,"integrity":"sha512-xqQz2/E9Yu5TQDs2rvHxwS6O6pE6LNG0GhQunFf5Bsd84aHuQU6oqNR85wLc2he7ykBd7B0sWxGz/6SQgZa2pQ==","signatures":[{"sig":"MEYCIQDhpukGZ4y1Hn1ifBmgCgWPbciWyK9PbtZO6g+PoL0p7wIhAI5rOH1MzRgwzFVKbbPSTuK1UEk/C+hYDhsHXTIavxYs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2608360},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"112f37e5d14fcc55444fb0934425d24320abbc1a","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_4.0.0_1781471338205_0.8742746773302732","host":"s3://npm-registry-packages-npm-production"}},"4.0.1":{"name":"@skapxd/eslint-opinionated","version":"4.0.1","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@4.0.1","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"26c4c16a2b7a7de481017433e5cf615badc40835","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-4.0.1.tgz","fileCount":58,"integrity":"sha512-/lpR4AOqBlgPMWZfUMQQ3+AogU7lLOwM9Q/26mJRGG6Mk8nJF5ef1qztL3zf2PHp6tHQ/Cj/5bpkw+LOEZ1klg==","signatures":[{"sig":"MEYCIQCiEY8vmFJy4Gxp51hg2jkzIja47HgE3A/LyWnf6IlJGAIhAPN1C71NBbHnyXic2MA8H6LRjZwwKOSwTgdOjA+DIB5t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@4.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2652592},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"deb2693a65cb92016397c992cb03fc0597b4d15b","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_4.0.1_1781480696997_0.23217087260650748","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@skapxd/eslint-opinionated","version":"5.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@5.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"1b8d23eeb8db62906c9b47543414fd691bdbe5ad","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-5.0.0.tgz","fileCount":58,"integrity":"sha512-xwoCjmbVvSngue9IfLrFcgw0oC7TftqZXy/fAuKFX1RaI8MCiDePNqz3hqvaX4obIA7nSR6NoBuicR26LyTtdw==","signatures":[{"sig":"MEUCIQCg1zyAUaauJq/SI8LM3V5tu9B3n8v8cjODj+jGv3mKbwIgHmw1j0E7oLJichFxaiw8QTlEJayBzaMg/1vlPJAOFyc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2692324},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"79d641f937657abcabe66e965353ad2354214ebf","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_5.0.0_1781537399848_0.9039470819526456","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@skapxd/eslint-opinionated","version":"6.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@6.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"c08b27b65b13f07ba7b90778d141897c721bd685","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-6.0.0.tgz","fileCount":58,"integrity":"sha512-3QkWl/bkqIEto47uFXccLLU+l+pw0XKe4ofYqvlvXO9B9Gq/GNV5etXzMtyqLwfy657DUfitiK5H5W/tAbbF7g==","signatures":[{"sig":"MEYCIQDETqrA7soazgqwyepGHZDb3LXQD3L2lRXPPWOsjECGsgIhAI/xxrJrX69EIhJd0DMYwIFuT1HzBw1OuMF72GED0NIA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@6.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2828037},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"097cd27a1d08aa62e0b27c3479ac916d62e64022","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_6.0.0_1781551626920_0.502118363200164","host":"s3://npm-registry-packages-npm-production"}},"6.0.1":{"name":"@skapxd/eslint-opinionated","version":"6.0.1","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@6.0.1","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"3a01e012bf965500ce3a39b781caebb67a59c0fb","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-6.0.1.tgz","fileCount":58,"integrity":"sha512-UCxi1iSUteuXZTGyYcIU60T62/z6ORk+TKzg2AUTNNOMBXYdwTqqMaIMntvNeMifujFgcOCE14dqP0E7o47YHw==","signatures":[{"sig":"MEQCIAbQLnrsFfDKxiSjEBy4Ieeg2VXTiBb6uEA9iwj2JoYeAiAXKONO62d2HYxeXlpgBlObf37BmDEVh5fG+5xqorcolw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@6.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2828412},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"78eb9e95da305aecfd337c9066fc4222e2d9ac99","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_6.0.1_1781552621308_0.5382102388249284","host":"s3://npm-registry-packages-npm-production"}},"6.1.0":{"name":"@skapxd/eslint-opinionated","version":"6.1.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@6.1.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"452d8656f26aa35c7953c83104de6a218abd5121","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-6.1.0.tgz","fileCount":58,"integrity":"sha512-W3/qG4S9MwDVk40gF6m3ij1tjYOhEGZ1bs4LoxFmFG4A230qUH+m0Hr/mDXuVaVOjpG5OWHddRsZFHPHmGjwPw==","signatures":[{"sig":"MEUCIA7QJ6WF9iCBsYKn1VfHO/RgCA6O8P8L/+vi89myRpXvAiEAvLq8cxD9EX3Qee4Fu9+MDw3J9DlJx9qmdAzrUbY4NU4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@6.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2859923},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"1b5458ae11e5e75eafa59b78083c52a1d4b699fd","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_6.1.0_1781567673339_0.7420813582224368","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"@skapxd/eslint-opinionated","version":"7.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@7.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"f2b175dcbc22a3e4913bc8f2cc85481b63f05b12","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-7.0.0.tgz","fileCount":60,"integrity":"sha512-wT+oebaAzk5eAZGTS6HOYMip4mlNoWpysNlcuurbGtaYfCAuS6UT2E5z5K3orkgwc6itdszbk9oP2O0UtN8UlQ==","signatures":[{"sig":"MEQCIBud7Kpc3Ao6W0mHDNf93elz55joklZLFOWANFKWn2zeAiBG0wkn+Wn0izWIvs0qP6USJdJz9RQGXT74JwxeEEnxKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@7.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2920520},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"9c2c2731de07214885cf291c50c3d45bf1e443ab","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_7.0.0_1781618588380_0.6250679964815404","host":"s3://npm-registry-packages-npm-production"}},"7.1.0":{"name":"@skapxd/eslint-opinionated","version":"7.1.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@7.1.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"96ad653b1a7264c672e8f6ea8aa46292fcf89fd5","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-7.1.0.tgz","fileCount":60,"integrity":"sha512-lVddVY8Kj4omPWNcXh6YYlcSDKIoL7hjQccO9eqfUmNg0Tt6Ft0B6XBAUtvDSnXm0djA90tKGwjAYNc1O8ezBg==","signatures":[{"sig":"MEUCIQChRh2HbXTzz0fRJco1rok+nAosXSSVOxIQ66/qsmitbwIgH/5LMEOYOEX3DPx+xEfwqoETo4kS1kIi1bCtdCCF9bU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@7.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2925576},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"4aaf3ec6b4b541a43d2b7f6b1eff5899343d6c4a","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_7.1.0_1781625532706_0.08810790546081448","host":"s3://npm-registry-packages-npm-production"}},"7.2.0":{"name":"@skapxd/eslint-opinionated","version":"7.2.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@7.2.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"d78e3120896990d7278d1d5fb183df40a79275da","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-7.2.0.tgz","fileCount":60,"integrity":"sha512-RPTArXBcoDcd9ZyXsk7enf2k1GX0JeimW5dXJ0PgPdIN6d1zlJqwzxZm2dsbjwxgCg94AlTkzacByn3lR+PR7g==","signatures":[{"sig":"MEQCIEUh5djFlLBIBAka2bW3fhZbZsZCe70COBiwbQxVUX1pAiBz6QUBsk9toTKfCaT/s99wLiyRaIUBZlY4yVQrU7XbNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@7.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2979787},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"c0b459bb95cb998e95aea45513dc354d7f921af6","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_7.2.0_1781645352861_0.13850458737000748","host":"s3://npm-registry-packages-npm-production"}},"7.3.0":{"name":"@skapxd/eslint-opinionated","version":"7.3.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@7.3.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"8d3fb3caa5ed425f355ffd4f4720f8c8d500c630","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-7.3.0.tgz","fileCount":60,"integrity":"sha512-s2wq+xNXqAvuE3a/jz73yFQGY88mehTs6lg7vTGeYUss9lvgL6i6jvEPq1/OSXKjS6Fjybx/cvPqmlFEz3iYBw==","signatures":[{"sig":"MEUCIBuakAvH5o6bqAfq3lue5Em7VfW8VIDCIQAjw3Jc4r/GAiEAtLeXe9K4K6r+j+XcPvCPXVAU2E11DabKxGUUPB/QYzM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@7.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2987434},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"5922140da6388d421542aecc2ca90e6559b1f7df","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"skapxd","email":"hbiaser132@gmail.com"},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"10.9.8","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^1.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_7.3.0_1781799388357_0.5809497190300426","host":"s3://npm-registry-packages-npm-production"}},"8.0.0":{"name":"@skapxd/eslint-opinionated","version":"8.0.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.0.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"4a8ba7a113a6140e01fe7b56edee6c62a8351021","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.0.0.tgz","fileCount":62,"integrity":"sha512-tDnxPTK2YQz5/fgWjnnNG9j1U61L78az1ygQRH5CamIS7e5xwv/GPFCeil/unQByBbqPshdAPaIGemqs2Jzdzg==","signatures":[{"sig":"MEYCIQCFjJU9taVE8S1LBguEycLA5YlbahqOaGarZLrAanGwuQIhAO8FW/e9aiDtM+c6A1brvamaS//yJbgRBnsHo/1fuqy9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3193678},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"1b54daa574c6553271d482ae6a4d87e375907d34","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.0.0_1781822677587_0.917908616985321","host":"s3://npm-registry-packages-npm-production"}},"8.1.0":{"name":"@skapxd/eslint-opinionated","version":"8.1.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.1.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"259091901b122acba38e1ef324a463f9f0333ca9","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.1.0.tgz","fileCount":62,"integrity":"sha512-I6YAZwujTltt/+PxutpItuVQj5Cp1aU0sZOiQiAfBzXDbzQXgdvGeaGw4qXev+YBKgC+2BJnpjWve46lWIU6Og==","signatures":[{"sig":"MEUCIQC5j88IHb204v3uwjHbDdzKuBC4XrP+20MW7iXZ4FmZiQIgZvq6pU/CzXpY5cqpgKWL4qfDN/Jen3juiH2krHYO7s0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3216096},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"c4086e0f1775d3b48f64ef17ef4b5ee42ac26cb0","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.1.0_1781828443637_0.40648190211546553","host":"s3://npm-registry-packages-npm-production"}},"8.2.0":{"name":"@skapxd/eslint-opinionated","version":"8.2.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.2.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"dbb6377268ae3335d1b20f5ee0c513babde31563","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.2.0.tgz","fileCount":62,"integrity":"sha512-EDQc5KV5/zmhZdydeovuNFlARBAievqFLBSJjlzM+d4wdIvyNzVIEmqbiDifrU2+8cp1UrtPzcdlmvgjwNbPeg==","signatures":[{"sig":"MEYCIQDDYenC0qpescg0yY+a0+VLhJEhDZupMf3jDw249PJ8FAIhAJ1/8rPx7tIuwU7lnAwdfCOqJyoKKysfiHD+Mc4CwZRW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3265973},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"1a92260445a266787d3a75ccec8b2c7093239ca1","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.2.0_1781879987148_0.6863776819378946","host":"s3://npm-registry-packages-npm-production"}},"8.3.0":{"name":"@skapxd/eslint-opinionated","version":"8.3.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.3.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"7fdb791b6728843a7b7dab65b0cdc21dace2c6a2","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.3.0.tgz","fileCount":62,"integrity":"sha512-IIfW5NyyubPX7f+R14YAwQEkow7vcgCJ1Q4lh5pQNNluMno4vQZOGcUBl68WkB508HCCTq+TOIn6OjZlPOdaQQ==","signatures":[{"sig":"MEQCIH68rONydpWQ6CA/rAW4bQcJ52H+okbPaf7Ylm8OncrtAiAjtZdtaAEMK1zkemhkDvqQynMoeyyePorncbiIxESNig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3308485},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"d8ce959f81e17f42a8459d6a2a78b590ce4edb8d","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.3.0_1781890656351_0.4473499718630247","host":"s3://npm-registry-packages-npm-production"}},"8.4.0":{"name":"@skapxd/eslint-opinionated","version":"8.4.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.4.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"f44c12ec6df928e4bab8e457b37ab52023fb82b5","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.4.0.tgz","fileCount":62,"integrity":"sha512-IDbKB28sL99U8bvy4IQWVNgHbWQeVCITdHX7RS8XGH0NL3IksivTLOZ4v+cKY5mQorZlbV+UkfkAxKaLRD7b1Q==","signatures":[{"sig":"MEUCIEOHfZEFY3HoHucCkeTtGxUxGHypMRBPwxCX1HETUDppAiEAqHDXt9RDT68RIukNCMIt6J5G5zG1qK8lH+SPcKkI0VM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3306914},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"c4f0c9ccdf3582174e8fca6eaec443ffb0915fe4","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.4.0_1781894111696_0.3303484141342634","host":"s3://npm-registry-packages-npm-production"}},"8.5.0":{"name":"@skapxd/eslint-opinionated","version":"8.5.0","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","_id":"@skapxd/eslint-opinionated@8.5.0","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"homepage":"https://github.com/skapxd/eslint-opinionated#readme","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"bin":{"skapxd-lint":"dist/cli.mjs"},"dist":{"shasum":"a918d774469064383966b42bfce29180ae184c3e","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.5.0.tgz","fileCount":62,"integrity":"sha512-V1ga+3TibrHiGGj2+Wqrg/mPoNmPo2n2DP06db14isJRtltek5Th6icV0puzeGm82Vuaw5qyHA91ojIRUcu9DA==","signatures":[{"sig":"MEQCICAJTcvxz7Qa0n4w9TMODSyHQ9PSyL7YSCqtF+GcrZmKAiB9HO0S2Ft3jSyFnAljINgGODrtruZzcudBYONT2RbSOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3365948},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"gitHead":"0234f9e1f821ea926d7ebac39dd3950109289aea","scripts":{"dev":"tsup --watch","lint":"tsup && eslint src","test":"vitest run","build":"tsup","lint:fix":"tsup && eslint src --fix","typecheck":"tsc --noEmit","test:watch":"vitest","skapxd-lint":"node dist/cli.mjs","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"repository":{"url":"git+https://github.com/skapxd/eslint-opinionated.git","type":"git"},"_npmVersion":"11.17.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","directories":{},"_nodeVersion":"22.22.3","dependencies":{"picomatch":"^4.0.4","picocolors":"^1.1.1","@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.2.2","devDependencies":{"jiti":"^2.7.0","tsup":"8.5.1","eslint":"9.39.4","vitest":"^4.1.8","typescript":"5.9.3","@types/node":"25.0.10","@types/picomatch":"^4.0.3","typescript-eslint":"8.59.4","@typescript-eslint/utils":"8.59.4","@typescript-eslint/rule-tester":"^8.60.1"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"_npmOperationalInternal":{"tmp":"tmp/eslint-opinionated_8.5.0_1781899956686_0.19619067013130964","host":"s3://npm-registry-packages-npm-production"}},"8.6.0":{"name":"@skapxd/eslint-opinionated","version":"8.6.0","description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","packageManager":"pnpm@11.2.2","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","bin":{"skapxd-lint":"dist/cli.mjs"},"engines":{"node":">=20.12.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./astro":{"import":{"types":"./dist/astro/index.d.mts","default":"./dist/astro/index.mjs"},"require":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"}},"./nest":{"import":{"types":"./dist/nest/index.d.mts","default":"./dist/nest/index.mjs"},"require":{"types":"./dist/nest/index.d.ts","default":"./dist/nest/index.js"}},"./next":{"import":{"types":"./dist/next/index.d.mts","default":"./dist/next/index.mjs"},"require":{"types":"./dist/next/index.d.ts","default":"./dist/next/index.js"}},"./shared":{"import":{"types":"./dist/shared/index.d.mts","default":"./dist/shared/index.mjs"},"require":{"types":"./dist/shared/index.d.ts","default":"./dist/shared/index.js"}}},"scripts":{"build":"tsup","dev":"tsup --watch","lint":"tsup && eslint src","lint:fix":"tsup && eslint src --fix","lint:changed":"tsup && node dist/cli.mjs --changed","measure:rules":"pnpm build && node scripts/measure-rule-timing.mjs","skapxd-lint":"node dist/cli.mjs","skapxd-lint:build":"pnpm build && node dist/cli.mjs","test:peer-minimum":"pnpm build && node scripts/check-peer-minimum.mjs","test:peer-latest":"pnpm build && node scripts/check-peer-latest.mjs","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit"},"keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"author":{"name":"skapxd"},"license":"MIT","dependencies":{"@clack/prompts":"^1.5.1","@skapxd/result":"^2.0.1","@toon-format/toon":"^2.3.0","picocolors":"^1.1.1","picomatch":"^4.0.4"},"peerDependencies":{"eslint":">=9","typescript":">=5","typescript-eslint":">=8.24"},"devDependencies":{"@skapxd/nest":"^0.2.0","@types/node":"25.0.10","@types/picomatch":"^4.0.3","@typescript-eslint/rule-tester":"^8.60.1","@typescript-eslint/utils":"8.59.4","eslint":"9.39.4","jiti":"^2.7.0","tsup":"8.5.1","typescript":"5.9.3","typescript-eslint":"8.59.4","vitest":"^4.1.8"},"repository":{"type":"git","url":"git+https://github.com/skapxd/eslint-opinionated.git"},"gitHead":"eef81e0f46d88f22a007ea2524e740a04cc1f662","_id":"@skapxd/eslint-opinionated@8.6.0","bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"homepage":"https://github.com/skapxd/eslint-opinionated#readme","_nodeVersion":"22.23.0","_npmVersion":"11.18.0","dist":{"integrity":"sha512-vzF3S45D9rYA4qOC3Yrj7XWfFbuVbI0a2x/o3mYyS/e4Awo0grtnknUwDKAgMCKrH3hhl06mf+XYlB/AJnJ00Q==","shasum":"d697e5a7ac2aefeafce41aaa7db221d4d3a451dc","tarball":"https://registry.npmjs.org/@skapxd/eslint-opinionated/-/eslint-opinionated-8.6.0.tgz","fileCount":62,"unpackedSize":3597578,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@skapxd%2feslint-opinionated@8.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBPKQO3TETL8W7Bna8pLKzddCutYh3CLr9jd2ysIOTpNAiBNlsmi4K3szlajNQyrgvrDUIkNfzBJdRe5PWu6gUOh0g=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e78561d5-ad51-4a0b-afbf-cee80f84d74c"}},"directories":{},"maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-opinionated_8.6.0_1782774907725_0.46359851279065456"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-09T20:42:32.464Z","modified":"2026-06-29T23:15:08.174Z","0.1.0":"2026-06-09T20:42:32.774Z","0.1.1":"2026-06-09T21:04:29.823Z","0.2.0":"2026-06-09T21:21:23.338Z","0.3.0":"2026-06-09T21:29:58.481Z","0.4.0":"2026-06-09T21:44:16.578Z","0.5.0":"2026-06-09T21:53:13.285Z","0.6.0":"2026-06-09T22:29:20.205Z","0.7.0":"2026-06-10T23:32:38.944Z","0.8.0":"2026-06-10T23:45:09.919Z","0.9.0":"2026-06-11T00:54:38.591Z","0.10.0":"2026-06-11T14:15:26.427Z","0.11.0":"2026-06-11T14:36:18.717Z","0.12.0":"2026-06-11T15:19:40.601Z","0.12.1":"2026-06-11T15:33:04.300Z","0.13.0":"2026-06-11T18:55:21.183Z","0.14.0":"2026-06-11T22:53:48.131Z","0.15.0":"2026-06-12T11:42:53.082Z","0.16.0":"2026-06-12T11:56:04.227Z","0.17.0":"2026-06-12T12:17:10.923Z","0.18.0":"2026-06-12T13:11:14.362Z","1.0.0":"2026-06-12T13:19:01.355Z","2.0.0":"2026-06-12T13:25:00.152Z","3.0.0":"2026-06-13T13:10:35.540Z","4.0.0":"2026-06-14T21:08:58.377Z","4.0.1":"2026-06-14T23:44:57.198Z","5.0.0":"2026-06-15T15:30:00.041Z","6.0.0":"2026-06-15T19:27:07.166Z","6.0.1":"2026-06-15T19:43:41.476Z","6.1.0":"2026-06-15T23:54:33.545Z","7.0.0":"2026-06-16T14:03:08.573Z","7.1.0":"2026-06-16T15:58:53.033Z","7.2.0":"2026-06-16T21:29:13.015Z","7.3.0":"2026-06-18T16:16:28.643Z","8.0.0":"2026-06-18T22:44:37.818Z","8.1.0":"2026-06-19T00:20:43.831Z","8.2.0":"2026-06-19T14:39:47.357Z","8.3.0":"2026-06-19T17:37:36.531Z","8.4.0":"2026-06-19T18:35:11.920Z","8.5.0":"2026-06-19T20:12:36.881Z","8.6.0":"2026-06-29T23:15:07.900Z"},"bugs":{"url":"https://github.com/skapxd/eslint-opinionated/issues"},"author":{"name":"skapxd"},"license":"MIT","homepage":"https://github.com/skapxd/eslint-opinionated#readme","keywords":["eslint","eslint-plugin","typescript","react","architecture","result"],"repository":{"type":"git","url":"git+https://github.com/skapxd/eslint-opinionated.git"},"description":"Reusable ESLint architectural rules for TypeScript, React, backend, frontend, and package projects","maintainers":[{"name":"skapxd","email":"hbiaser132@gmail.com"}],"readme":"# @skapxd/eslint-opinionated\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nReglas de ESLint para que los agentes no negocien la arquitectura de tu proyecto.\n\nEste paquete convierte opiniones de arquitectura en guardrails ejecutables: archivos pequenos, nombres semanticos, errores modelados con `Result`, causas preservadas y fronteras explicitas. El README queda como puerta de entrada; el detalle vive en `docs/` para que npm no entierre lo importante en 2.400 lineas.\n\n## Skill para agentes\n\nInstala la skill `skapxd-lint` en tu agente con un comando compatible con skills.sh y 20+ agentes como Claude Code, Cursor y Copilot:\n\n```bash\nnpx skills add skapxd/eslint-opinionated\n```\n\nLuego pide al agente que la use:\n\n- \"Audita este proyecto con skapxd-lint y muestrame los hallazgos.\"\n- \"Adopta las reglas skapxd de forma incremental (10%) en este repo legacy.\"\n- \"Verifica el lote de adopcion skapxd con la seed que acaba de generar el CLI.\"\n\nLa skill esta indexada en skills.sh, invoca el CLI publicado `@skapxd/eslint-opinionated@6` con npm provenance y no modifica el proyecto medido: la evaluacion es efimera y solo lectura salvo que pidas aplicar fixes.\n\nSi no usas la skill, puedes invocar el CLI directo:\n\n```bash\nnpx @skapxd/eslint-opinionated@6 <path> --yes --format toon\n```\n\n## Uso rapido\n\n```bash\npnpm add -D @skapxd/eslint-opinionated eslint typescript typescript-eslint\n```\n\n```js\nimport skapxd from \"@skapxd/eslint-opinionated\";\n\nexport default [\n  skapxd.configs.shared.base,\n];\n```\n\nLuego ejecutalo como cualquier regla de ESLint:\n\n```bash\npnpm eslint\npnpm eslint src\npnpm eslint --max-warnings=0\n```\n\n## Documentacion\n\nLos enlaces apuntan a GitHub de forma absoluta para que funcionen tambien desde npmjs.com.\n\n| Tema | Contenido |\n| --- | --- |\n| [Axiomas y motivacion](https://github.com/skapxd/eslint-opinionated/blob/main/docs/axiomas.md) | Por que existe el paquete, que protege y por que las alternativas no bastan. |\n| [Presets y estructura](https://github.com/skapxd/eslint-opinionated/blob/main/docs/presets.md) | Shared, backend, frontend, Next.js, NestJS, Astro, package y strict. |\n| [Adopcion incremental y legacy](https://github.com/skapxd/eslint-opinionated/blob/main/docs/adopcion-legacy.md) | Lint sobre cambios, olas de adopcion, overrides y propuestas de reglas. |\n| [Pipeline Result](https://github.com/skapxd/eslint-opinionated/blob/main/docs/pipeline-result.md) | Como encajan @skapxd/result, ts-pattern y el trace global. |\n| [Notas type-aware](https://github.com/skapxd/eslint-opinionated/blob/main/docs/notas-type-aware.md) | Supuestos, limites conocidos y notas de reglas que dependen del checker. |\n| [Indice de reglas](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/README.md) | Las 64 fichas individuales en docs/reglas/. |\n\n## Reglas\n\n| Regla | Que protege |\n| --- | --- |\n| [`skapxd/one-root-function-per-file`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/one-root-function-per-file.md) | Un archivo, una función top-level semántica. |\n| [`skapxd/filename-matches-root-function`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/filename-matches-root-function.md) | El nombre del archivo es la versión kebab de su función raíz exportada. |\n| [`skapxd/dense-function-requires-comment`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/dense-function-requires-comment.md) | Funciones exportadas densas en líneas, literales y ramas declaran su motivación en un comentario de bloque. |\n| [`skapxd/async-functions-return-result`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/async-functions-return-result.md) | Funciones async de dominio deben retornar `Promise<Result<...>>`. **Apagada por defecto; opt-in** (ver motivos en su sección). |\n| [`skapxd/requires-strict-tsconfig`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/requires-strict-tsconfig.md) | El `tsconfig` debe ser implacable (`strict`, `noImplicitReturns`, `noUncheckedIndexedAccess`): sin ellos, el compilador no puede hacer irrepresentable lo inválido. |\n| [`skapxd/result-error-requires-cause`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/result-error-requires-cause.md) | Un `Result.err` derivado debe preservar `cause: result.error`. |\n| [`skapxd/result-error-requires-handling`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/result-error-requires-handling.md) | Prohíbe descartar en silencio un Result fallido: el error se transforma o se entrega, nunca se ignora. |\n| [`skapxd/result-error-requires-modeling`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/result-error-requires-modeling.md) | Una frontera no puede devolver `Result<_, unknown>`: el canal de error debe modelarse como un error de dominio (tagged union), no quedar opaco. |\n| [`skapxd/await-requires-result`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/await-requires-result.md) | Todo `await` debe resolver en un `Result`: o la función llamada retorna `Promise<Result<...>>` (preferido) o se envuelve en `trySafe`. **Obligatoria en todos los presets tipados.** |\n| [`skapxd/no-rethrow-result-error`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-rethrow-result-error.md) | Prohíbe re-lanzar el error crudo de un `Result`: el flujo no vuelve de `trySafe` a excepción cruda. |\n| [`skapxd/trysafe-only-at-boundary`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/trysafe-only-at-boundary.md) | Exige que `trySafe` capture en la frontera runtime/paquete, no una capa arriba sobre código del proyecto. **En las bases** (agnóstica de framework); detección conservadora para acotar falsos positivos. |\n| [`skapxd/no-ad-hoc-ok-result`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-ad-hoc-ok-result.md) | Evita contratos `{ ok: ... }` hechos a mano en async exports. |\n| [`skapxd/max-hook-size`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/max-hook-size.md) | Marca hooks grandes o con demasiados `useState`. |\n| [`skapxd/class-properties-require-readonly`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/class-properties-require-readonly.md) | Toda propiedad de clase es `readonly`: el cambio se modela con instancias nuevas, no con mutación. |\n| [`skapxd/max-public-methods`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/max-public-methods.md) | Una clase, una responsabilidad: máximo N métodos públicos (default 1). Agnóstica al framework, en las reglas base; el preset `nest` le inyecta sus hooks. |\n| [`skapxd/no-exported-function-bag`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-exported-function-bag.md) | Prohíbe exportar objetos que publican varias funciones: una bolsa de funciones es una clase o namespace disfrazado. En las bases. |\n| [`skapxd/no-accessors`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-accessors.md) | Prohíbe `get`/`set`: un método explícito dice la verdad; el accessor esconde computación (y métodos disfrazados). |\n| [`skapxd/jsx-return-name-pascal-case`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/jsx-return-name-pascal-case.md) | Funciones que retornan JSX deben nombrarse como componentes. |\n| [`skapxd/nest-controller-injects-use-case`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-controller-injects-use-case.md) | Controllers y gateways inyectan casos de uso con `@UseCase`, no services/repositories directos. Preset `nest`. |\n| [`skapxd/nest-controller-returns-dto`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-controller-returns-dto.md) | Los métodos de ruta de un `@Controller` retornan una clase `extends Dto()` con brand `\"dto\"` de `@skapxd/nest` para que Swagger genere el response schema sin exponer interfaces ni schemas de DB. Preset `nest`. |\n| [`skapxd/nest-dto-no-inline-object`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-dto-no-inline-object.md) | Los objetos anidados de un DTO se modelan como clases DTO, no como tipos inline ni `type: Object`. Preset `nest`. |\n| [`skapxd/nest-dto-requires-api-property`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-dto-requires-api-property.md) | Toda propiedad pública de un `*.dto.ts` lleva `@ApiProperty`: el contrato HTTP se documenta en el DTO. Preset `nest`. |\n| [`skapxd/nest-dto-requires-validation`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-dto-requires-validation.md) | Todo DTO valida en runtime: class-validator en cada propiedad, `@IsOptional` si hay `?`, `@Type` junto a `@ValidateNested`; zod/valibot para uniones. Preset `nest`. |\n| [`skapxd/nest-no-direct-instantiation`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-no-direct-instantiation.md) | Prohíbe `new` sobre imports internos en services: las dependencias entran por el constructor (DI). Preset `nest`. |\n| [`skapxd/nest-no-inline-query-params`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-no-inline-query-params.md) | Dos o más `@Query('x')`/`@ApiQuery` individuales son un DTO disfrazado: consolida en `@Query() filters: Dto`. Preset `nest`. |\n| [`skapxd/nest-no-result-response`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-no-result-response.md) | Los métodos de un `@Controller` no retornan `Result`: el envelope se serializaría al cliente. La activa el preset `nest`. |\n| [`skapxd/nest-no-swagger-in-controllers`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-no-swagger-in-controllers.md) | Los controllers no se llenan de decoradores de swagger; el plugin introspecciona los DTOs. Preset `nest`. |\n| [`skapxd/nest-requires-swagger-plugin`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-requires-swagger-plugin.md) | `nest-cli.json` debe tener el plugin `@nestjs/swagger`: la premisa de las reglas de swagger, verificada. Preset `nest`. |\n| [`skapxd/nest-use-case-no-result-response`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-use-case-no-result-response.md) | Los métodos públicos de un `@UseCase` real consumen `Result` y lanzan excepciones, no propagan el envelope al controller. Preset `nest`. |\n| [`skapxd/nest-validation-pipe-config`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nest-validation-pipe-config.md) | Todo `new ValidationPipe` configura `transform` y `whitelist`: la premisa de las reglas de DTOs. Preset `nest`. |\n| [`skapxd/nested-function-requires-capture`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/nested-function-requires-capture.md) | Una funcion anidada nombrada debe capturar scope local; si no, es un helper extraible. Preset `shared`, en `error`. |\n| [`skapxd/no-anonymous-condition`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-anonymous-condition.md) | El `if` solo acepta condiciones ya nombradas; todo cómputo (llamada, comparación, `&&`/`||`) se extrae a una `const` con nombre semántico. |\n| [`skapxd/no-deep-relative-imports`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-deep-relative-imports.md) | Limita la profundidad de los imports relativos (`../`). |\n| [`skapxd/no-default-export`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-default-export.md) | Prohíbe `export default`; el nombre del símbolo es el contrato. Exime configs/stories y, en el preset `next`, los entrypoints del App Router. |\n| [`skapxd/no-else`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-else.md) | Prohíbe `else`/`else if`: el else es el estado sin nombre. Retorno anticipado, ternario simple o `match()`. |\n| [`skapxd/no-emoji`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-emoji.md) | Prohíbe emojis en strings y JSX; cada sistema los renderiza distinto. Usa un icono SVG. |\n| [`skapxd/no-explicit-any`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-explicit-any.md) | Prohíbe `any`: apaga el sistema de tipos donde más se necesita. `unknown` para lo desconocido, el tipo real para lo demás. Wrapper de typescript-eslint. |\n| [`skapxd/no-floating-promises`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-floating-promises.md) | Promesas sin `await` ni `void`: el rechazo muere sin pasar por trySafe. El mensaje corrige el consejo upstream (`.then/.catch` aquí están prohibidos). Wrapper de typescript-eslint. |\n| [`skapxd/no-magic-numbers`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-magic-numbers.md) | Prohíbe números mágicos: un literal numérico significativo debe extraerse a una `const` con nombre de dominio. Wrapper de typescript-eslint. |\n| [`skapxd/no-unsafe-argument`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unsafe-argument.md) | Impide pasar un `any` invisible como argumento: la frontera debe declararse `unknown` y estrecharse con schema o predicate. Wrapper de typescript-eslint. |\n| [`skapxd/no-unsafe-assignment`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unsafe-assignment.md) | Impide asignar un `any` invisible a variables o propiedades: la frontera debe declararse `unknown` y validarse. Wrapper de typescript-eslint. |\n| [`skapxd/no-unsafe-call`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unsafe-call.md) | Impide invocar valores `any`: antes de llamar hay que probar el tipo real con evidencia runtime. Wrapper de typescript-eslint. |\n| [`skapxd/no-unsafe-member-access`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unsafe-member-access.md) | Impide leer propiedades sobre `any`: `JSON.parse()`/`response.json()` pasan por `unknown` + schema/predicate antes de tocar campos. Wrapper de typescript-eslint. |\n| [`skapxd/no-unsafe-return`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unsafe-return.md) | Impide retornar `any` desde una funcion tipada: el dato externo se estrecha antes de salir de la frontera. Wrapper de typescript-eslint. |\n| [`skapxd/no-unverified-cast`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-unverified-cast.md) | Prohíbe casts `as` que estrechan sin evidencia: schema, type predicate honesto o tipo de origen mejor modelado. Wrapper de typescript-eslint. |\n| [`skapxd/prefer-schema-validation`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-schema-validation.md) | Detecta validadores artesanales con muchos checks estructurales sobre el mismo `unknown`/`any`: eso ya es un schema, decláralo. |\n| [`skapxd/no-impossible-branch`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-impossible-branch.md) | Condiciones que el type-checker demuestra constantes: la pregunta ya tiene respuesta. Es `@typescript-eslint/no-unnecessary-condition` con nombre semántico y mensajes que enseñan el fix. |\n| [`skapxd/no-nested-if`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-nested-if.md) | Prohíbe `if` anidados: retorno anticipado o `match()`. Menos carga cognitiva y sin puntos ciegos para las demás reglas. |\n| [`skapxd/no-non-null-assertion`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-non-null-assertion.md) | Prohíbe el `!`: es \"cállate, yo sé más que tú\" dicho al compilador. Modela el tipo o maneja la duda. Wrapper de typescript-eslint. |\n| [`skapxd/no-runtime-state-guard`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-runtime-state-guard.md) | Prohíbe `if (this.x) throw` en métodos: el estado inválido se hace irrepresentable en el tipo, no se vigila en runtime. |\n| [`skapxd/no-silenced-compiler`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-silenced-compiler.md) | Prohíbe `@ts-ignore`/`@ts-nocheck`: silenciar la alarma no arregla el incendio. `@ts-expect-error` con descripción queda para tests de tipos. Wrapper de `ban-ts-comment`. |\n| [`skapxd/no-tunnel-props`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-tunnel-props.md) | Ninguna prop viaja más de un nivel: quien la recibe no puede reenviarla a otro componente. Mata el prop drilling. |\n| [`skapxd/prefer-abort-signal`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-abort-signal.md) | Listeners en efectos se limpian con `AbortController` (`{ signal }` + `abort()`), no con `removeEventListener`. |\n| [`skapxd/prefer-node-protocol-for-builtins`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-node-protocol-for-builtins.md) | Builtins de Node siempre con protocolo `node:`: separa runtime de npm y evita ambigüedad cross-runtime. |\n| [`skapxd/prefer-tagged-union-state`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-tagged-union-state.md) | Prohíbe estados inconsistentes representables: flag de loading + campo de error independientes → unión etiquetada. |\n| [`skapxd/prefer-type-over-interface`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-type-over-interface.md) | Las uniones discriminadas son types; un `type` no crece en silencio por declaration merging. Wrapper de `consistent-type-definitions`. |\n| [`skapxd/no-functions-inside-components`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-functions-inside-components.md) | Prohíbe definir funciones dentro de componentes React. |\n| [`skapxd/no-try-catch`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-try-catch.md) | Prohíbe `try/catch`; usa `trySafe` de `@skapxd/result`. |\n| [`skapxd/no-promise-chain`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-promise-chain.md) | Prohíbe `.then/.catch/.finally`; usa `await` (+ `trySafe`). |\n| [`skapxd/prefer-ts-pattern`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/prefer-ts-pattern.md) | Prohíbe `switch` y ternarios anidados; usa `match()` de ts-pattern. |\n| [`skapxd/package-requires-typed-exports`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/package-requires-typed-exports.md) | Los `exports` del package.json declaran `types` por condición (`import` → `.d.mts`, `require` → `.d.ts`): mata el bug FalseCJS. Preset `package`. |\n| [`skapxd/untrusted-module-requires-adapter`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/untrusted-module-requires-adapter.md) | Los paquetes con tipos mentirosos (@types desfasados) solo se importan desde su adaptador: la mentira vive en UN archivo. Preset `package`. |\n| [`skapxd/no-jsx-ternary-null`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/no-jsx-ternary-null.md) | Prefiere `cond && <El />` sobre `cond ? <El /> : null` en JSX. |\n| [`skapxd/repeated-jsx-requires-component`](https://github.com/skapxd/eslint-opinionated/blob/main/docs/reglas/repeated-jsx-requires-component.md) | Detecta patrones JSX repetidos tres veces que ya son un componente sin nombre. Activa como `error` en `frontend`, `next/react` y `astro/react`. |\n\n## Licencia\n\nMIT\n","readmeFilename":"README.md"}