How Type Aliases work in TypeScript – Explained with Code Examples