TypeScript menggunakan structured typing ("duck typing"): dua tipe kompatibel jika memiliki bentuk yang sama, terlepas dari nama atau di mana mereka dideklarasikan. Ini berbeda dengan nominal typing (Java, C#) di mana kompatibilitas bergantung pada nama tipe yang dideklarasikan.
{ : ; : ; }
() { .(p., p.); }
obj = { : , : , : };
(obj);
