TypeScript/tests/cases/fourslash/staticGenericOverloads1.ts
Wesley Wigham 16450a027a
Change the default type parameter constraints and defaults to unknown from {} (#30637)
* Change the default type parameter constraint and default to unknown from {}

* Relax unknown checking outside of strictNullChecks a bit

* Increase strictness on index signatures with type `unknown` so inference doesnt change surprisingly

* Remove redundant switch
2019-04-04 12:25:15 -07:00

21 lines
627 B
TypeScript

/// <reference path='fourslash.ts'/>
////class A<T> {
//// static B<S>(v: A<S>): A<S>;
//// static B<S>(v: S): A<S>;
//// static B<S>(v: any): A<S> {
//// return null;
//// }
////}
////var a = new A<number>();
////A.B(/**/
verify.signatureHelp({ marker: "", overloadsCount: 2 });
edit.insert('a');
verify.signatureHelp({ overloadsCount: 2, text: "B(v: A<number>): A<number>" });
edit.insert('); A.B(');
verify.signatureHelp({ overloadsCount: 2, text: "B(v: A<unknown>): A<unknown>" });
edit.insert('a');
verify.signatureHelp({ overloadsCount: 2, text: "B(v: A<number>): A<number>" });