Today we’re excited to announce our Release Candidate (RC) of TypeScript 4.7! Between now and the stable release of TypeScript 4.7, we expect no further changes apart from critical bug fixes.
In our beta release, we announced a stable target for our Node ESM support called node12; however, Node.js 12 is no longer under maintenance, so we’ve started the stable target at node16. This should provide newer ES module functionality from Node.js (like pattern trailers) while also defaulting TypeScript to a higher target that supports top-level await.
Since the beta, the resolution-mode syntax is still available for /// <reference types="..." /> directives; however, we received some feedback on import type and wanted to reconsider the needs and design of the feature. In turn, resolution-mode is only available experimentally in import type in nightly versions of TypeScript.
After the beta, we realized that typeof on #private fields has issues with API compatibility. We also found ourselves asking whether typeof this.#somePrivate composes well on something more important: declaration emit. As a result, the feature will not be in TypeScript 4.7.