# Use TypeScript with the IMA SDK

[TypeScript](https://www.typescriptlang.org/) is a strongly typed, object-oriented
programming language that compiles to JavaScript. TypeScript is a superset of
JavaScript, and supports all of JavaScript's features plus optional
[static typing](https://en.wikipedia.org/wiki/Type_system#STATIC).
[TypeScript tooling](http://www.typescriptlang.org/docs/handbook/2/basic-types.html#types-for-tooling)
can help detect and prevent bugs that you might not notice in plain JavaScript.

## Get started

[DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped) is an open
source project that maintains a repository of type
[declaration files](https://www.typescriptlang.org/docs/handbook/declaration-files/introduction.html)
for many packages, including the IMA SDK library. You can install the IMA types
with [npm](https://docs.npmjs.com/about-npm) from the
[@types/google_interactive_media_ads_types](https://www.npmjs.com/package/@types/google_interactive_media_ads_types)
package.

    npm install --save-dev @types/google_interactive_media_ads_types

After installation, you have access to all of the types exposed by the
[`google.ima`](https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/reference/ts)
object in your own code. You can also take advantage of code completion and
content assist for IMA methods and properties in source code editors that have
those features, for example, [Visual Studio Code](https://code.visualstudio.com/docs/languages/typescript).