Type annotations are an optional feature, which allows you to check and express your intent in the programs you write. Let's create a simple area() function in a new TypeScript file, called type.ts. Next, change the script source in index.html to type.js and run the TypeScript compiler with tsc type.ts. Refresh the page in the browser. The type annotations are expressed as part of the function parameters, they indicate what types of values you can pass to the function. For example, the shape parameter is designated as a string value, and width and height are numeric values. Type annotations, and other TypeScript features, are enforced only at compile-time. If you pass any other types of values to these parameters, the compiler will give you a compile-time error. This behavior is extremely helpful while building large-scale applications.