1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
=== tests/cases/conformance/salsa/use.js ===
var ex = require('./ex')
>ex : typeof ex
>require('./ex') : typeof ex
>require : any
>'./ex' : "./ex"
// values work
var crunch = new ex.Crunch(1);
>crunch : ex.Crunch
>new ex.Crunch(1) : ex.Crunch
>ex.Crunch : typeof ex.Crunch
>ex : typeof ex
>Crunch : typeof ex.Crunch
>1 : 1
crunch.n
>crunch.n : number
>crunch : ex.Crunch
>n : number
// types work
/**
* @param {ex.Greatest} greatest
* @param {ex.Crunch} wrap
*/
function f(greatest, wrap) {
>f : (greatest: ex.Greatest, wrap: ex.Crunch) => void
>greatest : ex.Greatest
>wrap : ex.Crunch
greatest.day
>greatest.day : 1
>greatest : ex.Greatest
>day : 1
wrap.n
>wrap.n : number
>wrap : ex.Crunch
>n : number
}
=== tests/cases/conformance/salsa/ex.d.ts ===
export type Greatest = { day: 1 }
>Greatest : { day: 1; }
>day : 1
export class Crunch {
>Crunch : Crunch
n: number
>n : number
m(): number
>m : () => number
constructor(n: number)
>n : number
}
|