Separating namespace from static properties in TypeScript can sometimes be tricky.
error: 'ClassA' only refers to a type, but is being used as a namespace here.
class ClassA {
static ClassB = class {
};
}
type T = ClassA // ok
type T = ClassA.ClassB // error: 'ClassA' only refers to a type, but is being used as a namespace here.
new ClassA.ClassB() // ok
The code example above demonstrates an issue where errors are reported in the code that you may wish to resolve.