Instruction: Provide examples to highlight when and why you would use one over the other.
Context: This question assesses the candidate's deep understanding of TypeScript's type system, particularly the nuances and appropriate use-cases of interfaces and type aliases.