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
| // let add: (x:number,y:number) => number
// interface Add{ // (x:number, y:number): number // }
type Adds = (x: number, y:number) => number
let adds: Adds = (a, b) => a + b
interface Lib{ ():void; version: string; doSomething():void }
function getLib(){ let lib: Lib = (() => {}) as Lib lib.version = '1.0'; lib.doSomething = () => {} return lib; }
let lib1 = getLib(); lib1(); lib1.doSomething();
let lib2 = getLib();
|