API reference › @evolu/common › Schedule › 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"),
);