API reference@evolu/commonSchedule › whileScheduleOutput

function whileScheduleOutput<Output>(
  predicate: Predicate<Output>,
): <Input>(schedule: Schedule<Output, Input>) => Schedule<Output, Input>;

Defined in: packages/common/src/Schedule.ts:873

Continues while the output satisfies a predicate.

Stops (returns Err(Done<void>)) when Predicate returns false.

Example

// Continue while delay is under 5 seconds
const capped = whileScheduleOutput((delay: Millis) => delay < 5000)(
  exponential("1s"),
);