Decorators, an upcoming ECMAScript feature, allow for customising classes and their members in a reusable way, Microsoft noted in a blog post announcing the release.
Decorators can be used on methods, properties, getters, setters, and auto-accessors. Classes can be decorated for subclassing and registration. While TypeScript previously supported experimental decorators, these were modelled on a much older version of the decorators proposal.
Also in TypeScript 5.0, developers now can add a
const modifier to a type parameter declaration to cause
const-like inferences to be the default. The update also now allows the
extends field to take multiple entries, and it makes all enums union enums by creating a unique type for each computed member. This means all enums can be narrowed and have their members referenced as types.
The TypeScript 5.0 beta can be accessed through NuGet or by running the following command:
npm install typescript@beta
Also in TypeScript 5.0:
- Better support is offered for ESM (ECMAScript Module) projects in Node and bundlers.
–-verbatimModuleSyntaxcapability simplifies imports and exports, keeping imports or exports without a
typemodifier while dropping anything using the
- A new JSDoc tag,
- Correctness changes and deprecations are offered for less-used flags.
- TypeScript now targets ECMAScript 2018. For Node users, this means a minimum version requirement of at least Node.js 10.
The TypeScript 5.0 beta follows the November release of TypeScript 4.9, which featured a
satisfies operator to catch errors. TypeScript turned 10 years old in October 2022.