Introduction
Sometimes you want to create a new interface that combines properties from several other interfaces. This helps keep your code organized and reusable.
When you want to create a new type that has all properties from two or more interfaces.
When you want to build complex objects by combining simple interfaces.
When you want to avoid repeating properties in multiple interfaces.
When you want to clearly show that an object follows multiple contracts or shapes.