🔎 Search Terms
Diagnostic 8030 is being generated incorrectly when using JSDoc @type on a method when the type is being referred to from an interface. This is using the new tsc LSP - version 7.0.2.
🕗 Version & Regression Information
- This changed between versions 7.0.0-dev.260707.2 and 7.0.2.
- This is the behavior in every version I tried, and I reviewed the FAQ for entries about new native issues being transferred into the main typescript repo.
⏯ Playground Link
No response
💻 Code
// types.ts
interface Example {
method (): number;
}
export {};
// code.js
const exampleFns = {
/**
* @type {Example['method']} // A JSDoc `@type` tag on a function must have a signature with the correct number of arguments.
*/
method () {
return Math.random();
}
};
🙁 Actual behavior
in this example, the diagnostic and LSP info does not tell the user that typescript is internally suffixing | undefined to the type. As such wrapping the type in NonNullable<T> removes the error diagnostic, I do not believe this to be intended behaviour as previous iterations the golang native LSP tsgo (7.0.0-dev.260707.2) did not produce this diagnostic, nor did previous versions of typescript.
🙂 Expected behavior
The type should be properly referenced with no additional suffixing of types, as it used to.
Additional information about the issue
No response
🔎 Search Terms
Diagnostic 8030 is being generated incorrectly when using JSDoc
@typeon a method when the type is being referred to from an interface. This is using the newtscLSP - version 7.0.2.🕗 Version & Regression Information
⏯ Playground Link
No response
💻 Code
🙁 Actual behavior
in this example, the diagnostic and LSP info does not tell the user that typescript is internally suffixing
| undefinedto the type. As such wrapping the type inNonNullable<T>removes the error diagnostic, I do not believe this to be intended behaviour as previous iterations the golang native LSPtsgo(7.0.0-dev.260707.2) did not produce this diagnostic, nor did previous versions of typescript.🙂 Expected behavior
The type should be properly referenced with no additional suffixing of types, as it used to.
Additional information about the issue
No response