TypeScript
Website:
www.typescriptlang.orgDesigned by: Microsoft, Anders Hejlsberg, Luke Hoban
Developer: Microsoft
First appeared: October 2012, 13 years ago
License: Apache 2.0
Filename extensions: .ts, .tsx, .mts, .cts
TypeScript
TypeScript is a high-level programming language that adds static typing to JavaScript, which it transpiles to. It is developed by Microsoft under the Apache License 2.0.
TypeScript can be used to develop both client-side and server-side JavaScript applications.
History
TypeScript was officially released by Microsoft in October 2012, as version 0.8. TypeScript 0.9, released in 2013, added support for generics. TypeScript 1.0 was released in 2014, adding IDE integration and production stability, and also opened the project to external pull requests. In July 2014, the codebase was moved from CodePlex to GitHub.
On 22 September 2016, TypeScript 2.0 was released, added many features like enforcing null safety.
On 30 July 2018, TypeScript 3.0 was released, which added things like tuples, spread expressions, and generic rest parameters.
On 20 August 2020, TypeScript 4.0 was released, adding features like Custom JSX Factories and Variadic Tuple Types, although no breaking changes were introduced in this version.
On 16 March 2023, TypeScript 5.0 was released, adding support for decorators.
On March 11, 2025, Anders Hejlsberg announced that the TypeScript team was working on a port of the TypeScript compiler written in Go to be released as TypeScript 7.0.
On December 2, 2025, the TypeScript blog announced that TypeScript 6.0 would be the last release written in TypeScript itself, and TypeScript 7.0 would be the first Go-based release.
Syntax
TypeScript's syntax is a superset of JavaScript that adds static typing and a changed syntax for better tooling and error detection.
Syntax Elements
Type Annotations: Variables, parameters, and return values can be explicitly typed using
colons.
Types: Supports string, number, and boolean, as well as any, void, null, and undefined.
Functions: Supports normal declarations, arrow functions (=[GT]), and type inferencing
for parameters and return values.
Arrays and Tuples: Arrays are typed using type[] or Array[LT]type[GT].
Classes: Supports OOP features like constructors, inheritance, and access modifiers.
One major difference from JavaScript is that TypeScript uses static checking, checking errors at compile-time, not runtime.
References
En Wikipedia Org. (2026). Typescript. https://en.wikipedia.org/wiki/TypeScript. Retrieved August 7, 2026.