Я пытаюсь перенести свой проект JS WDIO на TypeScript
Я столкнулся с проблемой, когда во время разработки TypeScript не распознает мои Nodejs глобальные переменные, объявленные в before
хуке в моем Конфигурация WDIO:
...
let chai = require('chai');
...
before: async function (capabilities, specs) {
//setting global variables
global.foo = "bar"
global.expect= chai.expect;
global.helpers = require("../helpers/helpers");
// ... etc.
// ... etc.
},
Я сталкивался с разными темами SO, но похоже, что они не актуальны, поскольку здесь подход немного отличается (из-за хука before
) ...
Мне даже удалось заставить его работать в какой-то момент, создав global.d.ts с чем-то внутри вроде:
declare module NodeJS {
interface Global {
foo: string
}
}
Но после того, как этот машинописный текст перестал распознавать типы WDIO, как browser
, $
et c. А также с этим подходом мне пришлось использовать global.foo
в своих тестах, что означает, что мне нужно изменить сотни вхождений foo
.
Как мне перенести свой проект на TypeScript и продолжить использование моих глобальных переменных из before
крючок?