microsoft / microsoft/TypeScript
Support @typedef as member of namespace
Open
Nobody has claimed this yet.
checkJs
Domain: JavaScript
Domain: JSDoc
In Discussion
Suggestion
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.3k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 132
Description
TypeScript Version: 3.0.0-dev.20180711
Code
class C {
/** @typedef {number} N */
/** @type {N} */
x = 0; // works
}
/**
* @memberof C
* @typedef {number} M
*/
/** @type {C.N} */
const x = 0; // broke
/** @type {C.M} */
const y = 0; // broke
Expected behavior:
No error.
Actual behavior:
C.N and C.M don't exist.
Contributor guide
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 with the minimal JavaScript/JSDoc repro in the issue and trace how @typedef declarations are resolved for C.N and C.M. Done means both annotations type-check without errors, including the class member and @memberof cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 42/100