Как связать определения типов TS с библиотекой npm js - PullRequest
0 голосов
/ 13 мая 2019

Я пытаюсь предоставить определения типов 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.

Почему определения типов не распознаются?

1 Ответ

0 голосов
/ 16 мая 2019

Интерфейсы являются типами и не существуют во время выполнения.

Звучит так, как будто вы хотите объявить класс со статическим методом или объект с методом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...