Decorator
É uma função que recebe outra função como parâmetro e estende o seu comportamento sem modificá-la explicitamente
Já tem a proposta para JavaScript:
https://github.com/tc39/proposal-decorators
Já está disponível em TypeScript, basta colocar o "@" na frente que já é Decorator:
https://www.typescriptlang.org/docs/handbook/decorators.html