TypeScript/tests/cases/conformance/jsdoc/typedefMultipleTypeParameters.ts

24 lines
712 B
TypeScript
Raw Normal View History

// @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>;