Integración de librerías
Librerías con soporte incluido
Aunque una librería esté escrita en JavaScript, se puede adaptar a TypeScript utilizando archivos de definición de tipos (extensión .d.ts). Estos lo que hacen es tipar las funciones, clases, constantes, etc. que exporta la librería.
Las librerías que incluyen soporte integrado para TypeScript se pueden distinguir en el repositorio de NPM porque aparece el logo de TypeScript a la derecha del nombre.

Definitely Typed
Hay librerías que no integran archivos de definición de tipos, pero se pueden instalar por separado. Para saber si es el caso, en los repositorios de NPM, te indica mediante un icono, que la librería dispone de tipos proporcionados por el repositorio DefinitelyTyped. Haciendo click en el icono, nos lleva al paquete que debemos instalar adicionalmente.


Librerías sin soporte (antiguas)
Por último, si no existen tipos para una librería, y además esta no utiliza módulos (export), sino que crea funciones o variables globales por ejemplo. Debemos indicar a TypeScript que la función, variable, clase, etc. que queremos usar existe (y de paso tiparla) con la instrucción declare.
No debemos implementar nada, solo declarar los nombres de las variables y el encabezado de las funciones (con tipos).