Sometimes, we will need to consume an existing JavaScript file, but we will not be able to migrate it to TypeScript. A common example of this scenario is when we consume a third-party JavaScript library.
If the library is open source, we could contribute to it by migrating it to TypeScript. However, sometimes, using TypeScript might not align with the preferences of the library authors, or the migration may require a significant amount of work. TypeScript solves this problem by allowing us to create special kinds of files known as type declarations or type definitions.
In the previous chapter, we learned that, by default, TypeScript includes a lib.d.ts file that provides interface declarations for the built-in JavaScript ...