Учитывая класс, содержащий как свойства, так и методы, я хотел бы получить тип, который просто содержит его свойства.
Например, если я определю класс следующим образом:
class MyObject {
constructor(public prop1: string, public prop2: number) {}
instanceMethod() { ... }
}
Я хотел бы иметь тип, скажем MyObjectConstructor
, который будет выглядеть так:
type MyObjectConstructor = {
prop1: string;
prop2: string;
}
Я знаю, что могу использовать встроенный тип Pick
и вручную выбирать нужные мне ключи по имени, но я не хочу повторять все клавиши и менять их каждый раз, когда добавляю новые свойства для моего класса.
Есть ли способ определить универсальный тип ConstructorType<T>
, который возвращает только свойства класса в машинописи?