docs: function (milliseconds) {
              var deferred,
                  timer = setTimeout(function () {
                      deferred.emitSuccess();
                  }, milliseconds),
                  canceller = function () {
                      clearTimeout(timer);
                  };
              deferred = new Deferred(canceller);
              return deferred.getPromise();
          }