В проекте NodeJS, над которым я сейчас работаю, мы используем внедрение зависимостей, и наряду с экземплярами специально написанных классов мы использовали такие модули, как fs
, crypto
, http
и другие, в качестве аргумента в конструктор.
Теперь мы хотели бы использовать TypeScript с библиотекой DefinitelyTyped для поддержки типов NodeJS. В случае с модулями NodeJS мне непонятно, как я могу описать определение типа для модулей в TypeScript?
Пример:
class ReportWriter {
private fs: ???;
constructor (fs: ???) { //what should I use instead of ???
this.fs = fs;
}
}
Я могу создать псевдоним типа (или, может быть, интерфейс):
type NodeFsModule = {
readFile: Function,
readFileSync: Function
};
Но это требует от меня описания огромного количества функций. Есть ли альтернатива?