Прежде чем использовать unknown
или any
, я бы попробовал посмотреть, существуют ли типы для вашей библиотеки в npm @ types
, чтобы посмотреть, может ли информация о типах там находиться.
Похоже, есть типы для кукловода:
npm install --save @types/puppeteer
Что касается того, что вы должны делать, это зависит от вас. Если гипотетически никакие типы не были доступны, то вы могли бы застрять. Вы можете создать свой собственный файл наборов и объединить его с помощью функции объявления слияния Typescript. Однако я бы посоветовал против этого, потому что
A. Вам придется обновлять ваш файл для печати каждый раз, когда вы обновляете библиотеку, что очень неприятно
B. Вы можете запутаться, если не совсем правы относительно типов, которые возвращает библиотека
Я бы, вероятно, просто оставил его на unknown
или any
, чтобы все было проще.
Редактировать: лучший ответ - следовать ответу @Frank Modica и обернуть результат в Обещание, например Promise<any>
или Promise<unknown>
. Это обеспечивает, по крайней мере, некоторую информацию о intellisense и намного лучше, чем просто определить ее как any
или unknown
, как я уже говорил ранее.