{"_id":"@sinemacula/coding-standards","_rev":"49-fa3ec2586444b9544f3df265c00cf3b1","name":"@sinemacula/coding-standards","dist-tags":{"latest":"1.25.0"},"versions":{"1.0.4":{"name":"@sinemacula/coding-standards","version":"1.0.4","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.0.4","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"7c3da0e9da76fbddb8101a2bad08996e0a708fef","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.0.4.tgz","fileCount":10,"integrity":"sha512-GHnagC43PTHGEqrSPvZ4HwILXfdHmWJwkoxmCOqtbmc2PMCB6EhpDcKv5oUaIa94Eray/bRlfrBpH1OCuQm68Q==","signatures":[{"sig":"MEQCIEGHdtjhxBBSZ56Rdhin/buL8NnZnshDr/KoPfPQB+p0AiAHouwK16Zei3fVtTXDN30MDo4yNmgolgVuYlfj+5mdug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23725},"gitHead":"3941b06022f85842dff2c6c4b7938a7252452d8e","_npmUser":{"name":"bencarey","email":"bdmc@sinemacula.co.uk"},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.11.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.0.4_1778691339013_0.4228985819054103","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@sinemacula/coding-standards","version":"1.0.6","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.0.6","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"0fa133804eec2fa5593fc145f7d0fa64457511a2","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.0.6.tgz","fileCount":10,"integrity":"sha512-X30nXjxrkL5P9j4nmQYKrzlZX3hE1QJRraT2bbR5PYiUp8dUyziRj6YFfGHn147BZF9wosfhRxeLyn3D2DbOow==","signatures":[{"sig":"MEYCIQCVflx6ZxrVIeiuXbxT+ItTNME3jPYoSr8+WeNiwpLIvgIhAICcI1MjdSMOeCJE+NjzBcK6UytLKDLs0omszF7fqlw4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23725},"gitHead":"143a0ae733f12101160bee82601ed7231ba53c9c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.13.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.1.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.0.6_1778692741664_0.5288934669645979","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@sinemacula/coding-standards","version":"1.1.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.1.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"220b024af20974c0594f9729fc8524ddfa757e09","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.1.0.tgz","fileCount":10,"integrity":"sha512-z6O5WFU9dBO6Ww4o+1CuUQKsemNu+FUcU0DpEsRf+TJwWust/1qAI/m0DHvsq3Fq0ZP7O6PKLG02svS8Opd/xg==","signatures":[{"sig":"MEUCIBHneiG/7kI3pVMUAVm1H5cddLrFcIiFcgb+yyGBI8wYAiEAj7IqAZdMRSVT6MyrDboYkJRHgdV2dDvKcHEs/mlu8OQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23862},"gitHead":"40ad81ea04571addc0e3b5a41486efb1e1bffe5b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.1.0_1780443268958_0.41951568785728766","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@sinemacula/coding-standards","version":"1.1.1","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.1.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"88b576f79bf5d31b8bf9067f101adc4fe933dec2","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.1.1.tgz","fileCount":10,"integrity":"sha512-sLUfhmnxC640NhyW2p8Mpch90xhjCuO1Z9erSvaZ8XXeb9UW4G5rZ0RGUmgd+TuNYASduOH8r0+T3Ruk7W4zsQ==","signatures":[{"sig":"MEUCIAGD1XSx31Xbwr7PA+JZJHLTArGzel7SWwB+rXsnBmYOAiEAzoT1GsQ329vbvgdofQ0cQKZ/DStahKBjQ6UVPbvxJQk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23861},"gitHead":"2b61db4e641f43a0cbda2609e34fca65d04ae779","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.1.1_1780539997735_0.14742409463162587","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@sinemacula/coding-standards","version":"1.1.2","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.1.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"12902ce93508d3110055d68daa63ecacae76c41e","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.1.2.tgz","fileCount":10,"integrity":"sha512-BBbqbGpoRButNi7ieGO+paM4M1yoDgW/mgzdsIh2QmBDGYhZ5nd5Nzk8o9cEiFatW1wr2pKts8iceiYpHOYzRg==","signatures":[{"sig":"MEUCIG45E1ssv8yIMXLS+vNLgf5VJK8ndilO4PmokXfRtGOhAiEA2xiZ9iz0qhjPSOysTZ+goEEVc8DI9IfiWL+lcg2yzsM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23862},"gitHead":"a82e9a0afc5f61385d1a8ae14386b8bc4863da63","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.1.2_1780595106306_0.8599125128765168","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@sinemacula/coding-standards","version":"1.1.3","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.1.3","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"b6388dfefd70857431e0eabbd557d9bde6f88d95","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.1.3.tgz","fileCount":10,"integrity":"sha512-AjoOghnKIJwlhMpfOc5BUjJBvDdRgT3GlsoOHnj7ovju4/mPGAuhOfCADOhaWCzPih2T0uZj3fqHuuaPCSfUOg==","signatures":[{"sig":"MEYCIQDcDIomTWlMVj8LQm3PyCJLv1jvzwg/YeqhOCLG3qL0CgIhAK7I1gbv96YOg9DGit4nBHwYFZI69Qtg0Le2LZ7isMnp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23911},"gitHead":"c823da3d99b975e7647ab589784affb8b367dc71","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.1.3_1780759419170_0.7451818243734958","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@sinemacula/coding-standards","version":"1.2.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.2.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"0ae4bf2e7f75c98a797cb9739eb504c6cb5fde92","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.2.0.tgz","fileCount":10,"integrity":"sha512-35BvKUg0eydWS72TnYOKgSnNZzW4xDVGbgU63d6O7Z2QGyOjF/glpLQef6tV6z7LEjAjPg7A7beMAb+50S2pZA==","signatures":[{"sig":"MEQCIH9SCj8LYMmRlvPP0S1krh8AMIycekvrFdkA2ymrPCAvAiBu2/j6vIghYxOykp7JeE/Lob3VCh7xVNKt1wHsAUpG3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":23911},"gitHead":"d5c1ca5b29139c12c77230cc9f4f162c7641f619","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.2.0_1781643392388_0.09654749563370224","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@sinemacula/coding-standards","version":"1.3.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.3.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"bb7a79f7da3e98e233bd5021013e586d39eae554","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.3.0.tgz","fileCount":10,"integrity":"sha512-6FkIaj4iXqwtvpPeH2DIrXsNxIpeK63C9gxmebx54XnUzI0LQp5WQXnRVlXj9SP957u8dZpStxczEQ90zaPJpA==","signatures":[{"sig":"MEUCIQCNQqG/L1GCI/NzLTGEBBdaydgRfUKK93x9HAt/NgOANgIgMpwvG9F8XHo3SgDYR2qp2U+okurliBzErHUCv8k+qiw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24419},"gitHead":"3471a8d5f2e187eecfc33d11234bae411cdb021a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.3.0_1781971837615_0.7304336153468962","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@sinemacula/coding-standards","version":"1.3.1","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.3.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"ea37dcb0d05b5e51629346e3549c58a31c8343dc","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.3.1.tgz","fileCount":10,"integrity":"sha512-+mVimdzUocZu9/GsxVS0gfq/V+ctH2vraryQyoVI3AZIe8u3dknbnrFZ/m2BLKVLqhvaQwGJQxE/VSV9iLP6sw==","signatures":[{"sig":"MEYCIQCtyKexL1G6WBm2kbJlz6qZVKurHraCC1fx/ee8RE2HtAIhANAXaiK7R9QrdjviRHFLNvUuIvA4lXiPz7RHJFjs9hp0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24419},"gitHead":"96bf1fe723d8f336b08624cc262d12ecced6ff0d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.3.1_1781978425995_0.28434536850342207","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@sinemacula/coding-standards","version":"1.4.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.4.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"dbabd133635d913527d3400236b2b6ac5148e96d","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.4.0.tgz","fileCount":10,"integrity":"sha512-IQFzqLINH92ct5DfFqpu2xzgJOmLhe9DYiMfo4ohR46rjXebHFmYu5FyJNFkAKlKbU4qMIEDGB43Ow5l0kYm7g==","signatures":[{"sig":"MEUCICtEuhnJRLD3/5JIALesE+l6R/cOoIIZwPuaZx3zDrIVAiEA6rIhoI4b0+66xWjoqBLIfdYtppbQvqNXSejHyTweT8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":24419},"gitHead":"f16de86984959d3303e14e98e5826e6ab316676d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.4.0_1782046887887_0.9644399965137742","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@sinemacula/coding-standards","version":"1.5.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.5.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"36540649c4a71af762dad3d3326a9df41cc6a156","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.5.0.tgz","fileCount":10,"integrity":"sha512-IBgAvzqr7Iee0AvWS404TTATdu9WXn8LprJqXG9P9Ze9OGUlwjwlDmUcfoBBts//w2KCLILuOH6iSC7Vxvh76g==","signatures":[{"sig":"MEQCICXJELwCAz7X9p8Y0EqEFGKk1qoervVa/wajcKD4K1oQAiAij2D9hYMwjbN0nsf3Om76deWKI4VqtRutKRFKkaIT3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27864},"gitHead":"4637369f666c08c40c7f1a7abb5eeb89d74e12e9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.5.0_1782069780543_0.1502699890296446","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@sinemacula/coding-standards","version":"1.5.1","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.5.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"67e2835c7c0525d0c739340f3f52a36a58cd64d6","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.5.1.tgz","fileCount":10,"integrity":"sha512-RFeYgdYJdY4hi4JDiLVwJ1yI81cYKFIOXJ7OiBkrSidC6axryidF7ESJLyNs6csMBro9vHK3mwvdgRpPqeW44w==","signatures":[{"sig":"MEYCIQCG2dwYluFYZXIqjW2BxrBRRVlTN0pfgfmWkXrEgXLEmwIhAO/95mMAc9JZdu3Sn5CV/nYYs7UzE0chPx8Mc4BRwG5a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27864},"gitHead":"31753116b3ca95d0b3352a98148f836f43349c0e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.5.1_1782075939098_0.011376643894176475","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@sinemacula/coding-standards","version":"1.6.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.6.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"63113b8405f49f0cddef993ad2d3bd796be96b60","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.6.0.tgz","fileCount":10,"integrity":"sha512-d9hx6hzcCuP6GpR2kE0ugZI+2R+ddj4imGa2eUgeBDIxIMmVI7LyYeWQp85EPUYLqnGjkH1V7mRpIabFa9bv7g==","signatures":[{"sig":"MEUCIQCggGIqFfRydX/9LFASfQLWOIaue0ExLwAW3SnQSu86DgIgRwQOcAACZll07rZYsZ61+ybB5H18bh1e49MhQbGyjPU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28020},"gitHead":"ea8f10ebce8184adb30f77165e17ec3870f2a3cc","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.6.0_1782165273444_0.47338086243281374","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@sinemacula/coding-standards","version":"1.7.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.7.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"fc8b094af2a500f5b894a9c1e4236008e5620ce7","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.7.0.tgz","fileCount":10,"integrity":"sha512-JgPV0xiOuvyx+OM3ceTy2CBfEeNyqmtxt44Q6xjsYxWpPuCZsVXobj+e31/cGxZgDsu9iykuY/w268ANuketPQ==","signatures":[{"sig":"MEUCIAGMxsHEg2C44X0dZYkMaex/+HUD6iZpgrmzBFe4bCB8AiEAiL67R+Frp6hOdmzvUjUjFlffzsnpYjF8SGajckE7D1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"23f0c15ddae28bbc46db77ca52c6b7fda1760365","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.7.0_1782226244431_0.30115418482213774","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@sinemacula/coding-standards","version":"1.7.1","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.7.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"f6ac6f3da9f4ea6f965faf481f437d7f7c51636f","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.7.1.tgz","fileCount":10,"integrity":"sha512-quUfqSPZ76v86RGicjpAMyXEkGfNX7YJJqqER15vDEsv4NxTNlnJ8a/Krj6f0O9UL2saMoI4rRVlnS7vpmhjpA==","signatures":[{"sig":"MEUCIBCzVjTsyfMaRTAe6KaJrAxFPjJ64cXNy0AmYqeHrY0BAiEA/qTtERyjykgtuXdAtPnwIdKy7OCpMZ8iA7qUmCTe+Lo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"3bdc13167f27d978dedfc1385e9f089d7674c85b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.7.1_1782228964428_0.07912667952614072","host":"s3://npm-registry-packages-npm-production"}},"1.7.2":{"name":"@sinemacula/coding-standards","version":"1.7.2","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.7.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"6d22738f287d48558119b2a177ab092870238f19","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.7.2.tgz","fileCount":10,"integrity":"sha512-0RQrAZpelp1HbKoEA9NPciURb+OEDPOER8vlVLQvUlhXx7p5eLYedqmWC79v6FFwrTMsqRC7n5F4QA5pW/KLHQ==","signatures":[{"sig":"MEYCIQDs+z1yIbnrzevAsxrnkJUznHfAzSlTY9twloVpm/y6dgIhANMqy9RDWus38Up5Dknb5IEFDYygJKPnJIyjsfC22LdV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"db25eb002778cfa1aa6635eaeea2a8f94f12d818","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.7.2_1782243316925_0.06158858185846672","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@sinemacula/coding-standards","version":"1.8.0","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.8.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"70496ce51820ed5950509fc97df8130941171e97","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.8.0.tgz","fileCount":10,"integrity":"sha512-YYWbMhPej69lcfBtgusOD6Daj0MadeOyiun09Erbl0DC1luR/isNgW4cY/jCBNY3zwtzTs16/1p+OtoLG5T3ig==","signatures":[{"sig":"MEUCIQCxH8nR1b0wYuLE/90UNbsksMqYFPR/37ng0j9iGrEREAIgcVtrbdEL+2cT03nTECgRNLdV9tAxptAigN8b/USDKDE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"631d94aa9c93f45671784e1deedc59089bd277f1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.8.0_1782278647087_0.7753663043843257","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@sinemacula/coding-standards","version":"1.8.1","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.8.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"130e9ae97a6d19a9b231d39d470aa6ba0e8e98bb","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.8.1.tgz","fileCount":10,"integrity":"sha512-Qe7NanQwSGhajW6Kq3SmANNFQF1hXIrULfJqt/WEW1qrGOZCFDXtCaNcxpELcKY3ZHQhrCLKvmeEzYNfWdxMQg==","signatures":[{"sig":"MEUCICGKhFr9o9oUEjjtxJszuGqouNj5b0emblmgIixXZ+m9AiEA57XHZ2TQ8PqU93k1kkPpFrNhkJXK0iqParCynCyUExc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"1b7737d59d770d068505e0cd56d6daba7ecafd3b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.8.1_1782279069904_0.5826960663537613","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@sinemacula/coding-standards","version":"1.8.2","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.8.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"0bb080981257842c81f69e7f9504b235f825663d","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.8.2.tgz","fileCount":10,"integrity":"sha512-I06UJj42CNnhAs5O+LQguG381cxoxsphQjDF7wynKbe/6SQs21th1dC+IalOxEjrtelsHlhrxfGJGDnvfG9/PA==","signatures":[{"sig":"MEUCIAltzOVG6if/wPl6ulxJWlkjvUxPeySnEd7BiH/hE5RTAiEAoZb1CsN+klUnUJh/FUUSXXTPvm2q4gCALnEM51hWtbM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"dbacf585c86ce7eed21dacdc8e92c12615894a35","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.8.2_1782331241828_0.5904942870063181","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@sinemacula/coding-standards","version":"1.8.3","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.8.3","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"5f14700f326b7ae0ccf26e0bff3525bf1d9db1c5","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.8.3.tgz","fileCount":10,"integrity":"sha512-ICJObz7Z2pfSuzwQW0qP+jjm1FQNZ8rFpP7lJY3JhyqHqByxdNLwL4GOau6fhgJxViBzSonmmzNXUa77RXzGgQ==","signatures":[{"sig":"MEUCIAQ95Ge37ULQD66HD/hFcMC5qqJrX28besLtnBOAH/WFAiEAtXlajffZfxvkbsKCQ+mpi1cOwvo+h6JfziRhGXmJOrY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"52b7edb122d521d232b18568646f706137234c35","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.16.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.3.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.8.3_1782354659526_0.07514686060979447","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@sinemacula/coding-standards","version":"1.8.4","keywords":["biome","knip","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.8.4","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"49e6e5c8e259e2e5a52bdcd118f9f559b4acfb4b","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.8.4.tgz","fileCount":10,"integrity":"sha512-vq1gp/CxShY2bXN2VbeiUiJ0gM6GRY39XV1lYzAAGNQlrWp4uAoMzGOJZTfyox7B2FkqSd6MolkRZ2b6Fho4Yw==","signatures":[{"sig":"MEUCIQC2K6WwGSPn8pRq6syEnWsYsSVgh6qP9kOwqbdOTqQPGgIgY184Y3LC4Uez9+g4PhHPLwEYRz4Jn8/U3wxV26wcXPc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28133},"gitHead":"3efb90a0d0df4a2ffbcd2b6fb719b0b7da4dbe9d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.4.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.8.4_1782423050223_0.5311534704281407","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@sinemacula/coding-standards","version":"1.9.0","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.9.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"836b7fba761bafe016afd32a2ecace8e16ead772","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.9.0.tgz","fileCount":22,"integrity":"sha512-VWgys46pjJxwkrSgFfggR/OOLe3eeCONvG72bkaNnmpwxR8Fov46b6oRNWQS4nDX3Vg5dO/IiN7AK2wOsi7yBA==","signatures":[{"sig":"MEYCIQD2oWYe5YJQYX2x6Vbl/RvgmyWxojR+o5jyYHVIGd2iYwIhALtL/aeFoGQsuHEwSN23nIHqVKDAK79FGnfOGjJCyVkq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77950},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"5893612bb053cbc960a008e5281d929e75aed556","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","typescript-eslint":"^8.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","typescript-eslint":"^8","eslint-plugin-jsdoc":">=48"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"typescript-eslint":{"optional":true},"eslint-plugin-jsdoc":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.9.0_1784069504041_0.1476138324659544","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@sinemacula/coding-standards","version":"1.9.1","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.9.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"323dbfab2e05327694c00bdd021bf3599078f1cd","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.9.1.tgz","fileCount":22,"integrity":"sha512-DJmHOuVWHGI83U4P0djYXZ+cfUEJacvPYNW0xBAr3tP1fzUfBvK+eY7zWvabCPaWdCpLQ2DCkh8+SFIm1C8SDA==","signatures":[{"sig":"MEQCIF98XOk41eHGizBI72JzsH+kEa3lAGpYZ/xPUq73xWJwAiBv2T5E0AfrlYN0gKxBEMEopilRUlLLJG6hPNbsee8eCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78836},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"363d38517330553865286c3296555769b29050c8","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","typescript-eslint":"^8.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","typescript-eslint":"^8","eslint-plugin-jsdoc":">=48"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"typescript-eslint":{"optional":true},"eslint-plugin-jsdoc":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.9.1_1784120804297_0.7181372895911009","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@sinemacula/coding-standards","version":"1.9.2","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.9.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"001c347955d7ecc80d9ecf540b96b30a02c05578","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.9.2.tgz","fileCount":22,"integrity":"sha512-Ayo/6kuPGtiMzYxs2kq14rKIex5E9unzrAJEZn3OXXEPkRaojYApCNVX13Z3ymlOh3LUYaVDXKJpHBJyDuOLzQ==","signatures":[{"sig":"MEUCIEmAxEc1zx5feN6X4pyaXQhR+hUkt1VQZhovHn21DZKiAiEA26MT6ZHYTt5g/AkXc0P3LY8boibYnXwKr6QmJ9z48b0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78836},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"2908026bfcc801f0b2014e87470ac015fdce98f3","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","typescript-eslint":"^8.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","typescript-eslint":"^8","eslint-plugin-jsdoc":">=48"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"typescript-eslint":{"optional":true},"eslint-plugin-jsdoc":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.9.2_1784124718762_0.8410151139461579","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@sinemacula/coding-standards","version":"1.10.0","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.10.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"faf760fc8098b3f66b29b4ed2af953c55cea7f7b","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.10.0.tgz","fileCount":23,"integrity":"sha512-0WFgZqrClZ/TDCEYQ0kZGFmBapNlm+BOrqh9k5+ciWtaobet82C0t+fmc8wiUKAB1+WHV0BtL5o46QyL08khDw==","signatures":[{"sig":"MEUCIQCYL/nfJRQRFSiqN0G413PxrEOoNJW92yCWMrgPYUdFwQIgDPXBtJyLc/8WDwCUhdLxrpcB4MFxQiUxilL/F4eXAXQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83331},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"b9084dc13bfd70d48fe60ad5794ffd9b0b756b04","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.10.0_1784216789869_0.7338117114516245","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@sinemacula/coding-standards","version":"1.11.0","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.11.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"5b3bdfaa80f66d9cd6efd21e63ad03e5e7488bcc","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.11.0.tgz","fileCount":24,"integrity":"sha512-3pfDjB87jbuyOnj9eQG2+iHkLNPaFyIzsQYBmnhHLFjEeKQBGPkEH6stmxuQ4fTY9HNw2MpC20UWSoVvX3VcSA==","signatures":[{"sig":"MEYCIQDyGW37misHCLEZPIoOeid8Up5y+2vIR8U4rPl+1GFcoAIhANQcwbgBmZa0OnPZCROolRO9zr3x1XgnM3rEinDWSykt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":88374},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"4386f03161afdeb07ead6c943d9cfbd303b921a0","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.11.0_1784264874379_0.3961284455678329","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@sinemacula/coding-standards","version":"1.12.0","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.12.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"8c556b9348dafbdda83e5291d340db8d64efb0d9","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.12.0.tgz","fileCount":27,"integrity":"sha512-Apa21e6cSpiOM7mVVBmHWovRCsjlJi7I55UKVwTLaavblVNZycDVzpediCVjI0QT/j8NVGBu4KVTWSQ5Cd/Oqg==","signatures":[{"sig":"MEYCIQD5qtLjLWhTcty1SPxU8R8BxxUXWzkalBS3WE3p84A3uQIhAIf8/ra/is89Bqo82wnT8xTEkDubwIW1A1rayDygbYMX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":101182},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"f15ac51b2ea4c6367566d9b8fb3facbe4f84c264","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.12.0_1784321847193_0.26176143918694117","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@sinemacula/coding-standards","version":"1.12.1","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.12.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"1703186092c2c1e7fbfaa736e5badc14b0ca0cba","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.12.1.tgz","fileCount":26,"integrity":"sha512-bvupyjWPXtM6NhbcMqDUOBSB4vdJtCxDWZtEcIA7jSIuG/j55v05Ixd1r+43Xf3TCgmeVZFRDcLZz+XaJ0CPBA==","signatures":[{"sig":"MEUCIEPMi9CfUsKNkiJhgkZl70yTXZzSkzvj0G273xSHtFM8AiEAiJpgF+4w82cmOoh/ySITWu/+bYvmn59408h5RUOvAm0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":97948},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"dc59ad04adc0a791daaa9409c2084c3144648a51","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.12.1_1784338427105_0.44771944725035717","host":"s3://npm-registry-packages-npm-production"}},"1.12.2":{"name":"@sinemacula/coding-standards","version":"1.12.2","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.12.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"12cf7a28c5b967cb3ea0e76ca98ff112b84ad810","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.12.2.tgz","fileCount":26,"integrity":"sha512-N0HtiL9wcPWgnQvbaWmAke1UVbC9oSXdnlSQ2y/DIVe+pgHehzXjGK1YIVr790WmqfAIuDKfuqpJDdsrIm9Y5A==","signatures":[{"sig":"MEUCIF6tZLinb1/boR5zzZyUveHgJxmb2/WKykZHiI/JE5BfAiEApfZOktJ8fKpbTnH1ZkVD/XDUa2/G4PRvI4TS4G9H8wg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":97914},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"988f0febd6b1d062bd9df2f6124f13a7981088a6","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.12.2_1784347829335_0.30534741522709474","host":"s3://npm-registry-packages-npm-production"}},"1.12.3":{"name":"@sinemacula/coding-standards","version":"1.12.3","keywords":["biome","knip","eslint","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.12.3","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"f6b30c7b96a91908b785e67c78fee4540053fd61","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.12.3.tgz","fileCount":26,"integrity":"sha512-cWLHgdOgCYKDhBWLGomLP30o+58s7WG7oaKi/ftLSWfC0m339rkaqJwRtLu9jLBZym7kiC/63teweGtfD55ujg==","signatures":[{"sig":"MEUCIHcan9yDYK5nNu8xPk7KyAFJvQihw0RPwl8edeQeqg6TAiEAv3P9KN18wmEbA41oWAhoesUuAsGmMvnRoelK/z6iOiI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.12.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":99867},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"a675837dbd9f40c659b855a95af865fadf3556c5","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.12.3_1784519333764_0.5503582304215733","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@sinemacula/coding-standards","version":"1.13.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.13.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"a795c9350198a429097a131337f650b5ac452449","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.13.0.tgz","fileCount":27,"integrity":"sha512-YNHiXrdHPPsiec+kQh8sU+qNC+PFt4iEIinrJe4lzmPUptYNFWkVH2q/rgSMeeoISIcuIpKEFxRti0x0THZ3pg==","signatures":[{"sig":"MEUCIQCpFdLwDe3rC7Ioe9U65kgjE33NSqsnJGj0N510DF/emQIgTwDgSghMFecsSrOG14xlBIITXd9HYVY7AAgfHey4Nt0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":102462},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"99cfef8eb8be78c11cb281b2f9b46c9254810a42","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.13.0_1784562758893_0.9037573313880922","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@sinemacula/coding-standards","version":"1.14.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.14.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"9b8b6fb7a3bfdf9cc948b6a70475eedef4baa4dd","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.14.0.tgz","fileCount":27,"integrity":"sha512-Bhve2SEAtA8yxi8ue4EER1anvu1spmERRI4fFaWYaX8Pf2rd8JDAVNf5/vaw3Wkdgbylxy4yMA3pX9OGkALFuw==","signatures":[{"sig":"MEQCIHvtWxtKZkmaDUZP58QzDzDF9O9Us9LPeVz+lMXvObmpAiBos+e4T7j3SLtAJ1cnRkczr+UpCIoyaKyMvVln2MVTiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":102484},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"a0176dd0d8a2a94ca4d5b31ad694702195be913b","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.14.0_1784594187232_0.15756275920539542","host":"s3://npm-registry-packages-npm-production"}},"1.15.0":{"name":"@sinemacula/coding-standards","version":"1.15.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.15.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"e62dc815a3e62088f2466942aea22305e378e7a6","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.15.0.tgz","fileCount":32,"integrity":"sha512-NZeSPwqCEW5caqTEPoPn0cpWyOfCInqU3tqGv4oK3ZR/LX8WrPSiBYZ6KmyBmTSdhQSnBs3/o4K19jgihQjg/w==","signatures":[{"sig":"MEYCIQCNMMOQGw2ZJAzGZu+nTqnR1aWF0BKoYkzIE/RoBDRkfQIhAKkO32GMwIZPBFl4ryWaI32csp/UoCB6gGV1LPrd8oGg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":124454},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"2a1fce20643a94598bb33aa05e57f73059cd85b6","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.15.0_1784651658289_0.2635248595059412","host":"s3://npm-registry-packages-npm-production"}},"1.16.0":{"name":"@sinemacula/coding-standards","version":"1.16.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.16.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"70c0356501c0b68d8064268619c71f98fc986bf2","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.16.0.tgz","fileCount":32,"integrity":"sha512-t+Sb7DbAizr5HRTWRGndU+9PWYGCcjHlwUJjyrdNubE2pnBk+8Viin+FmCyXd5y+QyHPPiBqrzFlTBNxVC7OVw==","signatures":[{"sig":"MEUCIQCOfPbWZdk4Re59Z4re2wTxcljtjzq43/BRJaSvTcx+YQIgG396h+WbSNcXxPdANYnBWR6xrGXb5WYBycgv8VhPjxk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":128033},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"98ab66013e35b35ee4a66125f69afee0a618dca5","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.16.0_1784658449176_0.32383582553652235","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@sinemacula/coding-standards","version":"1.17.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.17.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"841ec3851519792181dfc0dfbafbfbbe9baf8682","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.17.0.tgz","fileCount":32,"integrity":"sha512-IcMI/5bv52nat+bp6evEzrOrBCB2rO62ayQrV+PcPuQCCxw7BCQ5vNi04HgdsrTIdTRdWoG6PCrC9aKEV+AOKQ==","signatures":[{"sig":"MEQCIB/f0fSo4mMsM5+HZXEzjPONkrm+y1HzDxjEGCdH2Q4DAiAc45f4PW/lLPNXhOWfhwwZ+N7+iIReISnlKCW7vei8eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":128278},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"cbcdbce91fcc03745733f43f7cb644c52cb189ab","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.17.0_1784661828669_0.9603443058364689","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@sinemacula/coding-standards","version":"1.18.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.18.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"10e335c5b30617653847846ef966493f306310e3","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.18.0.tgz","fileCount":32,"integrity":"sha512-c3tjuX/PRTVp7ofxumsLJUvo43XdgtLq9/hQA+lqo4Ru22+a/91/dGXPMNW4LrXpNcmpoaPyWDSOZWoenm+KtQ==","signatures":[{"sig":"MEQCIEb0ks8P8Up7MeOL6j1OGQkS5UZ9WCv4LcYrFSAGP3O9AiAVVeXR7D5pVJuxknIr9yRjcokXvC2bPFK2lTF4Me3LKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":128851},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"40ec7547265480b6d6d95b6edd8e1c9dc53091ec","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.18.0_1784758870300_0.8868734622178625","host":"s3://npm-registry-packages-npm-production"}},"1.19.0":{"name":"@sinemacula/coding-standards","version":"1.19.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.19.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"09e6af9054650a49a4bf9549801a9be42d50a568","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.19.0.tgz","fileCount":32,"integrity":"sha512-qNJ33RaY6RMqisytYe/1QmkYgsyk86w8hdFN9+HGPIjxVgrfen22njhxminXqiOd+JuFibKmjHfQLFJaaq+heg==","signatures":[{"sig":"MEQCICJ7RFm++K0yxhNMLQyYnDl1pTGp/tWGxtjHr2IpGbvUAiAXJ8i4LFOKu/ensHvwaCP+Nvz+pPQz3DfhTYjWGEciIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129214},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"237ca7d5c2cf4ffe0e770d4cfa4696d68f9b8ce9","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.19.0_1784899113773_0.21184744231329922","host":"s3://npm-registry-packages-npm-production"}},"1.19.1":{"name":"@sinemacula/coding-standards","version":"1.19.1","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.19.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"9c52fe94a791e288d12516260c3a40ab61885fd9","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.19.1.tgz","fileCount":32,"integrity":"sha512-VucHULAK0Ci7Ebf9xtA1i032+XkVNkisCQpfgmjMmhyNGiGuKg/5a0yK6zifYkZ/qpdgpdH4vwAz6aqTx3t/0w==","signatures":[{"sig":"MEQCIHj9TgWxjNf7vKs/sUmsHsjEN/inu9IxeOtCQtuur8DdAiAu3yg34t+tE6vKuhuljUi567mYKghM4Lzibz3RIjVw4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129051},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"3a45d409a6be6415f63ea0e808f03b5cc1271b58","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.19.1_1784912441682_0.08566236726408194","host":"s3://npm-registry-packages-npm-production"}},"1.20.0":{"name":"@sinemacula/coding-standards","version":"1.20.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.20.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"3c4fb2c206a5ecf2041d57718abd72ca18dfc4f4","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.20.0.tgz","fileCount":32,"integrity":"sha512-Ka2EvHC5b6bTX6WTO8WI9ZVc00Ib4JOe0RspSKiYwmLiFwvFbtfascpcUFZRr86SmPjrMBl/OAKfo/m0rk9NTQ==","signatures":[{"sig":"MEYCIQCJvxDvUwI83F4SL7uq2HoyLgGkYvMj7PMcocjcsAXr+AIhAMaVRJzZYj4yQENUn8ECQ2Kilsny2Dx/t6oOjoORw3Or","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129421},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"23eb6f04cf1a11af19130903262bbef1acd7d6d9","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.20.0_1784938425847_0.8528109364937271","host":"s3://npm-registry-packages-npm-production"}},"1.20.1":{"name":"@sinemacula/coding-standards","version":"1.20.1","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.20.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"358ff5feefe9488b4d535bca9d82aed98900660b","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.20.1.tgz","fileCount":32,"integrity":"sha512-8Zc5bktZpz83TAlDQbVi2wx4B1W53dxEIJhOHWd1aRjDsZe9LpemdYtqVLGoWNfu7qwjI7xGp0QHERWTJk8+XQ==","signatures":[{"sig":"MEYCIQDIR46gI3r5DiUsYK3b+s7MgO+J6vfgHC8r6dCFADTrmQIhALe6uJKNIlRSoeRbUWD63oRcfIlojLG59VvIvRUNnP4b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.20.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129482},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"339da57545690b10b28a0b62cb4c1980b53d9ee6","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.20.1_1784956774099_0.1950813697350191","host":"s3://npm-registry-packages-npm-production"}},"1.20.2":{"name":"@sinemacula/coding-standards","version":"1.20.2","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.20.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"80e552d7d9dbd4d28f2d19d6d87efbe6d4b41fea","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.20.2.tgz","fileCount":32,"integrity":"sha512-3xsJ2PJjjaJIbuOPWFAsJyM5kMIyOzuH9VuqrAE4LwD1vG+T+I7Uv9XFoohXmxCIbMIjgVoV0koCVjv3tJiStg==","signatures":[{"sig":"MEUCIQD5T1gFJWnxsYxxIh4b5nO1P4T1nnwuFGmCrtv0o1HlzgIgKQ2cLPiRtGNuZwacSRzQDJty8KuuumI95u71u4rZDLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.20.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129482},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"77c8131c961d9fb6706629c404ac63cc85479712","scripts":{"lint:js":"eslint js/eslint","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.20.2_1785176050773_0.6712765268420164","host":"s3://npm-registry-packages-npm-production"}},"1.21.0":{"name":"@sinemacula/coding-standards","version":"1.21.0","keywords":["biome","knip","eslint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.21.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"777ad619592e8ca344ee5bf0f18b5e798c83718b","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.21.0.tgz","fileCount":32,"integrity":"sha512-vz498005kZd/Pg4OUP0+Cgc2VcJc9JXLNcg9MshGu/Smf5sSX6CqVqcNpvRyY/0lmbiCNe4teMrfMImaHWCZIg==","signatures":[{"sig":"MEUCIHuWsRMED5+xUbzP1w8/7Wbm7hIKhkx9GtNAN/h6vU1dAiEApGjvt8aJ6ySQ2xw88K8Yus3L9m2NIU4CSgshQhxzvp8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":134015},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"4ac61538be80b47cd474e4c120e99ab69d2869df","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.17.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.5.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.21.0_1785441586169_0.28479032286737604","host":"s3://npm-registry-packages-npm-production"}},"1.22.0":{"name":"@sinemacula/coding-standards","version":"1.22.0","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.22.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"4582c986b7a1227761bf145aabc1024d37f297bf","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.22.0.tgz","fileCount":35,"integrity":"sha512-gZo4DsEokAsgTEZVeabOyPkCB2XYHN44tV/vHGeZXBqNicSyKg69/CRvQf6dhfgad4Dk+8aOlaP14tpbygO5EQ==","signatures":[{"sig":"MEYCIQDxfOLS9uZqK98/I/htYVVBIDvRYWNy2OeQ/Qec1lDvSQIhAIQgPZd+S4wa6vXmnFMZWf8bT2UsOYIufCYQ0ASLsqzk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":153119},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"ec0eb5297266c69f3a2a1e7aacfa32064417df6b","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.0","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.22.0_1787600193877_0.2609917997263209","host":"s3://npm-registry-packages-npm-production"}},"1.23.0":{"name":"@sinemacula/coding-standards","version":"1.23.0","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.23.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"15187c07fcde3825dbea38c903e4bd7d46c71c7c","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.23.0.tgz","fileCount":36,"integrity":"sha512-K7M63FakIU1nSz1MEEASlk23Lg/uDJqwJYh6AR2xKNRuSCHGkuKPUlCiSoPg7nIQjMQcFx1RypSLbPIDJO8B8w==","signatures":[{"sig":"MEUCIQCniIXIi9zw7CtFeHqvBaTPHdzWDD3QQ3LHWGzf+jCM7QIgJzewRd/4afbHZlcpay2pwNvEasHKh4APKDxYHLR8+ZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":159962},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"b240547fe1b9908d9ab13f7f1cb67df259a19702","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.8.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.23.0_1789157420312_0.796284777712098","host":"s3://npm-registry-packages-npm-production"}},"1.23.1":{"name":"@sinemacula/coding-standards","version":"1.23.1","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.23.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"bbfe362bb134dc67fc67d4070039905facfb23a0","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.23.1.tgz","fileCount":36,"integrity":"sha512-Z4yWRpj0oCNw/K2XciK2ii/kTBqAdvMC4wMbl0nJ9K9oMCTW8d3THLNdqREarflMaYSTev17pH03sdOUtcrvew==","signatures":[{"sig":"MEUCIQC2XJ+rQumlCdQYOaP5EmIb2UGJMl9nQaDBVQWmjXAFcwIgLnaRZnWogMYozVI9jk7mZ+Ls531TxYbuQwVWAeKL7cQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDIxAJzz4TyVOvIr1xFwa+CuLZ2o7tKnSlz+RsMYHM4kgIgJT6oFUbiQpBJmF13F9gcrvs9obrMbpRdpFT/QCtnvfo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":161955},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"82bfbee758940b8cced15a0f644f362b75d8e1c2","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.23.1_1789968889826_0.4531877714555659","host":"s3://npm-registry-packages-npm-production"}},"1.23.2":{"name":"@sinemacula/coding-standards","version":"1.23.2","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.23.2","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"253841f6c4dd5c2f9effff45175c2038ec9c9d9c","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.23.2.tgz","fileCount":36,"integrity":"sha512-/qBwZUGcXExEmG/7Pn2s1u3O6jx/ZTz6ZU458brovf/PSDyein9O4/AYYt+5Byk7WoO4uX25ycR4M7jNe0S/GQ==","signatures":[{"sig":"MEQCIA6GGDt2E2Qqw4xL4pYry73VJfqK4DiM/2Gt1sj5TJ5mAiAdhbDA30H1YST4ASRG5RWoSCXIK//IywxkfTV467ZeoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCzZbMl7Np8Mq496wq2ctiUlzMVz+crCPTRkVmkuLl5XwIgYp/wi7NQsuzwKcJe0bGiR3m94O9X2siJeh6P+gZt8Sk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.23.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":161955},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"258a80fd8006052d9589a6894758c952aa78ba71","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.23.2_1789971500745_0.396876253195956","host":"s3://npm-registry-packages-npm-production"}},"1.24.0":{"name":"@sinemacula/coding-standards","version":"1.24.0","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.24.0","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"cc2327b5041aa4946afff711f99c2a47b49ec56b","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.24.0.tgz","fileCount":36,"integrity":"sha512-KNw2h0LHCKtkNpzCOTSp7uw6nBTv3G1V6RcAISTc8xg2blNuMRm1mQhDoERVVpAtj8R1/vcx1x2WLXdNHceo+g==","signatures":[{"sig":"MEYCIQD5h9ZdPAJONOjNVcphkmgEgx0AiXa0PiuKtxGvISjLUgIhAKh2sEQY25vd7IDR2Vwt9r5PviIEKechhYKlLqo4qZcR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHVzXOE1pEKa7RbGmSVAOTbcBSev6HEHzG8KMSIayXdvAiEAqiGDgHKovdEuT43UG3x9UHp7t4Nv7lAZYvBHKlSDex8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":162096},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"d2ecdcf902db0528de85066d32708a6bc5c857dc","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.24.0_1790044451524_0.2730371735545605","host":"s3://npm-registry-packages-npm-production"}},"1.24.1":{"name":"@sinemacula/coding-standards","version":"1.24.1","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","_id":"@sinemacula/coding-standards@1.24.1","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"homepage":"https://github.com/sinemacula/coding-standards#readme","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"76b0b71eaa44e2342ec90a316005b3260ceab0ba","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.24.1.tgz","fileCount":37,"integrity":"sha512-CvLVhU8tcunzACm8W26DOHNtIzLvTujotToXicxVipxzkoaCSP1mreWbjoSfXkzIg5vsF0vTJUUoMFEuiUM+OQ==","signatures":[{"sig":"MEUCIQDqhWkYO9zIzMYwDNRDvex4j/H7nftKprP13texcvOPEQIgc4JxLDDSPUb7ID+gerEre//HjKsreerEu5Rf/1xOgbs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCl/qgUfOABk1kSoG9KXfbsJT+NBGRRhicwEIySjPRnDwIhANmUuapoRZffUzghuduXGUCjm5Ym7POJQ53YAFElzjsT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":162539},"type":"module","exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"c5c0fcecb5745b0a0d3a5fe3a79f7bdc04990873","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"_nodeVersion":"26.10.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/coding-standards_1.24.1_1790385749710_0.940448019247087","host":"s3://npm-registry-packages-npm-production"}},"1.25.0":{"_id":"@sinemacula/coding-standards@1.25.0","bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"dist":{"shasum":"e281cb5e8ba76ebcf9c1743e04d70346ac156635","tarball":"https://registry.npmjs.org/@sinemacula/coding-standards/-/coding-standards-1.25.0.tgz","fileCount":37,"integrity":"sha512-LJP9PrbHF+tW7uoeChbo8boIdwKrrKguzQM4yYQjDuMf+S6sM5pd6gFwQwcOI1EpMij0W5CyTzfq3X43KlGiUg==","signatures":[{"sig":"MEQCIB8Lu/0bwOvs+90iETsgf97d3TUQX5XUQJ0oqhV+QUutAiAOYliv9lROax0xBQxRlbU/7usaFPu/NCMQMnUkxiQ9PQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC846turx+kgnMQcs6meS+8oA6i4xTO6Bfe6dVgDF09vwIgXozc440ThmwWWEDu799cs01tKbhtmwlzz1Mm2m18saw="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sinemacula%2fcoding-standards@1.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":163760},"name":"@sinemacula/coding-standards","type":"module","author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"exports":{"./*":"./*","./js/eslint":"./js/eslint/index.js","./js/eslint/vue":"./js/eslint/vue.js","./js/tsconfig.base.json":"./js/tsconfig.base.json","./js/eslint/type-checked":"./js/eslint/type-checked.js"},"gitHead":"8710e8ad40b68cb191faf638928731176f295ce1","license":"Apache-2.0","scripts":{"lint:js":"eslint .","test:js":"vitest run"},"version":"1.25.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b4d704-6ff1-445b-8ed8-b1fd6ebdef82"}},"homepage":"https://github.com/sinemacula/coding-standards#readme","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"_npmVersion":"11.19.1","description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","directories":{},"maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"_nodeVersion":"26.10.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^4.1.11","typescript":"^5.0.0","eslint-plugin-vue":"^10.0.0","typescript-eslint":"^8.0.0","vue-eslint-parser":"^10.0.0","yaml-eslint-parser":"^2.1.0","eslint-plugin-jsdoc":"^63.0.13","@typescript-eslint/utils":"^8.0.0","eslint-plugin-check-file":"^3.0.0","@typescript-eslint/rule-tester":"^8.0.0"},"peerDependencies":{"eslint":">=9","typescript":">=4.8.4","eslint-plugin-vue":">=10","typescript-eslint":"^8","vue-eslint-parser":">=10","yaml-eslint-parser":">=2","eslint-plugin-jsdoc":">=48","eslint-plugin-check-file":">=3"},"peerDependenciesMeta":{"eslint":{"optional":true},"typescript":{"optional":true},"eslint-plugin-vue":{"optional":true},"typescript-eslint":{"optional":true},"vue-eslint-parser":{"optional":true},"yaml-eslint-parser":{"optional":true},"eslint-plugin-jsdoc":{"optional":true},"eslint-plugin-check-file":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/coding-standards_1.25.0_1790402742942_0.9003790363446376"}}},"time":{"created":"2026-05-13T16:55:38.930Z","modified":"2026-09-26T06:05:43.338Z","1.0.4":"2026-05-13T16:55:39.174Z","1.0.6":"2026-05-13T17:19:01.839Z","1.1.0":"2026-06-02T23:34:29.089Z","1.1.1":"2026-06-04T02:26:37.879Z","1.1.2":"2026-06-04T17:45:06.448Z","1.1.3":"2026-06-06T15:23:39.321Z","1.2.0":"2026-06-16T20:56:32.530Z","1.3.0":"2026-06-20T16:10:37.766Z","1.3.1":"2026-06-20T18:00:26.140Z","1.4.0":"2026-06-21T13:01:28.038Z","1.5.0":"2026-06-21T19:23:00.691Z","1.5.1":"2026-06-21T21:05:39.239Z","1.6.0":"2026-06-22T21:54:33.628Z","1.7.0":"2026-06-23T14:50:44.595Z","1.7.1":"2026-06-23T15:36:04.571Z","1.7.2":"2026-06-23T19:35:17.065Z","1.8.0":"2026-06-24T05:24:07.243Z","1.8.1":"2026-06-24T05:31:10.063Z","1.8.2":"2026-06-24T20:00:41.989Z","1.8.3":"2026-06-25T02:30:59.670Z","1.8.4":"2026-06-25T21:30:50.359Z","1.9.0":"2026-07-14T22:51:44.244Z","1.9.1":"2026-07-15T13:06:44.440Z","1.9.2":"2026-07-15T14:11:58.940Z","1.10.0":"2026-07-16T15:46:30.021Z","1.11.0":"2026-07-17T05:07:54.588Z","1.12.0":"2026-07-17T20:57:27.328Z","1.12.1":"2026-07-18T01:33:47.251Z","1.12.2":"2026-07-18T04:10:29.474Z","1.12.3":"2026-07-20T03:48:53.892Z","1.13.0":"2026-07-20T15:52:39.109Z","1.14.0":"2026-07-21T00:36:27.365Z","1.15.0":"2026-07-21T16:34:18.491Z","1.16.0":"2026-07-21T18:27:29.310Z","1.17.0":"2026-07-21T19:23:48.819Z","1.18.0":"2026-07-22T22:21:10.469Z","1.19.0":"2026-07-24T13:18:33.914Z","1.19.1":"2026-07-24T17:00:42.060Z","1.20.0":"2026-07-25T00:13:45.993Z","1.20.1":"2026-07-25T05:19:34.234Z","1.20.2":"2026-07-27T18:14:10.929Z","1.21.0":"2026-07-30T19:59:46.311Z","1.22.0":"2026-08-24T19:36:34.053Z","1.23.0":"2026-09-11T20:10:20.441Z","1.23.1":"2026-09-21T05:34:49.916Z","1.23.2":"2026-09-21T06:18:20.843Z","1.24.0":"2026-09-22T02:34:11.614Z","1.24.1":"2026-09-26T01:22:29.792Z","1.25.0":"2026-09-26T06:05:43.032Z"},"bugs":{"url":"https://github.com/sinemacula/coding-standards/issues"},"author":{"name":"Ben Carey","email":"bdmc@sinemacula.co.uk"},"license":"Apache-2.0","homepage":"https://github.com/sinemacula/coding-standards#readme","keywords":["biome","knip","eslint","swift","swiftformat","swiftlint","typescript","coding-standards","linting","config"],"repository":{"url":"git+https://github.com/sinemacula/coding-standards.git","type":"git"},"description":"Centralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.","maintainers":[{"name":"bencarey","email":"bdmc@sinemacula.co.uk"}],"readme":"# Coding Standards\n\n[![Latest Stable Version](https://img.shields.io/packagist/v/sinemacula/coding-standards.svg)](https://packagist.org/packages/sinemacula/coding-standards)\n[![npm Version](https://img.shields.io/npm/v/@sinemacula/coding-standards.svg)](https://www.npmjs.com/package/@sinemacula/coding-standards)\n[![Build Status](https://github.com/sinemacula/coding-standards/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/sinemacula/coding-standards/actions/workflows/tests.yml)\n[![Quality Gates](https://github.com/sinemacula/coding-standards/actions/workflows/quality-gates.yml/badge.svg?branch=master)](https://github.com/sinemacula/coding-standards/actions/workflows/quality-gates.yml)\n[![Maintainability](https://qlty.sh/gh/sinemacula/projects/coding-standards/maintainability.svg)](https://qlty.sh/gh/sinemacula/projects/coding-standards)\n[![Code Coverage](https://qlty.sh/gh/sinemacula/projects/coding-standards/coverage.svg)](https://qlty.sh/gh/sinemacula/projects/coding-standards)\n[![Total Downloads](https://img.shields.io/packagist/dt/sinemacula/coding-standards.svg)](https://packagist.org/packages/sinemacula/coding-standards)\n\nCentralized coding standards, static analysis configurations, and code quality tooling for all Sine Macula repositories.\n\nThis package ships config files only - no runtime dependencies. Consuming projects install the tools themselves.\n\n## Installation\n\n### Composer (PHP-side: PHP CS Fixer, PHPStan, PHPCS)\n\n```bash\ncomposer require --dev sinemacula/coding-standards\n```\n\n### npm (JS-side: Biome, Knip)\n\n```bash\nnpm install --save-dev @sinemacula/coding-standards\n```\n\nThe npm package ships only the static configs (`js/`, `markdown/`, `yaml/`, `shell/`, `security/`, `swift/`). The PHP\nautoloaded code lives in the Composer package.\n\n### Qlty (Swift-side: SwiftLint, SwiftFormat)\n\nSwift consumers do not need the Composer or npm package. Qlty fetches the shared Swift configs from this repository as\na pinned source and installs the native tools on macOS.\n\n## Usage\n\nEach consuming project creates thin wrapper files at its root that reference the shared configs.\n\n### PHP CS Fixer\n\nCreate a `.php-cs-fixer.dist.php` at your project root:\n\n```php\n<?php\n\nuse SineMacula\\CodingStandards\\PhpCsFixerConfig;\n\nreturn PhpCsFixerConfig::make([\n    __DIR__ . '/src',\n    __DIR__ . '/tests',\n]);\n```\n\nGive the qlty plugin this package for its tool sandbox, and do **not** set `package_file` or `package_filters` on it:\n\n```toml\n[[plugin]]\nname = \"php-cs-fixer\"\nextra_packages = [\"sinemacula/coding-standards@1.23.0\"]\n```\n\n`extra_packages` installs into the tool sandbox alone, so none of this reaches your own dependency graph. The config\nabove autoloads `PhpCsFixerConfig` from this package - the only thing `package_file` was doing for this plugin. Give it\nan exact version rather than a range. This entry is raised by the shared Renovate preset, which resolves a constraint\nto the newest release it already allows, so a caret range is reported as current for the life of the major and\nsilently stays at the version it was written with. The entry stays in your own file rather than coming from the shared\nsource, because the source is consumed at a tag and cannot pin the release of the package it is published alongside.\n\nThe shared source adds the rest of the sandbox: it holds Symfony below 8, because PHP CS Fixer has accepted that line\nsince 3.90.0, it requires PHP 8.4.1, and the sandbox install does not honour the platform requirement. Without the\npins a project on 8.3 installs a Symfony its runner cannot parse, and PHP CS Fixer exits 255 - reported as an errored\nbuild rather than as findings, arriving after a genuine pass, so a status read once looks green. Setting\n`package_file` makes qlty ignore every `extra_packages` list, the shared one included, silently. `php-codesniffer` and\n`phpstan` are unaffected and keep their `package_file`, their sandboxes being where the sniff and rule code comes from.\n\nYou can pass rule overrides as a second argument:\n\n```php\nreturn PhpCsFixerConfig::make(\n    [__DIR__ . '/src', __DIR__ . '/tests'],\n    ['strict_comparison' => false],\n);\n```\n\n### PHPCS\n\nThe `SineMacula` coding standard is auto-discovered via the `phpcodesniffer-standard` composer type. Create a\n`phpcs.xml` at your project root:\n\n```xml\n<?xml version=\"1.0\"?>\n<ruleset name=\"Project\">\n    <rule ref=\"SineMacula\"/>\n    <file>src</file>\n    <file>tests</file>\n</ruleset>\n```\n\n### PHPStan\n\nThe shared PHPStan configs are auto-included via the `extra.phpstan.includes` section in `composer.json`. Your project's\n`phpstan.neon` only needs its paths:\n\n```neon\nparameters:\n    paths:\n        - src\n        - tests\n```\n\nDo not set `level`. Analysis runs through qlty, whose phpstan driver passes `--level=9` on the command line, and a\ncommand-line level overrides the config file outright - so a level set here does nothing except mislead whoever reads\nit next.\n\nThe base config enables PHPStan's checked-exception analysis: every exception a method can throw must appear in its\n`@throws` tag, except a configured set of programming-error and infrastructure exceptions that stay unchecked - the\n`LogicException`, `RuntimeException` and `Error` families among them (see `php/phpstan-base.neon` for the full list).\nSuppress a deliberate case with `@phpstan-ignore missingType.checkedException`.\n\n#### Laravel projects\n\nFor Laravel projects, also install\n[`sinemacula/coding-standards-laravel`](https://github.com/sinemacula/coding-standards-laravel) and reference its\n`SineMaculaLaravel` PHPCS standard (which includes this one) in place of `SineMacula`. It adds the Laravel-specific\nsniffs and PHPStan rules; see that package's README for setup.\n\n### Biome (JavaScript / TypeScript)\n\nAfter installing the npm package, extend the shared Biome config from your project's `biome.json` (or\n`.qlty/configs/biome.json` when wired through Qlty):\n\n```json\n{\n    \"$schema\": \"https://biomejs.dev/schemas/2.0.0/schema.json\",\n    \"root\": true,\n    \"extends\": [\n        \"@sinemacula/coding-standards/js/biome.json\"\n    ],\n    \"files\": {\n        \"ignoreUnknown\": true,\n        \"includes\": [\n            \"**\",\n            \"!**/node_modules/**\",\n            \"!**/vendor/**\"\n        ]\n    }\n}\n```\n\n`extends` paths are resolved through normal Node module lookup, so the package only needs to be installed (no path math\nagainst `node_modules/` required). Project-specific `files.includes` and `files.excludes` stay in the consumer config.\n\n### ESLint (JavaScript / TypeScript)\n\nESLint runs *alongside* Biome, not in place of it. Biome keeps owning formatting and the fast syntactic lint; ESLint\nadds only the two things Biome structurally cannot express: this package's custom structural rules and the opt-in\ntype-aware rules (the curated typescript-eslint set plus the type-driven custom rules). Add the linter, the\ntypescript-eslint tooling, and this package to your dev dependencies:\n\n```bash\nnpm install --save-dev eslint typescript typescript-eslint eslint-plugin-jsdoc yaml-eslint-parser \\\n    @sinemacula/coding-standards\n```\n\n`yaml-eslint-parser` is imported by the base layer for the YAML comment-width block, so it has to resolve even in a\nrepository with no YAML worth linting; without it the flat config fails to load at all.\n\nThe package exposes three flat-config entry points:\n\n- `@sinemacula/coding-standards/js/eslint` - the base layer of syntax-only custom rules; needs no `tsconfig`, so it\n  stays cheap and runs anywhere Biome runs. Covers `.ts`/`.js` and, for the comment-width rule alone, `.yml`/`.yaml`.\n- `@sinemacula/coding-standards/js/eslint/type-checked` - the opt-in type-aware layer. It includes the base layer and\n  adds the cross-file / type-driven rules, so it needs a consumer `tsconfig`; use it in place of the base layer where\n  one exists.\n- `@sinemacula/coding-standards/js/eslint/vue` - the opt-in Vue layer for single-file components. Unlike the type-aware\n  layer it carries no base rules of its own, so spread it *alongside* whichever layer the repository already uses rather\n  than in place of one.\n\nCreate an `eslint.config.js` (or `.qlty/configs/eslint.config.js` when wired through Qlty) that spreads the layer you\nwant. Without a `tsconfig`, use the base layer:\n\n```js\nimport sm from '@sinemacula/coding-standards/js/eslint';\n\nexport default [...sm];\n```\n\nWhere a `tsconfig` exists, use the type-aware layer instead (it already carries the base rules):\n\n```js\nimport typeChecked from '@sinemacula/coding-standards/js/eslint/type-checked';\n\nexport default [...typeChecked];\n```\n\nVue repositories add the Vue toolchain and spread the Vue layer after the layer they already use:\n\n```bash\nnpm install --save-dev eslint-plugin-vue vue-eslint-parser eslint-plugin-check-file\n```\n\n```js\nimport typeChecked from '@sinemacula/coding-standards/js/eslint/type-checked';\nimport vue from '@sinemacula/coding-standards/js/eslint/vue';\n\nexport default [...typeChecked, ...vue];\n```\n\nThe Vue layer registers the single-file-component parser (without it `.vue` files are not linted at all), resolves\n`<script lang=\"ts\">` blocks through the TypeScript parser, and holds component filenames to kebab-case. It also carries\nthe template layout rules, which is the one place ESLint takes on formatting: Biome does not understand single-file\ncomponents, so `.vue` markup would otherwise go unformatted entirely. Those rules are aligned to the shared four-space\nindent.\n\nWhen wiring ESLint through Qlty, the shared eslint plugin sandbox installs only `eslint`, `jest`, and `prettier` by\ndefault, so the flat config's imports of this package and `typescript-eslint` fail to resolve. Widen the install filter\nin your `.qlty/qlty.toml` so the sandbox carries them. It is set per project rather than in the shared source because\nthe packages the sandbox needs differ between projects:\n\n```toml\n[plugins.definitions.eslint]\npackage_filters = [\n    \"@sinemacula/coding-standards\", \"typescript-eslint\", \"@typescript-eslint\", \"eslint-plugin-jsdoc\",\n    \"yaml-eslint-parser\",\n]\n```\n\nRepositories enabling the Vue layer widen the same filter further, since its plugins have to resolve inside that sandbox\ntoo:\n\n```toml\n[plugins.definitions.eslint]\npackage_filters = [\n    \"@sinemacula/coding-standards\", \"typescript-eslint\", \"@typescript-eslint\", \"eslint-plugin-jsdoc\",\n    \"yaml-eslint-parser\", \"eslint-plugin-vue\", \"vue-eslint-parser\", \"eslint-plugin-check-file\",\n]\n```\n\n### TypeScript (tsconfig)\n\nThe package ships a shared `tsconfig` base so every TypeScript repository checks its code to the same bar. Install the\npackage (as above) and extend the base from your `tsconfig.json`:\n\n```json\n{\n    \"extends\": \"@sinemacula/coding-standards/js/tsconfig.base.json\",\n    \"compilerOptions\": {\n        \"lib\": [\n            \"ES2023\",\n            \"DOM\",\n            \"DOM.Iterable\"\n        ],\n        \"types\": [\n            \"node\"\n        ]\n    },\n    \"include\": [\n        \"src\"\n    ]\n}\n```\n\nThe base carries only the environment-independent options: the full strictness set and the module/resolution discipline.\nEverything environment-specific stays in the consuming repo and layers on top - `lib` (DOM for the browser, none for a\nNode service), `types`, Vue's `jsx`/`jsxImportSource`, `paths`, `noEmit`, and the `include`/`exclude` globs. The`target`\nand `module` defaults suit bundler-built apps and libraries; a non-bundler project overrides them.\n\nThe base sets `noPropertyAccessFromIndexSignature`, so a property that comes from an index signature is accessed with\nbrackets (`config['key']`), not a dot. Biome cannot see types and so cannot tell that access apart from a normal one,\nwhich is why its `useLiteralKeys` rule is off and the type-aware `@typescript-eslint/dot-notation` rule enforces dot\naccess for real properties instead. Load the type-checked ESLint layer to get it.\n\n### Knip (JavaScript / TypeScript)\n\n```json\n{\n    \"$schema\": \"https://unpkg.com/knip@6/schema.json\",\n    \"extends\": [\n        \"@sinemacula/coding-standards/js/knip.json\"\n    ]\n}\n```\n\n### Qlty\n\nReference this repository as a source in your project's `.qlty/qlty.toml`, pinning `tag` to the latest\n[release](https://github.com/sinemacula/coding-standards/releases):\n\n```toml\n[[source]]\nname = \"sinemacula\"\nrepository = \"https://github.com/sinemacula/coding-standards\"\ntag = \"<version>\"\n```\n\nThe source enables the plugins every project runs, at the versions and modes they run with: TruffleHog, markdownlint,\nyamllint, actionlint, OSV-Scanner, Trivy (misconfiguration and dependency scanning), editorconfig-checker, PHPCS, PHP\nCS Fixer and Radarlint. A plugin with nothing to lint in a repository does not run there, so a TypeScript project is\nnot charged for the PHP tools. It also sets the PHP runtime and the shared excludes, keeps PHPCS 4.x findings from\nbeing discarded as a crash, and supplies the ESLint and Biome wiring for projects that enable those. List a plugin in\nyour own file only to change it: a version or mode you leave out is taken from the source, but any list you set, such\nas `drivers` or `extra_packages`, replaces the source's rather than adding to it. To turn a plugin off, give it\n`mode = \"disabled\"`.\n\nThe source also sets the code smell policy: smells are reported as comments rather than failing the check, the\nparameter-count check is off, and the return-statement, function-complexity and file-complexity thresholds are raised\n(see `source.toml`). Leave `[smells]` out of your own `.qlty/qlty.toml` so these apply. To change one for a single\nproject, set it there; to turn back on a check the source switches off, set `enabled = true` alongside the threshold,\nbecause the two files are merged rather than replaced.\n\n### Swift (SwiftLint and SwiftFormat)\n\nSwift repositories consume the shared policy through Qlty. Enable the default source for the tools, this repository\nfor the exported configs, and both native plugins:\n\n```toml\nconfig_version = \"0\"\n\n# SwiftLint's own `excluded:` list only applies when it walks a directory. Qlty\n# passes explicit file paths, so generated and third-party sources have to be\n# excluded here or the shared policy is reported against machine-written code.\nexclude_patterns = [\n    \".build/**\",\n    \"build/**\",\n    \"DerivedData/**\",\n    \"Carthage/**\",\n    \"Pods/**\",\n    \"vendor/**\",\n    \"**/Generated/**\",\n]\n\ntest_patterns = [\n    \"**/*Tests.swift\",\n    \"**/Tests/**\",\n]\n\n[[source]]\nname = \"default\"\ndefault = true\n\n[[source]]\nname = \"sinemacula\"\nrepository = \"https://github.com/sinemacula/coding-standards\"\ntag = \"<version>\"\n\n[[plugin]]\nname = \"swiftlint\"\n\n[[plugin]]\nname = \"swiftformat\"\nmode = \"comment\"\n```\n\nThis is the same configuration the package's own integration test runs, so what is documented here is what CI exercises.\n\nRun formatting and linting locally:\n\n```bash\nqlty fmt --all\nqlty check --all\n```\n\nSwiftLint and SwiftFormat are native macOS plugins. Qlty Cloud's Linux workers cannot execute them, so every Swift\nconsumer needs a macOS CI job that verifies formatting and runs `qlty check`. Qlty Cloud still provides its built-in\nSwift maintainability, duplication, complexity, security, and coverage capabilities.\n\nThe shared policy targets Swift 6 and deliberately contains no application-specific include paths or architecture\nrules. Xcode compiler checks such as strict concurrency, warnings-as-errors, platform availability, and test builds\nremain the consuming project's responsibility.\n\nSwiftLint has no configuration inheritance. A `.swiftlint.yml` committed to a consuming repository *replaces* the\nshared policy rather than extending it, so adding one to relax a single rule silently discards the whole standard.\nRaise a pull request here instead, or copy the shared file wholesale and edit the copy.\n\n## What's Included\n\n| Path                                      | Tool                 | Description                                            |\n|-------------------------------------------|----------------------|--------------------------------------------------------|\n| `src/PhpCsFixerConfig.php`                | PHP CS Fixer         | Factory class for building PHP CS Fixer configurations |\n| `php/.php-cs-fixer.rules.php`             | PHP CS Fixer         | Shared rules array (PSR-12 base + org conventions)     |\n| `SineMacula/ruleset.xml`                  | PHPCS                | Auto-discovered coding standard (PSR-12 + exclusions)  |\n| `php/phpstan-base.neon`                   | PHPStan              | Base config (org-wide ignored errors + settings)       |\n| `js/biome.json`                           | Biome                | JavaScript / TypeScript formatter + linter rules       |\n| `js/knip.json`                            | Knip                 | Unused-export detection rules                          |\n| `js/eslint/`                              | ESLint               | Structural, type-aware + Vue rules; runs with Biome    |\n| `js/eslint/` (YAML block)                 | ESLint               | Comment width in `.yml` / `.yaml`; yamllint owns rest  |\n| `markdown/.markdownlint.json`             | markdownlint         | Markdown linting rules                                 |\n| `yaml/.yamllint.yaml`                     | yamllint             | YAML linting rules                                     |\n| `shell/.shellcheckrc`                     | ShellCheck           | Shell script linting rules                             |\n| `security/.gitleaks.toml`                 | Gitleaks             | Secret-detection ruleset                               |\n| `security/trivy.yaml`                     | Trivy                | Skips generated and installed trees when scanning      |\n| `editorconfig/.editorconfig-checker.json` | editorconfig-checker | Disables only the max-line-length check                |\n| `swift/.swiftlint.yml`                    | SwiftLint            | Shared Swift 6 lint, safety, concurrency, and metrics  |\n| `swift/.swiftformat`                      | SwiftFormat          | Shared deterministic Swift 6 formatting policy         |\n\n## Rules\n\nThese are the custom rules this package enforces on top of PSR-12. A deliberate exception can be bypassed with the\nnative directive - `// phpcs:ignore <code>` for a sniff, `@phpstan-ignore <identifier>` for a rule,\n`// eslint-disable-next-line <rule>` for an ESLint rule.\n\n### PHPCS sniffs\n\n| Sniff                                                      | Enforces                                                                    |\n|------------------------------------------------------------|-----------------------------------------------------------------------------|\n| `SineMacula.Attributes.DisallowToolingAttribute`           | No IDE/tooling attributes (e.g. `JetBrains\\PhpStorm`).                      |\n| `SineMacula.Classes.RequireCombinedTraitImport`            | Traits must be imported in one `use` statement, not one per line.           |\n| `SineMacula.Classes.RequireFinalClass`                     | Concrete classes must be `final` or `abstract` (`@inheritable` opts out).   |\n| `SineMacula.Classes.RequireReadonlyPublicProperty`         | Public properties (declared or promoted) must be `readonly`.                |\n| `SineMacula.Commenting.CommentLineLength`                  | Standalone comment prose wrapped to 80 chars; premature wraps also fixed.   |\n| `SineMacula.Commenting.ConsistentEnumCaseComments`         | Enum case docs are all-or-nothing within an enum.                           |\n| `SineMacula.Commenting.MultilineMethodComment`             | A method's doc comment must span multiple lines.                            |\n| `SineMacula.Commenting.RequireConstantComment`             | Every class/interface/enum/trait constant needs a doc comment.              |\n| `SineMacula.Commenting.RequireCopyrightTag`                | Class/interface/enum/trait docblocks must carry an `@copyright` tag.        |\n| `SineMacula.Commenting.RequireNonPromotedParameterComment` | Plain params mixed with promoted ones need a comment.                       |\n| `SineMacula.Commenting.RequirePromotedPropertyComment`     | Every constructor-promoted property needs a doc comment.                    |\n| `SineMacula.Commenting.SingleLineMemberComment`            | A property, constant or enum-case doc comment sits on one line.             |\n| `SineMacula.Exceptions.DisallowBaseException`              | No throwing the base `\\Exception`; throw a domain exception.                |\n| `SineMacula.Exceptions.RequireEmptyCatchComment`           | An empty catch block must comment its intentional swallow.                  |\n| `SineMacula.Functions.RequireSensitiveParameter`           | Secret-named params need `#[\\SensitiveParameter]`; object types exempt.     |\n| `SineMacula.Metrics.MaxMethodCount`                        | A class/interface/trait/enum may declare at most 20 methods (tests exempt). |\n| `SineMacula.Metrics.MethodLength`                          | A method body may have at most 50 significant lines (tests exempt).         |\n| `SineMacula.Namespaces.RequireConcernsNamespace`           | Traits must live under a `Concerns` namespace segment.                      |\n| `SineMacula.Namespaces.RequireContractsNamespace`          | Interfaces must live under a `Contracts` namespace segment.                 |\n| `SineMacula.Namespaces.RequireEnumsNamespace`              | Enums must live under an `Enums` namespace segment.                         |\n| `SineMacula.NamingConventions.BooleanMethodName`           | `bool` methods are predicates; command verbs/@imperative exempt.            |\n| `SineMacula.NamingConventions.DisallowInterfacePrefix`     | Interface names must not use the Hungarian `I` prefix.                      |\n| `SineMacula.NamingConventions.ValidEnumCaseName`           | Enum cases must be `SCREAMING_SNAKE_CASE`.                                  |\n| `SineMacula.NamingConventions.ValidGlobalFunctionName`     | Global functions must be declared in `snake_case`.                          |\n| `SineMacula.TypeHints.RequireConstantType`                 | Class/interface/enum/trait constants must declare a native type.            |\n| `SineMacula.WhiteSpace.PromotedConstructorSpacing`         | Blank line above each promoted-constructor parameter.                       |\n\n### PHPStan rules\n\n| Identifier                             | Enforces                                                                       |\n|----------------------------------------|--------------------------------------------------------------------------------|\n| `sineMacula.mutableStaticProperty`     | Static properties written at runtime; `@managed-static` opts out.              |\n| `sineMacula.readonlyClass`             | A final class with only readonly properties must be `readonly`.                |\n| `sineMacula.redundantStaticReference`  | In a final class, `new static`, `static::` and `instanceof static` are `self`. |\n| `sineMacula.redundantStaticReturnType` | In a final class, a `static` return type or `@return` must be `self`.          |\n\n### ESLint rules\n\nAll rules run in the base layer except `boolean-method-name`, which resolves return types and so requires the opt-in\ntype-checked layer. Every rule is scoped to `.ts`/`.js`; `comment-line-wrap` alone also runs over `.yml`/`.yaml`.\n\n| Rule                                           | Enforces                                                                            |\n|------------------------------------------------|-------------------------------------------------------------------------------------|\n| `@sinemacula/no-interface-prefix`              | Interface and type-alias names must not use the Hungarian `I` prefix.               |\n| `@sinemacula/require-readonly-public-property` | Public class properties (declared or promoted) must be `readonly`.                  |\n| `@sinemacula/valid-enum-member-name`           | Enum members must be declared in `SCREAMING_SNAKE_CASE`.                            |\n| `@sinemacula/boolean-method-name`              | Boolean-returning methods need an is/has/can prefix; `@imperative` exempt.          |\n| `@sinemacula/no-mutable-static`                | No mutable exported bindings or mutable `static` class fields; test code exempt.    |\n| `@sinemacula/max-methods-per-class`            | A single class may declare at most 20 methods; test code exempt.                    |\n| `@sinemacula/no-base-error`                    | Throw a domain-specific `Error` subclass, never the base `Error`; test code exempt. |\n| `@sinemacula/require-copyright`                | Every file must carry a documentation comment with `@copyright` and `@author`.      |\n| `@sinemacula/require-file-description`         | The same comment must open with a prose summary above those tags.                   |\n| `@sinemacula/align-doc-tags`                   | `@author` and `@copyright` values line up at a single column; autofixable.          |\n| `@sinemacula/single-line-property-doc`         | A data member's documentation comment sits on one line; autofixable.                |\n| `@sinemacula/multiline-function-doc`           | A method's documentation comment spans multiple lines; autofixable.                 |\n| `@sinemacula/comment-line-wrap`                | Standalone comment prose wrapped to 80 chars, YAML included; premature wraps too.   |\n\n`boolean-method-name` takes `additionalPrefixes`, `additionalPredicates` and `additionalCommandVerbs` (string arrays) to\nwiden the accepted vocabulary from a consumer config. `max-methods-per-class` takes `max`, `no-base-error` takes\n`allow`, and `require-copyright` and `require-file-description` each take `tags` to adjust their defaults.\n`align-doc-tags` takes `tags` and `column`, the column counting from the `@`, so the default of 14 gives `@author` six\nspaces and `@copyright` three. Together `single-line-property-doc` and `multiline-function-doc` set a member's comment\nshape by its kind: data members (interface property signatures, enum members and data class fields) take one line, while\nmethods, interface method signatures and class fields holding a function take several. A data comment is never required,\nonly held to one line where present; a free function keeps the freedom of either shape.\n\n`require-copyright` and `require-file-description` divide the file header between them: the first asks that a single\nblock comment carry `@copyright` and `@author`, the second that the same block open with a prose summary above them,\nwhich is the shape the convention has always described and the half nothing enforced. Both find that block by the\ntags it carries rather than by its position, so a module documented at its export below the imports is read as the\nheader exactly as a comment at the top of the file is; a project that narrows one rule's `tags` should narrow the\nother's to match. Only the block's first non-blank line is read, and only for whether it is prose rather than a tag,\nwhich puts the summary above the tags and stops a wrapped tag value's continuation line passing as one. What the\nsummary says is the author's business. A file carrying no such block at all is left to `require-copyright`, so one\nmissing header is never faulted twice.\n\n`comment-line-wrap` takes `maxLength` (default 80) and is the syntax-only counterpart of the PHP\n`SineMacula.Commenting.CommentLineLength` sniff. It fills standalone `//` and `#` runs and multi-line docblock prose\ngreedily, reporting an overflowing line and a prematurely wrapped line on their own footings and autofixing both.\nMarkdown headings, docblock tag lines, machine-parsed tool directives (`eslint`, `biome-ignore`, `@ts-`, `Stryker`,\n`c8`/`v8`/`istanbul ignore`, `@vite-ignore`, `yamllint`, `yaml-language-server`, `renovate:` and the like), fenced code,\nan indented code or command block, a doc-tag whose value opens a multi-line bracketed type (an `array{...}` shape, a\n`<...>` generic or a `\\Closure(...)` signature), tables, separators, a line whose overflow is a single unbreakable token\nsuch as a long name or URL, trailing comments after code and compact single-line docblocks are left untouched. Each\ncomment token reclaims its own width from the line, so a `#` comment fills one column further than a `//` one.\n\nThis is the one rule the base layer also carries over `.yml` and `.yaml`, which nothing else in the standards bounds for\ncomment width: yamllint's `line-length` cannot tell a comment from a value, so it would fault `run:` commands and action\nrefs nobody can shorten, and it has no autofix. The YAML block registers `yaml-eslint-parser` for its `#` comments and\nenables this rule alone - none of `eslint-plugin-yml`'s own rules are switched on, so YAML quoting, key order and\nindentation stay yamllint's business. Only standalone comments are reached: a block scalar's body is content rather\nthan comment, so a shell comment inside a `run: |` step is never seen, and a comment trailing a value is not standalone.\n\nThe base layer also switches on a set of built-in rules: `@typescript-eslint/no-explicit-any`, `curly` (a brace on every\ncontrol statement, as PSR-12 already requires on the PHP side), `max-lines-per-function` (50 lines, test code exempt)\nand `max-depth` (4, test code exempt), plus `eslint-plugin-jsdoc` rules that require a documentation comment on every\ndeclared function, method, class, interface member and class field, require a description on every `@param` and\n`@returns`, and keep a blank line above every documentation block, single-line blocks included. The type-checked layer\nadds `@typescript-eslint/explicit-module-boundary-types` and `@typescript-eslint/only-throw-error`.\n\nTest files - `*.test.*`, `*.spec.*` and anything under `__tests__/`, `tests/` or `test-support/` - are exempt from\n`max-lines-per-function` and `max-depth` alone. A spec body is a long, deeply nested account of one scenario, and\nsplitting it to satisfy a metric hides the scenario rather than simplifying it. They are not exempt from documentation:\n`jsdoc/require-jsdoc` reaches declared functions, assigned arrows and classes, which in a spec file are its helpers,\nfactories and builders - the code a reader has to understand before the assertions mean anything. A test case is an\narrow passed as a call argument, which none of the rule's contexts match, so `it('...', () => {})` is never asked to\ncarry a block; a spec of test cases alone carries no documentation burden at all.\n\n`jsdoc/no-types`, which forbids a type in `@param`/`@returns`, runs over `.ts`/`.tsx`/`.mts`/`.cts` alone, alongside\n`@typescript-eslint/no-explicit-any`. A TypeScript signature already records the type, so the tag would only repeat it\nand is free to drift; plain JavaScript has no signature to hold one, which makes the tag the only place a type is\nwritten down, and clearing it there would delete the type rather than move it. The description rules are not scoped\nthat way: a tag says what a value means whether or not it also says what the value is, so `@param` and `@returns` need\na description in both languages.\n\n### Swift policy\n\nSwiftLint keeps its default rule set and adds curated opt-in rules with a strong correctness, concurrency, safety,\nperformance, or readability signal. The policy intentionally avoids analyzer-only rules, which need an Xcode compiler\nlog and cannot run through Qlty's normal lint driver.\n\nNotable additions include checks for force-unwrapping, silently discarded throwing tasks, invalid concurrency\nannotations, unsafe optional modelling, empty XCTest methods, unbalanced access control, inefficient collection\noperations, oversized closures, and non-private SwiftUI state. A discarded throwing task is an error because it can\nsilently lose an operational failure; most style and maintainability findings retain warning severity.\n\nThe main review and hard ceilings are:\n\n| Metric                | Warning | Error |\n|-----------------------|--------:|------:|\n| Line length           |     120 |   160 |\n| File length           |     500 |   800 |\n| Type body length      |     300 |   500 |\n| Function body length  |      50 |    80 |\n| Closure body length   |      50 |    80 |\n| Cyclomatic complexity |      10 |    20 |\n| Function parameters   |       6 |     8 |\n\nSwiftFormat owns whitespace, wrapping, imports, and other mechanically correctable layout. Its configuration matches\nSwiftLint on 120-column wrapping, import ordering, and no trailing commas, and it is the only tool of the two that\nenforces four-space indentation.\n\nThe policy also carries over the documentation opinions the PHP and TypeScript standards enforce:\n\n- `file_header` requires a copyright header, as `RequireCopyrightTagSniff` does for PHP classes and `require-copyright`\n  does for TypeScript declarations. The pattern asserts only that the tag is present, so the holder, year and format\n  stay the consuming project's choice, and SwiftFormat's `--header ignore` leaves an existing header untouched.\n- `missing_docs` requires documentation on `open` and `public` declarations, the Swift equivalent of the PHP docblock\n  sniffs and `jsdoc/require-jsdoc`. It is scoped to the public surface deliberately: demanding a comment on every\n  internal member would generate noise the other two standards do not.\n- `line_length` holds comments to the limit rather than exempting them. SwiftFormat wraps `//` comments to 120 but\n  leaves `///` doc comments alone, so without this an over-long documentation line passes both tools - where PHP and\n  TypeScript both wrap comment prose. Rules that can alter ownership,\ncontrol flow, explicit `Sendable` conformance, or public API shape are disabled; those changes require human review.\n\n### Methods that only throw\n\nA method that exists solely to refuse - a `__serialize()` that throws so a value holding a secret cannot reach a queue\npayload or a cache entry - returns nothing on any path, and `never` is how to say so:\n\n```php\n/**\n * @throws \\LogicException\n *\n * @return never\n */\npublic function __serialize(): never\n{\n    throw new LogicException('A token must not be serialised.');\n}\n```\n\n`never` is a subtype of every return type, so narrowing to it always satisfies an inherited signature, a magic method's\nexpected return included. The one place it does not fit is a method a subclass is meant to return from, because a child\ncannot widen `never` back. Such a method keeps the type it declares and throws anyway, which needs no directive:\n\n```php\n/**\n * @throws \\LogicException\n *\n * @return array<int, string>\n */\npublic function build(): array\n{\n    throw new LogicException('Not implemented.');\n}\n```\n\nWhether a documented return is ever produced is a question of control flow, not of tokens, so no sniff here asks it -\n`Squiz.Commenting.FunctionComment.InvalidNoReturn` decides by looking for a `return` token and so faults exactly the\nguard above. PHPStan's `return.missing` answers it properly: it reports a method that can reach its end without\nreturning the type it documents, and stays quiet where every path throws.\n\nThe one thing still worth knowing is that spelling out the contained type of a documented traversable can drag in\n`mixed`, which the mixed ban faults on its own footing and which has its own directive.\n\n## Requirements\n\n- PHP ^8.3 (Composer package)\n- Node.js (npm package)\n- macOS and Qlty CLI (SwiftLint and SwiftFormat policy)\n\n## Testing\n\n```bash\ncomposer test                # PHPUnit suite for the custom sniffs and PHPStan rule\ncomposer test:coverage       # suite with Clover coverage output\ncomposer test:mutation       # Infection mutation gate (min MSI 90)\ncomposer test:mutation:full  # full mutation suite without thresholds\ncomposer analyse             # PHPStan static analysis\ncomposer check               # static analysis and lint via qlty\ncomposer format              # format via qlty\ncomposer smells              # duplication / complexity smells via qlty\nbash scripts/test-swift-policy.sh # exported Swift policy integration test (macOS)\n```\n\n## Changelog\n\nSee [CHANGELOG.md](CHANGELOG.md) for a list of notable changes.\n\n## Contributing\n\nContributions are welcome. Please read [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on branching, commits, code\nquality, and pull requests.\n\n## Security\n\nIf you discover a security vulnerability, please report it responsibly. See [SECURITY.md](SECURITY.md) for the\ndisclosure policy and contact details.\n\n## License\n\nLicensed under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).\n","readmeFilename":"README.md"}