I maintain several large TypeScript projects at work, and these days it is rare to encounter a major package on NPM that doesn't have type definitions. And if a package doesn't have type definitions, you can simply make your own to include in your project using definition files, also known as d.ts files. These definition files don't have to be comprehensive. All you usually need is an ambient module definition to keep the compiler from complaining:
typings.d.ts
declare module 'some-npm-package';