retryLoop

suspend fun retryLoop(delayConfig: Flow<RetryFlowDelayConfig> = flowOf(RetryFlowDelayConfig()), onError: suspend (error: Throwable, delay: Duration) -> Unit = { _, _ -> }, block: suspend () -> Unit)
suspend fun retryLoop(scheduleBase: Duration = RetryFlowDelayConfig.default.scheduleBase, scheduleFactor: Double = RetryFlowDelayConfig.default.scheduleFactor, scheduleLimit: Duration = RetryFlowDelayConfig.default.scheduleLimit, scheduleJitter: ClosedRange<Double> = RetryFlowDelayConfig.default.scheduleJitter, onError: suspend (error: Throwable, delay: Duration) -> Unit = { _, _ -> }, block: suspend () -> Unit)