Я пытаюсь предоставить определения типов Typescript библиотекой js. На самом деле библиотека написана на Typescript и передана Бабелем, но это не имеет значения.
Проблема в том, что определения типов не воспринимаются ни Intellij Idea, ни ts-node
.
Библиотека имеет следующие конфигурации и файлы:
package.json
...
"main": "build/index.js",
"types": "build/index.d.ts",
"files": [
"build"
],
...
сборка / index.js
exports.Foo = {
bar: () => 'hello'
}
сборка / index.d.ts
export interface Foo {
bar: () => string
}
Тогда в коде ts я получаю ошибку.
import { Foo } from 'apister'
Foo.bar()
// error TS2693: 'Foo' only refers to a type, but is being used as a value here.
Почему определения типов не распознаются?