Эту проблему с машинописным текстом легко исправить в вашем проекте React Native (например, после обновления RN до последней версии).
Однако определение lib предоставляет правильные tygins для глобальных функций:
declare function setTimeout(handler: () => void, timeout: number): number; declare function setTimeout<Args extends any[]>( handler: (...args: Args) => void, timeout?: number, ...args: Args ): number;
Источник:
types/react-native/globals.d.ts
Основная проблема в том, что глобальные типы @type/node заменяют собой глобальные типы @type/react-native.
И по умолчанию typescript ведет себя так:
Все видимые пакеты «@types» включены в вашу компиляцию.
Хорошо, тогда давайте укажем только ту глобальную типизацию, которая нам действительно нужна (tsconfig.json
):
{ "compilerOptions": { "types": ["react-native", "jest"] } }
После изменения compilerOptions.types
типизация nodejs будет исключена.