Feature support for additional JSDoc tags @interface, @enum, @license
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 5k
- Forks
- 162
- Avg merge
- 17h 24m
- Merged PRs (30d)
- 8
Description
Problem
TypeScript may be used in a mixed mode environment where you may have some TypeScript source files and some JavaScript source files. The TypeScript compiler will process both source file types. In the case when TypeScript processes a .ts source file it can determine when a class is an interface, for example, however, when TypeScript processes a .js source file it cannot. Since both types of source files will be processed by tsdoc there needs to be some mechanism to determine missing information when a .js source file is processed, otherwise the documentation will be incomplete and inaccurate when compared with the TypeScript documentation in the same project.
@interface tag
The @interface tag is supported in JSDoc and it is proposed that it also be supported in tsdoc to allow .js source files to indicate that a class is an interface.
@enum tag
The @enum tag is supported in JSDoc and it is proposed that it also be supported in tsdoc to allow .js source files to indicate that a class is an enumeration.
@license tag
The @license tag is supported in JSDoc and it is proposed that it also be supported in tsdoc to allow both .ts and .js source files to indicate the license associated with the source file.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing how TSDoc processes .ts and .js source files and how existing JSDoc tags are represented. Compare the proposed @interface, @enum, and @license behavior with the linked JSDoc references. Done means all three tags are accepted and the resulting documentation distinguishes interfaces, enumerations, and source-file licenses accurately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- documentation
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100