<PackageReference Include="Polly" Version="5.4.0" />

RetryStateWaitAndRetryWithProvider<TResult>

public RetryStateWaitAndRetryWithProvider(int retryCount, Func<int, Context, TimeSpan> sleepDurationProvider, Action<DelegateResult<TResult>, TimeSpan, int, Context> onRetry, Context context)

public RetryStateWaitAndRetryWithProvider(int retryCount, Func<int, Context, TimeSpan> sleepDurationProvider, Func<DelegateResult<TResult>, TimeSpan, int, Context, Task> onRetryAsync, Context context)

public bool CanRetry(DelegateResult<TResult> delegateResult, CancellationToken cancellationToken)

public Task<bool> CanRetryAsync(DelegateResult<TResult> delegateResult, CancellationToken cancellationToken, bool continueOnCapturedContext)