import * as tsplus_module_1 from "@effect/core/io/Schedule/operations/check";
/**
 * Returns a new schedule that continues for as long the specified predicate
 * on the input evaluates to true.
 *
 * @tsplus fluent ets/Schedule whileInput
 * @tsplus fluent ets/Schedule/WithState whileInput
 */

export function whileInput_(self, f) {
  return tsplus_module_1.check_(self, (input, _) => f(input));
}
/**
 * Returns a new schedule that continues for as long the specified predicate
 * on the input evaluates to true.
 *
 * @tsplus static ets/Schedule/Aspects whileInput
 */

export const whileInput = f => self => whileInput_(self, f);
//# sourceMappingURL=whileInput.mjs.map