code: function throttleable(duration, options) {
      return function innerDecorator(target, key, descriptor) {
          return {
              configurable: true,
              enumerable: descriptor.enumerable,
              get: function getter() {
                  Object.defineProperty(this, key, {
                      configurable: true,
                      enumerable: descriptor.enumerable,
                      value: throttle(descriptor.value, duration, options)
                  });
                  return this[key];
              }
          };
      };
  }
docs: Throttle decorator
  
  class MyClass {
  throttleable(10)
  myFn() { ... }
  }