We have learned that decorators can be used to modify and extend the behavior of a class's methods or properties. While this is a very good way to get to understand decorator in depth, it is not recommended to use a decorator to modify and extend the behavior of a class. Instead, we should try to use decorators to add metadata to the class being decorated. The metadata can then be consumed by other tools.
decorator mutation. You can learn more about the status of the decorator mutation proposal at https://github.com/Microsoft/TypeScript/issues/4881 ...