Object destructuring You can also destructure objects: let o = {
Public by default In our examples, we’ve been able to freely access the members that we declared throughout our programs. If you’re familiar
Additional module resolution flags A project source layout sometimes does not match that of the output. Usually a set of build steps result
Module Augmentation Although JavaScript modules do not support merging, you can patch existing objects by importing and then updating them.
String Literal Types String literal types allow you to specify the exact value a string must have. In practice string literal types combine
Decorator Factories If we want to customize how a decorator is applied to a declaration, we can write a decorator factory. A Decorator Factory
// Type definitions for [~THE LIBRARY NAME~] [~OPTIONAL VERSION NUMBER~] // Project: [~THE PROJECT NAME~] // Definitions by: [~YOUR
Publish to npm The Publishing section explains how to publish
Null- and undefined-aware types TypeScript has two special types, Null and Undefined, that have the values null and undefined
Using Namespaces Namespaces are simply named JavaScript objects in the global namespace. This makes namespaces a very simple construct to use
Page 5 of 29