Допустим, у вас есть интерфейс, а затем классы, которые его реализуют.
interface A { /*do stuff*/ }
class B implements A { /*do stuff*/ }
class C implements A { /*do stuff*/ }
Тогда, если у вас есть переменная, которая может хранить тип класса, а не конкретный c экземпляр объекта, что вы указываете в качестве типа?
let x: Something = B; // or C
Я знаю, что для объектов вы можете использовать typeof, но для интерфейсов - нет. Однако я могу указать переменные для хранения реализаций интерфейсов, поэтому я не понимаю, почему я не могу хранить классы интерфейса.