Closed

Description
TypeScript Version: master (as of #26283)
Code
/**
* @template {new (...args: any[]) => any} T
* @param {T} SuperClass
*/
function myMixin(SuperClass) {
return class extends SuperClass {
method() { return 0; }
}
};
class Base {}
const Mixed = myMixin(Base);
const instance = new Mixed();
instance.method(); // Correctly typed in signature help
instance.meshod(); // But not checked
Run with allowJs
, checkJs
, and strict
.
Expected behavior:
Error at meshod
.
Actual behavior:
No error.