Los decoradores ahora están en la etapa 3. https://github.com/tc39/proposal-decorators
Uso "objetivo" en la implementación heredada para hacer muchas cosas. Pasé mucho del fin de semana leyendo sobre esta propuesta actual, y parece bastante decidido a no permitir el acceso a nada más que a la cosa que se está decorando. Eso significa que el "objetivo" (como la clase) no está disponible para nada más que los decoradores de clase. Incluso las funciones pasadas a addInitializer no reciben la clase como argumento.
¿Estoy entendiendo esto bien? Por ejemplo, no hay forma de decorar un campo que pueda registrar algo como "Class Foo has field Bar" al inicio del programa.