retryFlow

fun <T> StateFlow<SyncState>.retryFlow(delayConfigWhenSyncRunning: RetryFlowDelayConfig = RetryFlowDelayConfig().copy(scheduleLimit = 10.seconds), delayConfigWhenSyncNotRunning: RetryFlowDelayConfig = RetryFlowDelayConfig(), onError: suspend (error: Throwable, delay: Duration) -> Unit = { _, _ -> }, block: suspend FlowCollector<T>.() -> Unit): Flow<T>