Ответ 1
Вы можете получить желаемое поведение с помощью опции paths в tsConfig. Это может выглядеть примерно так:
{
"compilerOptions": {
...
"paths": {
"*": [
"src/*",
"declarations/*"
]
}
},
...
}
С помощью этой конфигурации машинопись ищет модули в src (там должен быть весь исходный код приложения), а также в объявлениях, в папке объявлений я обычно помещаю свои дополнительные необходимые объявления.
Чтобы переопределить типизацию модуля узла, есть две опции:
-
поместите папку с именем как модуль в папку объявлений, содержащую файл index.d.ts для набора текста
-
поместите файл декларации, названный как модуль, в папку декларации
В качестве рабочего примера вы можете взглянуть на этот репозиторий https://github.com/kaoDev/react-ts-sample
Важный намек Бернхарда Кенига:
Порядок путей имеет значение. Мне пришлось поместить путь с моими переопределениями перед путем с исходными определениями типов, чтобы мои переопределения были выбраны первыми. - Бернхард Кениг