Ответ 1
Как и в случае TypeScript 2.0, типизация больше не требуется. Организация npm - это организация для настройки команды разработчиков. Я полагаю, что Microsoft настроила организацию @types в npm и добавила команду разработчиков TypeScript в организацию. Пакеты под организацией @types публикуются автоматически из DefinitelyTyped с использованием инструмента типа-издателя в соответствии с docs.
Кроме того, есть еще один способ добавить types
к вашим пакетам:
В вашем пакете. json
Если ваш пакет имеет основной файл .js
, вам также необходимо указать основной файл декларации в вашем файле package.json
. Задайте свойство types
, чтобы указать ваш связанный файл декларации. Например:
{
"name": "awesome",
"author": "Vandelay Industries",
"version": "1.0.0",
"main": "./lib/main.js",
"types": "./lib/main.d.ts"
}
Обратите внимание, что поле "typings"
является синонимом "types"
и может также использоваться.
Также обратите внимание, что если ваш основной файл декларации имеет имя index.d.ts
и живет в корневом каталоге (рядом с index.js
), вам не нужно отмечать свойство "types"
, хотя это желательно сделать.
Что касается типов поиска
По большей части, пакеты декларации типов всегда должны иметь то же имя, что и имя пакета в npm, но с префиксом @types/, но если вам нужно, вы можете проверить https://aka.ms/types, чтобы найти пакет для вашей любимой библиотеки.
От - http://www.typescriptlang.org/docs/handbook/declaration-files/consumption.html
Но когда я сделал npm search @types/openlayers
, я не получил никаких результатов. Но поиск из веб-интерфейса действительно возвращал мне результаты. Поэтому я полагаю, что npm search
не выполняет поиск между организациями.