TypeScript has a type for each of JavaScript's seven primitives, the values that are not objects:
string for text.
number for numeric values, integers and floats alike.
boolean for true and false.
null for an intentional absence of a value.
undefined for a value that was never assigned.
symbol for unique identifiers.
bigint for integers too large for number.
TypeScript also adds special types that are not primitives. void marks a function that returns nothing, and never marks a value that never occurs. any turns off type checking, and unknown is its type-safe alternative.
Write the lowercase names, because String and Number refer to wrapper objects.
Rewriting in plainer words…
This answer doesn't lend itself to a diagram - it reads best . No credits were charged.