Я использую typeof
, чтобы вывести тип возвращаемого значения функции, но так как я не могу вызвать реальную функцию, я использую трюк, использующий троичный оператор, чтобы вывести тип, однако это оставляет меня с типом объединения, который включает undefined
:
function foo() {
return { bar: 1 };
}
const fooInstance = true ? undefined : foo(); // foo() is never actually called
type FooOrUndefined = typeof fooInstance; // {bar: number} | undefined
type Foo = ???; // Should be { bar: number }
Есть ли способ избавиться от undefined
от FooOrUndefined
?