"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});

exports["default"] = function (action, condition) {
  function wrap(fn) {
    return new Promise(function (resolve) {
      resolve(fn());
    });
  }

  return wrap(function loop() {
    return wrap(action).then(function (result) {
      if (condition(result)) {
        return loop();
      }
    });
  });
};

module.exports = exports["default"];