To illustrate how we can use interfaces and classes in a large TypeScript project, we will have a quick look at a very well-known object-oriented design pattern—the Factory Design Pattern.
As an example, let's assume that our business analyst gives us the following requirements:
You are required to categorize people, given their date of birth, and indicate with a
false flag whether they are of a legal age to sign a contract. A person is deemed to be an infant if they are less than 2 years old. Infants cannot sign contracts. A person is deemed to be a child if they are less than 18 years old. Children cannot sign contracts either. A person is deemed to be an adult if they are more than 18 years ...