23 lines
712 B
TypeScript
23 lines
712 B
TypeScript
// @allowJs: true
|
|
// @checkJs: true
|
|
// @noEmit: true
|
|
// @Filename: a.js
|
|
/**
|
|
* @template {{ a: number, b: string }} T,U A Comment
|
|
* @template {{ c: boolean }} V uh ... are comments even supported??
|
|
* @template W
|
|
* @template X That last one had no comment
|
|
* @typedef {{ t: T, u: U, v: V, w: W, x: X }} Everything
|
|
*/
|
|
|
|
/** @type {Everything<{ a: number, b: 'hi', c: never }, undefined, { c: true, d: 1 }, number, string>} */
|
|
var tuvwx;
|
|
|
|
/** @type {Everything<{ a: number }, undefined, { c: 1, d: 1 }, number, string>} */
|
|
var wrong;
|
|
|
|
/** @type {Everything<{ a: number }>} */
|
|
var insufficient;
|
|
|
|
// @Filename: test.ts
|
|
declare var actually: Everything<{ a: number }, undefined, { c: 1, d: 1 }, number, string>;
|