TypeScript/tests/baselines/reference/thisTypeInTaggedTemplateCall.types

31 lines
935 B
Plaintext

=== tests/cases/conformance/types/thisType/thisTypeInTaggedTemplateCall.ts ===
class Foo {
>Foo : Foo
static m<T>(this: new () => T, strings: TemplateStringsArray | string) {
>m : <T>(this: new () => T, strings: TemplateStringsArray | string) => T
>this : new () => T
>strings : string | TemplateStringsArray
return new this()
>new this() : T
>this : new () => T
}
}
Foo.m`test`;
>Foo.m`test` : Foo
>Foo.m : <T>(this: new () => T, strings: string | TemplateStringsArray) => T
>Foo : typeof Foo
>m : <T>(this: new () => T, strings: string | TemplateStringsArray) => T
>`test` : "test"
(Foo.m)`test`;
>(Foo.m)`test` : Foo
>(Foo.m) : <T>(this: new () => T, strings: string | TemplateStringsArray) => T
>Foo.m : <T>(this: new () => T, strings: string | TemplateStringsArray) => T
>Foo : typeof Foo
>m : <T>(this: new () => T, strings: string | TemplateStringsArray) => T
>`test` : "test"