eslint-plugin-tsdoc-require-2 1.0.6 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +111 -36
- package/dist/internal/require-tag-factory.cjs +58 -9
- package/dist/internal/require-tag-factory.d.ts +5 -2
- package/dist/internal/require-tag-factory.d.ts.map +1 -1
- package/dist/internal/require-tag-factory.js +58 -9
- package/dist/internal/require-tag-factory.js.map +1 -1
- package/dist/plugin.cjs +146 -17
- package/dist/plugin.d.ts +2 -0
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +142 -16
- package/dist/plugin.js.map +1 -1
- package/dist/rules/require-tag-rules.cjs +121 -25
- package/dist/rules/require-tag-rules.d.ts +5 -30
- package/dist/rules/require-tag-rules.d.ts.map +1 -1
- package/dist/rules/require-tag-rules.js +93 -0
- package/dist/rules/require-tag-rules.js.map +1 -1
- package/dist/rules/require.cjs +59 -16
- package/dist/rules/require.d.ts +3 -1
- package/dist/rules/require.d.ts.map +1 -1
- package/dist/rules/require.js +59 -16
- package/dist/rules/require.js.map +1 -1
- package/dist/rules/required-tags/require-abstract.cjs +32 -0
- package/dist/rules/required-tags/require-abstract.d.ts +5 -0
- package/dist/rules/required-tags/require-abstract.d.ts.map +1 -0
- package/dist/rules/required-tags/require-abstract.js +30 -0
- package/dist/rules/required-tags/require-abstract.js.map +1 -0
- package/dist/rules/required-tags/require-alpha.cjs +0 -1
- package/dist/rules/required-tags/require-alpha.d.ts.map +1 -1
- package/dist/rules/required-tags/require-alpha.js +1 -2
- package/dist/rules/required-tags/require-alpha.js.map +1 -1
- package/dist/rules/required-tags/require-author.cjs +32 -0
- package/dist/rules/required-tags/require-author.d.ts +5 -0
- package/dist/rules/required-tags/require-author.d.ts.map +1 -0
- package/dist/rules/required-tags/require-author.js +30 -0
- package/dist/rules/required-tags/require-author.js.map +1 -0
- package/dist/rules/required-tags/require-beta.cjs +0 -1
- package/dist/rules/required-tags/require-beta.d.ts.map +1 -1
- package/dist/rules/required-tags/require-beta.js +1 -2
- package/dist/rules/required-tags/require-beta.js.map +1 -1
- package/dist/rules/required-tags/require-category.cjs +32 -0
- package/dist/rules/required-tags/require-category.d.ts +5 -0
- package/dist/rules/required-tags/require-category.d.ts.map +1 -0
- package/dist/rules/required-tags/require-category.js +30 -0
- package/dist/rules/required-tags/require-category.js.map +1 -0
- package/dist/rules/required-tags/require-class.cjs +32 -0
- package/dist/rules/required-tags/require-class.d.ts +5 -0
- package/dist/rules/required-tags/require-class.d.ts.map +1 -0
- package/dist/rules/required-tags/require-class.js +30 -0
- package/dist/rules/required-tags/require-class.js.map +1 -0
- package/dist/rules/required-tags/require-decorator.cjs +0 -1
- package/dist/rules/required-tags/require-decorator.d.ts.map +1 -1
- package/dist/rules/required-tags/require-decorator.js +1 -2
- package/dist/rules/required-tags/require-decorator.js.map +1 -1
- package/dist/rules/required-tags/require-default-value.cjs +0 -1
- package/dist/rules/required-tags/require-default-value.d.ts.map +1 -1
- package/dist/rules/required-tags/require-default-value.js +1 -2
- package/dist/rules/required-tags/require-default-value.js.map +1 -1
- package/dist/rules/required-tags/require-deprecated.cjs +0 -1
- package/dist/rules/required-tags/require-deprecated.d.ts.map +1 -1
- package/dist/rules/required-tags/require-deprecated.js +1 -2
- package/dist/rules/required-tags/require-deprecated.js.map +1 -1
- package/dist/rules/required-tags/require-document.cjs +32 -0
- package/dist/rules/required-tags/require-document.d.ts +5 -0
- package/dist/rules/required-tags/require-document.d.ts.map +1 -0
- package/dist/rules/required-tags/require-document.js +30 -0
- package/dist/rules/required-tags/require-document.js.map +1 -0
- package/dist/rules/required-tags/require-enum.cjs +32 -0
- package/dist/rules/required-tags/require-enum.d.ts +5 -0
- package/dist/rules/required-tags/require-enum.d.ts.map +1 -0
- package/dist/rules/required-tags/require-enum.js +30 -0
- package/dist/rules/required-tags/require-enum.js.map +1 -0
- package/dist/rules/required-tags/require-event-property.cjs +0 -1
- package/dist/rules/required-tags/require-event-property.d.ts.map +1 -1
- package/dist/rules/required-tags/require-event-property.js +1 -2
- package/dist/rules/required-tags/require-event-property.js.map +1 -1
- package/dist/rules/required-tags/require-event.cjs +32 -0
- package/dist/rules/required-tags/require-event.d.ts +5 -0
- package/dist/rules/required-tags/require-event.d.ts.map +1 -0
- package/dist/rules/required-tags/require-event.js +30 -0
- package/dist/rules/required-tags/require-event.js.map +1 -0
- package/dist/rules/required-tags/require-example.cjs +0 -1
- package/dist/rules/required-tags/require-example.d.ts.map +1 -1
- package/dist/rules/required-tags/require-example.js +1 -2
- package/dist/rules/required-tags/require-example.js.map +1 -1
- package/dist/rules/required-tags/require-expand.cjs +32 -0
- package/dist/rules/required-tags/require-expand.d.ts +5 -0
- package/dist/rules/required-tags/require-expand.d.ts.map +1 -0
- package/dist/rules/required-tags/require-expand.js +30 -0
- package/dist/rules/required-tags/require-expand.js.map +1 -0
- package/dist/rules/required-tags/require-experimental.cjs +0 -1
- package/dist/rules/required-tags/require-experimental.d.ts.map +1 -1
- package/dist/rules/required-tags/require-experimental.js +1 -2
- package/dist/rules/required-tags/require-experimental.js.map +1 -1
- package/dist/rules/required-tags/require-function.cjs +32 -0
- package/dist/rules/required-tags/require-function.d.ts +5 -0
- package/dist/rules/required-tags/require-function.d.ts.map +1 -0
- package/dist/rules/required-tags/require-function.js +30 -0
- package/dist/rules/required-tags/require-function.js.map +1 -0
- package/dist/rules/required-tags/require-group.cjs +32 -0
- package/dist/rules/required-tags/require-group.d.ts +5 -0
- package/dist/rules/required-tags/require-group.d.ts.map +1 -0
- package/dist/rules/required-tags/require-group.js +30 -0
- package/dist/rules/required-tags/require-group.js.map +1 -0
- package/dist/rules/required-tags/require-hidden.cjs +32 -0
- package/dist/rules/required-tags/require-hidden.d.ts +5 -0
- package/dist/rules/required-tags/require-hidden.d.ts.map +1 -0
- package/dist/rules/required-tags/require-hidden.js +30 -0
- package/dist/rules/required-tags/require-hidden.js.map +1 -0
- package/dist/rules/required-tags/require-hideconstructor.cjs +32 -0
- package/dist/rules/required-tags/require-hideconstructor.d.ts +5 -0
- package/dist/rules/required-tags/require-hideconstructor.d.ts.map +1 -0
- package/dist/rules/required-tags/require-hideconstructor.js +30 -0
- package/dist/rules/required-tags/require-hideconstructor.js.map +1 -0
- package/dist/rules/required-tags/require-ignore.cjs +32 -0
- package/dist/rules/required-tags/require-ignore.d.ts +5 -0
- package/dist/rules/required-tags/require-ignore.d.ts.map +1 -0
- package/dist/rules/required-tags/require-ignore.js +30 -0
- package/dist/rules/required-tags/require-ignore.js.map +1 -0
- package/dist/rules/required-tags/require-import.cjs +32 -0
- package/dist/rules/required-tags/require-import.d.ts +5 -0
- package/dist/rules/required-tags/require-import.d.ts.map +1 -0
- package/dist/rules/required-tags/require-import.js +30 -0
- package/dist/rules/required-tags/require-import.js.map +1 -0
- package/dist/rules/required-tags/require-include.cjs +32 -0
- package/dist/rules/required-tags/require-include.d.ts +5 -0
- package/dist/rules/required-tags/require-include.d.ts.map +1 -0
- package/dist/rules/required-tags/require-include.js +30 -0
- package/dist/rules/required-tags/require-include.js.map +1 -0
- package/dist/rules/required-tags/require-inherit-doc.cjs +0 -1
- package/dist/rules/required-tags/require-inherit-doc.d.ts.map +1 -1
- package/dist/rules/required-tags/require-inherit-doc.js +1 -2
- package/dist/rules/required-tags/require-inherit-doc.js.map +1 -1
- package/dist/rules/required-tags/require-inline.cjs +32 -0
- package/dist/rules/required-tags/require-inline.d.ts +5 -0
- package/dist/rules/required-tags/require-inline.d.ts.map +1 -0
- package/dist/rules/required-tags/require-inline.js +30 -0
- package/dist/rules/required-tags/require-inline.js.map +1 -0
- package/dist/rules/required-tags/require-interface.cjs +32 -0
- package/dist/rules/required-tags/require-interface.d.ts +5 -0
- package/dist/rules/required-tags/require-interface.d.ts.map +1 -0
- package/dist/rules/required-tags/require-interface.js +30 -0
- package/dist/rules/required-tags/require-interface.js.map +1 -0
- package/dist/rules/required-tags/require-internal.cjs +0 -1
- package/dist/rules/required-tags/require-internal.d.ts.map +1 -1
- package/dist/rules/required-tags/require-internal.js +1 -2
- package/dist/rules/required-tags/require-internal.js.map +1 -1
- package/dist/rules/required-tags/require-label.cjs +0 -1
- package/dist/rules/required-tags/require-label.d.ts.map +1 -1
- package/dist/rules/required-tags/require-label.js +1 -2
- package/dist/rules/required-tags/require-label.js.map +1 -1
- package/dist/rules/required-tags/require-license.cjs +32 -0
- package/dist/rules/required-tags/require-license.d.ts +5 -0
- package/dist/rules/required-tags/require-license.d.ts.map +1 -0
- package/dist/rules/required-tags/require-license.js +30 -0
- package/dist/rules/required-tags/require-license.js.map +1 -0
- package/dist/rules/required-tags/require-link.cjs +0 -1
- package/dist/rules/required-tags/require-link.d.ts.map +1 -1
- package/dist/rules/required-tags/require-link.js +1 -2
- package/dist/rules/required-tags/require-link.js.map +1 -1
- package/dist/rules/required-tags/require-merge-module-with.cjs +32 -0
- package/dist/rules/required-tags/require-merge-module-with.d.ts +5 -0
- package/dist/rules/required-tags/require-merge-module-with.d.ts.map +1 -0
- package/dist/rules/required-tags/require-merge-module-with.js +30 -0
- package/dist/rules/required-tags/require-merge-module-with.js.map +1 -0
- package/dist/rules/required-tags/require-module.cjs +32 -0
- package/dist/rules/required-tags/require-module.d.ts +5 -0
- package/dist/rules/required-tags/require-module.d.ts.map +1 -0
- package/dist/rules/required-tags/require-module.js +30 -0
- package/dist/rules/required-tags/require-module.js.map +1 -0
- package/dist/rules/required-tags/require-namespace.cjs +32 -0
- package/dist/rules/required-tags/require-namespace.d.ts +5 -0
- package/dist/rules/required-tags/require-namespace.d.ts.map +1 -0
- package/dist/rules/required-tags/require-namespace.js +30 -0
- package/dist/rules/required-tags/require-namespace.js.map +1 -0
- package/dist/rules/required-tags/require-overload.cjs +32 -0
- package/dist/rules/required-tags/require-overload.d.ts +5 -0
- package/dist/rules/required-tags/require-overload.d.ts.map +1 -0
- package/dist/rules/required-tags/require-overload.js +30 -0
- package/dist/rules/required-tags/require-overload.js.map +1 -0
- package/dist/rules/required-tags/require-override.cjs +0 -1
- package/dist/rules/required-tags/require-override.d.ts.map +1 -1
- package/dist/rules/required-tags/require-override.js +1 -2
- package/dist/rules/required-tags/require-override.js.map +1 -1
- package/dist/rules/required-tags/require-package-documentation.cjs +0 -1
- package/dist/rules/required-tags/require-package-documentation.d.ts.map +1 -1
- package/dist/rules/required-tags/require-package-documentation.js +1 -2
- package/dist/rules/required-tags/require-package-documentation.js.map +1 -1
- package/dist/rules/required-tags/require-param.cjs +0 -1
- package/dist/rules/required-tags/require-param.d.ts.map +1 -1
- package/dist/rules/required-tags/require-param.js +1 -2
- package/dist/rules/required-tags/require-param.js.map +1 -1
- package/dist/rules/required-tags/require-primary-export.cjs +32 -0
- package/dist/rules/required-tags/require-primary-export.d.ts +5 -0
- package/dist/rules/required-tags/require-primary-export.d.ts.map +1 -0
- package/dist/rules/required-tags/require-primary-export.js +30 -0
- package/dist/rules/required-tags/require-primary-export.js.map +1 -0
- package/dist/rules/required-tags/require-private-remarks.cjs +0 -1
- package/dist/rules/required-tags/require-private-remarks.d.ts.map +1 -1
- package/dist/rules/required-tags/require-private-remarks.js +1 -2
- package/dist/rules/required-tags/require-private-remarks.js.map +1 -1
- package/dist/rules/required-tags/require-private.cjs +32 -0
- package/dist/rules/required-tags/require-private.d.ts +5 -0
- package/dist/rules/required-tags/require-private.d.ts.map +1 -0
- package/dist/rules/required-tags/require-private.js +30 -0
- package/dist/rules/required-tags/require-private.js.map +1 -0
- package/dist/rules/required-tags/require-property.cjs +32 -0
- package/dist/rules/required-tags/require-property.d.ts +5 -0
- package/dist/rules/required-tags/require-property.d.ts.map +1 -0
- package/dist/rules/required-tags/require-property.js +30 -0
- package/dist/rules/required-tags/require-property.js.map +1 -0
- package/dist/rules/required-tags/require-protected.cjs +32 -0
- package/dist/rules/required-tags/require-protected.d.ts +5 -0
- package/dist/rules/required-tags/require-protected.d.ts.map +1 -0
- package/dist/rules/required-tags/require-protected.js +30 -0
- package/dist/rules/required-tags/require-protected.js.map +1 -0
- package/dist/rules/required-tags/require-public.cjs +0 -1
- package/dist/rules/required-tags/require-public.d.ts.map +1 -1
- package/dist/rules/required-tags/require-public.js +1 -2
- package/dist/rules/required-tags/require-public.js.map +1 -1
- package/dist/rules/required-tags/require-readonly.cjs +0 -1
- package/dist/rules/required-tags/require-readonly.d.ts.map +1 -1
- package/dist/rules/required-tags/require-readonly.js +1 -2
- package/dist/rules/required-tags/require-readonly.js.map +1 -1
- package/dist/rules/required-tags/require-remarks.cjs +0 -1
- package/dist/rules/required-tags/require-remarks.d.ts.map +1 -1
- package/dist/rules/required-tags/require-remarks.js +1 -2
- package/dist/rules/required-tags/require-remarks.js.map +1 -1
- package/dist/rules/required-tags/require-returns.cjs +0 -1
- package/dist/rules/required-tags/require-returns.d.ts.map +1 -1
- package/dist/rules/required-tags/require-returns.js +1 -2
- package/dist/rules/required-tags/require-returns.js.map +1 -1
- package/dist/rules/required-tags/require-sealed.cjs +0 -1
- package/dist/rules/required-tags/require-sealed.d.ts.map +1 -1
- package/dist/rules/required-tags/require-sealed.js +1 -2
- package/dist/rules/required-tags/require-sealed.js.map +1 -1
- package/dist/rules/required-tags/require-see.cjs +0 -1
- package/dist/rules/required-tags/require-see.d.ts.map +1 -1
- package/dist/rules/required-tags/require-see.js +1 -2
- package/dist/rules/required-tags/require-see.js.map +1 -1
- package/dist/rules/required-tags/require-since.cjs +32 -0
- package/dist/rules/required-tags/require-since.d.ts +5 -0
- package/dist/rules/required-tags/require-since.d.ts.map +1 -0
- package/dist/rules/required-tags/require-since.js +30 -0
- package/dist/rules/required-tags/require-since.js.map +1 -0
- package/dist/rules/required-tags/require-sort-strategy.cjs +32 -0
- package/dist/rules/required-tags/require-sort-strategy.d.ts +5 -0
- package/dist/rules/required-tags/require-sort-strategy.d.ts.map +1 -0
- package/dist/rules/required-tags/require-sort-strategy.js +30 -0
- package/dist/rules/required-tags/require-sort-strategy.js.map +1 -0
- package/dist/rules/required-tags/require-summary.cjs +32 -0
- package/dist/rules/required-tags/require-summary.d.ts +5 -0
- package/dist/rules/required-tags/require-summary.d.ts.map +1 -0
- package/dist/rules/required-tags/require-summary.js +30 -0
- package/dist/rules/required-tags/require-summary.js.map +1 -0
- package/dist/rules/required-tags/require-template.cjs +32 -0
- package/dist/rules/required-tags/require-template.d.ts +5 -0
- package/dist/rules/required-tags/require-template.d.ts.map +1 -0
- package/dist/rules/required-tags/require-template.js +30 -0
- package/dist/rules/required-tags/require-template.js.map +1 -0
- package/dist/rules/required-tags/require-throws.cjs +0 -1
- package/dist/rules/required-tags/require-throws.d.ts.map +1 -1
- package/dist/rules/required-tags/require-throws.js +1 -2
- package/dist/rules/required-tags/require-throws.js.map +1 -1
- package/dist/rules/required-tags/require-type-param.cjs +0 -1
- package/dist/rules/required-tags/require-type-param.d.ts.map +1 -1
- package/dist/rules/required-tags/require-type-param.js +1 -2
- package/dist/rules/required-tags/require-type-param.js.map +1 -1
- package/dist/rules/required-tags/require-use-declared-type.cjs +32 -0
- package/dist/rules/required-tags/require-use-declared-type.d.ts +5 -0
- package/dist/rules/required-tags/require-use-declared-type.d.ts.map +1 -0
- package/dist/rules/required-tags/require-use-declared-type.js +30 -0
- package/dist/rules/required-tags/require-use-declared-type.js.map +1 -0
- package/dist/rules/required-tags/require-virtual.cjs +0 -1
- package/dist/rules/required-tags/require-virtual.d.ts.map +1 -1
- package/dist/rules/required-tags/require-virtual.js +1 -2
- package/dist/rules/required-tags/require-virtual.js.map +1 -1
- package/dist/rules/restrict-tags.cjs +416 -0
- package/dist/rules/restrict-tags.d.ts +17 -0
- package/dist/rules/restrict-tags.d.ts.map +1 -0
- package/dist/rules/restrict-tags.js +414 -0
- package/dist/rules/restrict-tags.js.map +1 -0
- package/docs/rules/getting-started.md +97 -0
- package/docs/rules/index.md +61 -0
- package/docs/rules/presets/all.md +100 -0
- package/docs/rules/presets/detailed.md +41 -0
- package/docs/rules/presets/index.md +156 -0
- package/docs/rules/presets/jsdoc.md +43 -0
- package/docs/rules/presets/packages.md +41 -0
- package/docs/rules/presets/recommended.md +37 -0
- package/docs/rules/presets/tsdoc.md +45 -0
- package/docs/rules/presets/typedoc-strict.md +50 -0
- package/docs/rules/presets/typedoc.md +44 -0
- package/docs/rules/require.md +92 -56
- package/docs/rules/required-tags/require-abstract.md +87 -0
- package/docs/rules/required-tags/require-alpha.md +1 -1
- package/docs/rules/required-tags/require-author.md +87 -0
- package/docs/rules/required-tags/require-beta.md +1 -1
- package/docs/rules/required-tags/require-category.md +87 -0
- package/docs/rules/required-tags/require-class.md +71 -0
- package/docs/rules/required-tags/require-decorator.md +1 -1
- package/docs/rules/required-tags/require-default-value.md +1 -1
- package/docs/rules/required-tags/require-deprecated.md +1 -1
- package/docs/rules/required-tags/require-document.md +87 -0
- package/docs/rules/required-tags/require-enum.md +73 -0
- package/docs/rules/required-tags/require-event-property.md +1 -1
- package/docs/rules/required-tags/require-event.md +87 -0
- package/docs/rules/required-tags/require-example.md +1 -1
- package/docs/rules/required-tags/require-expand.md +87 -0
- package/docs/rules/required-tags/require-experimental.md +1 -1
- package/docs/rules/required-tags/require-function.md +74 -0
- package/docs/rules/required-tags/require-group.md +87 -0
- package/docs/rules/required-tags/require-hidden.md +87 -0
- package/docs/rules/required-tags/require-hideconstructor.md +87 -0
- package/docs/rules/required-tags/require-ignore.md +87 -0
- package/docs/rules/required-tags/require-import.md +87 -0
- package/docs/rules/required-tags/require-include.md +87 -0
- package/docs/rules/required-tags/require-inherit-doc.md +1 -1
- package/docs/rules/required-tags/require-inline.md +87 -0
- package/docs/rules/required-tags/require-interface.md +74 -0
- package/docs/rules/required-tags/require-internal.md +1 -1
- package/docs/rules/required-tags/require-label.md +1 -1
- package/docs/rules/required-tags/require-license.md +87 -0
- package/docs/rules/required-tags/require-link.md +1 -1
- package/docs/rules/required-tags/require-merge-module-with.md +87 -0
- package/docs/rules/required-tags/require-module.md +78 -0
- package/docs/rules/required-tags/require-namespace.md +87 -0
- package/docs/rules/required-tags/require-overload.md +87 -0
- package/docs/rules/required-tags/require-override.md +1 -1
- package/docs/rules/required-tags/require-package-documentation.md +44 -24
- package/docs/rules/required-tags/require-param.md +45 -25
- package/docs/rules/required-tags/require-primary-export.md +87 -0
- package/docs/rules/required-tags/require-private.md +87 -0
- package/docs/rules/required-tags/require-property.md +87 -0
- package/docs/rules/required-tags/require-protected.md +87 -0
- package/docs/rules/required-tags/require-remarks.md +40 -25
- package/docs/rules/required-tags/require-returns.md +45 -25
- package/docs/rules/required-tags/require-since.md +87 -0
- package/docs/rules/required-tags/require-sort-strategy.md +87 -0
- package/docs/rules/required-tags/require-summary.md +87 -0
- package/docs/rules/required-tags/require-template.md +87 -0
- package/docs/rules/required-tags/require-throws.md +53 -25
- package/docs/rules/required-tags/require-type-param.md +45 -25
- package/docs/rules/required-tags/require-use-declared-type.md +87 -0
- package/docs/rules/required-tags.md +171 -39
- package/docs/rules/restrict-tags.md +203 -0
- package/package.json +394 -45
|
@@ -1,29 +1,40 @@
|
|
|
1
1
|
# tsdoc-require-2/require-remarks
|
|
2
2
|
|
|
3
|
-
Require the `@remarks` tag in TSDoc blocks for
|
|
3
|
+
Require the `@remarks` tag in TSDoc blocks for targeted declarations.
|
|
4
4
|
|
|
5
5
|
## Rule details
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
This rule reports declarations that already have TSDoc but are missing `@remarks`.
|
|
8
8
|
|
|
9
|
-
It
|
|
9
|
+
It does not create a TSDoc block. Pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require comments.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
## Why use it
|
|
12
|
+
|
|
13
|
+
`@remarks` captures context that does not fit in a one-line summary, such as caveats, migration notes, or runtime assumptions.
|
|
13
14
|
|
|
14
15
|
## Options
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
This rule supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
18
|
+
|
|
19
|
+
- `enforceFor`
|
|
20
|
+
- `exportMode`
|
|
21
|
+
- `includeNonExported` (legacy alias for `exportMode: "all"`)
|
|
22
|
+
|
|
23
|
+
Flat config example:
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
import tsdocRequire from "eslint-plugin-tsdoc-require-2";
|
|
27
|
+
|
|
28
|
+
export default [
|
|
29
|
+
{
|
|
30
|
+
plugins: {
|
|
31
|
+
"tsdoc-require-2": tsdocRequire,
|
|
32
|
+
},
|
|
33
|
+
rules: {
|
|
34
|
+
"tsdoc-require-2/require-remarks": "error",
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
];
|
|
27
38
|
```
|
|
28
39
|
|
|
29
40
|
## Examples
|
|
@@ -32,10 +43,10 @@ It supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
|
32
43
|
|
|
33
44
|
```ts
|
|
34
45
|
/**
|
|
35
|
-
*
|
|
46
|
+
* Loads the project configuration.
|
|
36
47
|
*/
|
|
37
|
-
export function
|
|
38
|
-
return
|
|
48
|
+
export function loadConfig(): string {
|
|
49
|
+
return "default";
|
|
39
50
|
}
|
|
40
51
|
```
|
|
41
52
|
|
|
@@ -43,15 +54,19 @@ export function runTask(value: string): string {
|
|
|
43
54
|
|
|
44
55
|
```ts
|
|
45
56
|
/**
|
|
46
|
-
*
|
|
47
|
-
* @remarks
|
|
57
|
+
* Loads the project configuration.
|
|
58
|
+
* @remarks Falls back to default values when no config file exists.
|
|
48
59
|
*/
|
|
49
|
-
export function
|
|
50
|
-
return
|
|
60
|
+
export function loadConfig(): string {
|
|
61
|
+
return "default";
|
|
51
62
|
}
|
|
52
63
|
```
|
|
53
64
|
|
|
65
|
+
## Behavior notes
|
|
66
|
+
|
|
67
|
+
This rule checks tag presence. It does not validate the depth or quality of the remarks text.
|
|
68
|
+
|
|
54
69
|
## Further reading
|
|
55
70
|
|
|
56
|
-
- TSDoc tag reference:
|
|
57
|
-
-
|
|
71
|
+
- [TSDoc tag reference: @remarks](https://tsdoc.org/pages/tags/remarks/)
|
|
72
|
+
- [required-tags family overview](../required-tags.md)
|
|
@@ -1,29 +1,45 @@
|
|
|
1
1
|
# tsdoc-require-2/require-returns
|
|
2
2
|
|
|
3
|
-
Require the `@returns` tag in TSDoc blocks for
|
|
3
|
+
Require the `@returns` tag in TSDoc blocks for targeted declarations.
|
|
4
4
|
|
|
5
5
|
## Rule details
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
This rule reports declarations that already have TSDoc but are missing `@returns`.
|
|
8
8
|
|
|
9
|
-
It
|
|
9
|
+
It does not create a TSDoc block. Pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require comments.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
## Why use it
|
|
12
|
+
|
|
13
|
+
`@returns` makes output contracts explicit and easier to review.
|
|
13
14
|
|
|
14
15
|
## Options
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
This rule supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
18
|
+
|
|
19
|
+
- `enforceFor`
|
|
20
|
+
- `exportMode`
|
|
21
|
+
- `includeNonExported` (legacy alias for `exportMode: "all"`)
|
|
22
|
+
|
|
23
|
+
Flat config example (function-focused scope):
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
import tsdocRequire from "eslint-plugin-tsdoc-require-2";
|
|
27
|
+
|
|
28
|
+
export default [
|
|
29
|
+
{
|
|
30
|
+
plugins: {
|
|
31
|
+
"tsdoc-require-2": tsdocRequire,
|
|
32
|
+
},
|
|
33
|
+
rules: {
|
|
34
|
+
"tsdoc-require-2/require-returns": [
|
|
35
|
+
"error",
|
|
36
|
+
{
|
|
37
|
+
enforceFor: ["function"],
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
];
|
|
27
43
|
```
|
|
28
44
|
|
|
29
45
|
## Examples
|
|
@@ -32,10 +48,10 @@ It supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
|
32
48
|
|
|
33
49
|
```ts
|
|
34
50
|
/**
|
|
35
|
-
*
|
|
51
|
+
* Converts input to a stable ID.
|
|
36
52
|
*/
|
|
37
|
-
export function
|
|
38
|
-
return value;
|
|
53
|
+
export function toStableId(value: string): string {
|
|
54
|
+
return value.trim().toLowerCase();
|
|
39
55
|
}
|
|
40
56
|
```
|
|
41
57
|
|
|
@@ -43,15 +59,19 @@ export function runTask(value: string): string {
|
|
|
43
59
|
|
|
44
60
|
```ts
|
|
45
61
|
/**
|
|
46
|
-
*
|
|
47
|
-
* @returns
|
|
62
|
+
* Converts input to a stable ID.
|
|
63
|
+
* @returns Lower-cased stable ID.
|
|
48
64
|
*/
|
|
49
|
-
export function
|
|
50
|
-
return value;
|
|
65
|
+
export function toStableId(value: string): string {
|
|
66
|
+
return value.trim().toLowerCase();
|
|
51
67
|
}
|
|
52
68
|
```
|
|
53
69
|
|
|
70
|
+
## Behavior notes
|
|
71
|
+
|
|
72
|
+
This rule checks tag presence. It does not validate return description quality or return-type accuracy.
|
|
73
|
+
|
|
54
74
|
## Further reading
|
|
55
75
|
|
|
56
|
-
- TSDoc tag reference:
|
|
57
|
-
-
|
|
76
|
+
- [TSDoc tag reference: @returns](https://tsdoc.org/pages/tags/returns/)
|
|
77
|
+
- [required-tags family overview](../required-tags.md)
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# tsdoc-require-2/require-since
|
|
2
|
+
|
|
3
|
+
Require the `@since` tag in TSDoc blocks for supported TypeScript declarations.
|
|
4
|
+
|
|
5
|
+
## Rule Details
|
|
6
|
+
|
|
7
|
+
This rule reports supported declarations and default exports when a TSDoc block exists but does not contain `@since`. It does not create the TSDoc block itself, so pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require the comment.
|
|
8
|
+
|
|
9
|
+
## Options
|
|
10
|
+
|
|
11
|
+
This rule accepts the same options as [`tsdoc-require-2/require`](../require.md):
|
|
12
|
+
|
|
13
|
+
- `enforceFor`: limit which declaration kinds are checked.
|
|
14
|
+
- `exportMode`: choose whether to check exported declarations, non-exported top-level declarations, or both.
|
|
15
|
+
- `includeNonExported`: legacy alias for `exportMode: "all"`.
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type Options = [
|
|
19
|
+
{
|
|
20
|
+
enforceFor?: Array<
|
|
21
|
+
| "class"
|
|
22
|
+
| "enum"
|
|
23
|
+
| "function"
|
|
24
|
+
| "interface"
|
|
25
|
+
| "namespace"
|
|
26
|
+
| "object"
|
|
27
|
+
| "type"
|
|
28
|
+
| "variable"
|
|
29
|
+
>;
|
|
30
|
+
exportMode?: "all" | "exported" | "non-exported";
|
|
31
|
+
includeNonExported?: boolean;
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Default options:
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
[
|
|
40
|
+
{
|
|
41
|
+
enforceFor: [
|
|
42
|
+
"class",
|
|
43
|
+
"enum",
|
|
44
|
+
"function",
|
|
45
|
+
"interface",
|
|
46
|
+
"namespace",
|
|
47
|
+
"object",
|
|
48
|
+
"type",
|
|
49
|
+
"variable",
|
|
50
|
+
],
|
|
51
|
+
exportMode: "exported",
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## ❌ Incorrect
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
/**
|
|
60
|
+
* Performs a tagged operation.
|
|
61
|
+
*/
|
|
62
|
+
export function taggedFunction(value: string): string {
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## ✅ Correct
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
/**
|
|
71
|
+
* Performs a tagged operation.
|
|
72
|
+
* @since
|
|
73
|
+
*/
|
|
74
|
+
export function taggedFunction(value: string): string {
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## When Not To Use It
|
|
80
|
+
|
|
81
|
+
Disable this rule if your documentation convention does not require `@since` on the declarations targeted by your configuration.
|
|
82
|
+
|
|
83
|
+
## Further Reading
|
|
84
|
+
|
|
85
|
+
- [TSDoc](https://tsdoc.org)
|
|
86
|
+
- [TypeDoc Tags](https://typedoc.org/documents/Tags.html)
|
|
87
|
+
- [required-tags](../required-tags.md)
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# tsdoc-require-2/require-sort-strategy
|
|
2
|
+
|
|
3
|
+
Require the `@sortStrategy` tag in TSDoc blocks for supported TypeScript declarations.
|
|
4
|
+
|
|
5
|
+
## Rule Details
|
|
6
|
+
|
|
7
|
+
This rule reports supported declarations and default exports when a TSDoc block exists but does not contain `@sortStrategy`. It does not create the TSDoc block itself, so pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require the comment.
|
|
8
|
+
|
|
9
|
+
## Options
|
|
10
|
+
|
|
11
|
+
This rule accepts the same options as [`tsdoc-require-2/require`](../require.md):
|
|
12
|
+
|
|
13
|
+
- `enforceFor`: limit which declaration kinds are checked.
|
|
14
|
+
- `exportMode`: choose whether to check exported declarations, non-exported top-level declarations, or both.
|
|
15
|
+
- `includeNonExported`: legacy alias for `exportMode: "all"`.
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type Options = [
|
|
19
|
+
{
|
|
20
|
+
enforceFor?: Array<
|
|
21
|
+
| "class"
|
|
22
|
+
| "enum"
|
|
23
|
+
| "function"
|
|
24
|
+
| "interface"
|
|
25
|
+
| "namespace"
|
|
26
|
+
| "object"
|
|
27
|
+
| "type"
|
|
28
|
+
| "variable"
|
|
29
|
+
>;
|
|
30
|
+
exportMode?: "all" | "exported" | "non-exported";
|
|
31
|
+
includeNonExported?: boolean;
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Default options:
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
[
|
|
40
|
+
{
|
|
41
|
+
enforceFor: [
|
|
42
|
+
"class",
|
|
43
|
+
"enum",
|
|
44
|
+
"function",
|
|
45
|
+
"interface",
|
|
46
|
+
"namespace",
|
|
47
|
+
"object",
|
|
48
|
+
"type",
|
|
49
|
+
"variable",
|
|
50
|
+
],
|
|
51
|
+
exportMode: "exported",
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## ❌ Incorrect
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
/**
|
|
60
|
+
* Performs a tagged operation.
|
|
61
|
+
*/
|
|
62
|
+
export function taggedFunction(value: string): string {
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## ✅ Correct
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
/**
|
|
71
|
+
* Performs a tagged operation.
|
|
72
|
+
* @sortStrategy
|
|
73
|
+
*/
|
|
74
|
+
export function taggedFunction(value: string): string {
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## When Not To Use It
|
|
80
|
+
|
|
81
|
+
Disable this rule if your documentation convention does not require `@sortStrategy` on the declarations targeted by your configuration.
|
|
82
|
+
|
|
83
|
+
## Further Reading
|
|
84
|
+
|
|
85
|
+
- [TSDoc](https://tsdoc.org)
|
|
86
|
+
- [TypeDoc Tags](https://typedoc.org/documents/Tags.html)
|
|
87
|
+
- [required-tags](../required-tags.md)
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# tsdoc-require-2/require-summary
|
|
2
|
+
|
|
3
|
+
Require the `@summary` tag in TSDoc blocks for supported TypeScript declarations.
|
|
4
|
+
|
|
5
|
+
## Rule Details
|
|
6
|
+
|
|
7
|
+
This rule reports supported declarations and default exports when a TSDoc block exists but does not contain `@summary`. It does not create the TSDoc block itself, so pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require the comment.
|
|
8
|
+
|
|
9
|
+
## Options
|
|
10
|
+
|
|
11
|
+
This rule accepts the same options as [`tsdoc-require-2/require`](../require.md):
|
|
12
|
+
|
|
13
|
+
- `enforceFor`: limit which declaration kinds are checked.
|
|
14
|
+
- `exportMode`: choose whether to check exported declarations, non-exported top-level declarations, or both.
|
|
15
|
+
- `includeNonExported`: legacy alias for `exportMode: "all"`.
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type Options = [
|
|
19
|
+
{
|
|
20
|
+
enforceFor?: Array<
|
|
21
|
+
| "class"
|
|
22
|
+
| "enum"
|
|
23
|
+
| "function"
|
|
24
|
+
| "interface"
|
|
25
|
+
| "namespace"
|
|
26
|
+
| "object"
|
|
27
|
+
| "type"
|
|
28
|
+
| "variable"
|
|
29
|
+
>;
|
|
30
|
+
exportMode?: "all" | "exported" | "non-exported";
|
|
31
|
+
includeNonExported?: boolean;
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Default options:
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
[
|
|
40
|
+
{
|
|
41
|
+
enforceFor: [
|
|
42
|
+
"class",
|
|
43
|
+
"enum",
|
|
44
|
+
"function",
|
|
45
|
+
"interface",
|
|
46
|
+
"namespace",
|
|
47
|
+
"object",
|
|
48
|
+
"type",
|
|
49
|
+
"variable",
|
|
50
|
+
],
|
|
51
|
+
exportMode: "exported",
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## ❌ Incorrect
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
/**
|
|
60
|
+
* Performs a tagged operation.
|
|
61
|
+
*/
|
|
62
|
+
export function taggedFunction(value: string): string {
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## ✅ Correct
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
/**
|
|
71
|
+
* Performs a tagged operation.
|
|
72
|
+
* @summary
|
|
73
|
+
*/
|
|
74
|
+
export function taggedFunction(value: string): string {
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## When Not To Use It
|
|
80
|
+
|
|
81
|
+
Disable this rule if your documentation convention does not require `@summary` on the declarations targeted by your configuration.
|
|
82
|
+
|
|
83
|
+
## Further Reading
|
|
84
|
+
|
|
85
|
+
- [TSDoc](https://tsdoc.org)
|
|
86
|
+
- [TypeDoc Tags](https://typedoc.org/documents/Tags.html)
|
|
87
|
+
- [required-tags](../required-tags.md)
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# tsdoc-require-2/require-template
|
|
2
|
+
|
|
3
|
+
Require the `@template` tag in TSDoc blocks for supported TypeScript declarations.
|
|
4
|
+
|
|
5
|
+
## Rule Details
|
|
6
|
+
|
|
7
|
+
This rule reports supported declarations and default exports when a TSDoc block exists but does not contain `@template`. It does not create the TSDoc block itself, so pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require the comment.
|
|
8
|
+
|
|
9
|
+
## Options
|
|
10
|
+
|
|
11
|
+
This rule accepts the same options as [`tsdoc-require-2/require`](../require.md):
|
|
12
|
+
|
|
13
|
+
- `enforceFor`: limit which declaration kinds are checked.
|
|
14
|
+
- `exportMode`: choose whether to check exported declarations, non-exported top-level declarations, or both.
|
|
15
|
+
- `includeNonExported`: legacy alias for `exportMode: "all"`.
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
type Options = [
|
|
19
|
+
{
|
|
20
|
+
enforceFor?: Array<
|
|
21
|
+
| "class"
|
|
22
|
+
| "enum"
|
|
23
|
+
| "function"
|
|
24
|
+
| "interface"
|
|
25
|
+
| "namespace"
|
|
26
|
+
| "object"
|
|
27
|
+
| "type"
|
|
28
|
+
| "variable"
|
|
29
|
+
>;
|
|
30
|
+
exportMode?: "all" | "exported" | "non-exported";
|
|
31
|
+
includeNonExported?: boolean;
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Default options:
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
[
|
|
40
|
+
{
|
|
41
|
+
enforceFor: [
|
|
42
|
+
"class",
|
|
43
|
+
"enum",
|
|
44
|
+
"function",
|
|
45
|
+
"interface",
|
|
46
|
+
"namespace",
|
|
47
|
+
"object",
|
|
48
|
+
"type",
|
|
49
|
+
"variable",
|
|
50
|
+
],
|
|
51
|
+
exportMode: "exported",
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## ❌ Incorrect
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
/**
|
|
60
|
+
* Performs a tagged operation.
|
|
61
|
+
*/
|
|
62
|
+
export function taggedFunction(value: string): string {
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## ✅ Correct
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
/**
|
|
71
|
+
* Performs a tagged operation.
|
|
72
|
+
* @template
|
|
73
|
+
*/
|
|
74
|
+
export function taggedFunction(value: string): string {
|
|
75
|
+
return value;
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## When Not To Use It
|
|
80
|
+
|
|
81
|
+
Disable this rule if your documentation convention does not require `@template` on the declarations targeted by your configuration.
|
|
82
|
+
|
|
83
|
+
## Further Reading
|
|
84
|
+
|
|
85
|
+
- [TSDoc](https://tsdoc.org)
|
|
86
|
+
- [TypeDoc Tags](https://typedoc.org/documents/Tags.html)
|
|
87
|
+
- [required-tags](../required-tags.md)
|
|
@@ -1,29 +1,45 @@
|
|
|
1
1
|
# tsdoc-require-2/require-throws
|
|
2
2
|
|
|
3
|
-
Require the `@throws` tag in TSDoc blocks for
|
|
3
|
+
Require the `@throws` tag in TSDoc blocks for targeted declarations.
|
|
4
4
|
|
|
5
5
|
## Rule details
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
This rule reports declarations that already have TSDoc but are missing `@throws`.
|
|
8
8
|
|
|
9
|
-
It
|
|
9
|
+
It does not create a TSDoc block. Pair it with [`tsdoc-require-2/require`](../require.md) when you also want to require comments.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
## Why use it
|
|
12
|
+
|
|
13
|
+
`@throws` documents failure behavior and reduces hidden runtime surprises for consumers.
|
|
13
14
|
|
|
14
15
|
## Options
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
This rule supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
18
|
+
|
|
19
|
+
- `enforceFor`
|
|
20
|
+
- `exportMode`
|
|
21
|
+
- `includeNonExported` (legacy alias for `exportMode: "all"`)
|
|
22
|
+
|
|
23
|
+
Flat config example (function-focused scope):
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
import tsdocRequire from "eslint-plugin-tsdoc-require-2";
|
|
27
|
+
|
|
28
|
+
export default [
|
|
29
|
+
{
|
|
30
|
+
plugins: {
|
|
31
|
+
"tsdoc-require-2": tsdocRequire,
|
|
32
|
+
},
|
|
33
|
+
rules: {
|
|
34
|
+
"tsdoc-require-2/require-throws": [
|
|
35
|
+
"error",
|
|
36
|
+
{
|
|
37
|
+
enforceFor: ["function"],
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
];
|
|
27
43
|
```
|
|
28
44
|
|
|
29
45
|
## Examples
|
|
@@ -32,10 +48,14 @@ It supports the same options as [`tsdoc-require-2/require`](../require.md):
|
|
|
32
48
|
|
|
33
49
|
```ts
|
|
34
50
|
/**
|
|
35
|
-
*
|
|
51
|
+
* Loads a user by ID.
|
|
36
52
|
*/
|
|
37
|
-
export function
|
|
38
|
-
|
|
53
|
+
export function loadUser(id: string): string {
|
|
54
|
+
if (id.length === 0) {
|
|
55
|
+
throw new Error("id is required");
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return id;
|
|
39
59
|
}
|
|
40
60
|
```
|
|
41
61
|
|
|
@@ -43,15 +63,23 @@ export function runTask(value: string): string {
|
|
|
43
63
|
|
|
44
64
|
```ts
|
|
45
65
|
/**
|
|
46
|
-
*
|
|
47
|
-
* @throws
|
|
66
|
+
* Loads a user by ID.
|
|
67
|
+
* @throws Error when the id is empty.
|
|
48
68
|
*/
|
|
49
|
-
export function
|
|
50
|
-
|
|
69
|
+
export function loadUser(id: string): string {
|
|
70
|
+
if (id.length === 0) {
|
|
71
|
+
throw new Error("id is required");
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return id;
|
|
51
75
|
}
|
|
52
76
|
```
|
|
53
77
|
|
|
78
|
+
## Behavior notes
|
|
79
|
+
|
|
80
|
+
This rule checks tag presence. It does not verify whether code paths actually throw.
|
|
81
|
+
|
|
54
82
|
## Further reading
|
|
55
83
|
|
|
56
|
-
- TSDoc tag reference:
|
|
57
|
-
-
|
|
84
|
+
- [TSDoc tag reference: @throws](https://tsdoc.org/pages/tags/throws/)
|
|
85
|
+
- [required-tags family overview](../required-tags.md)
|