reactor-core/src/main/java/reactor/core/publisher/Flux.java
public final <U, V> Flux<T> timeout(Publisher<U> firstTimeout,
			Function<? super T, ? extends Publisher<V>> nextTimeoutFactory) {
		return timeout(firstTimeout, nextTimeoutFactory, "first signal from a Publisher");
	}
public final <U, V> Flux<T> timeout(Publisher<U> firstTimeout,
			Function<? super T, ? extends Publisher<V>> nextTimeoutFactory) {
		return timeout(firstTimeout, nextTimeoutFactory, "first signal from a Publisher");
	}
Signal a {@link TimeoutException} in case the first item from this {@link Flux} has
not been emitted before the {@code firstTimeout} {@link Publisher} emits, and whenever
each subsequent elements is not emitted before a {@link Publisher} generated from
the latest element signals.

<p>
<img class="marble" src="doc-files/marbles/timeoutPublisherFunctionForFlux.svg" alt="">

@param firstTimeout the timeout {@link Publisher} that must not emit before the first signal from this {@link Flux}
@param nextTimeoutFactory the timeout {@link Publisher} factory for each next item

@param <U> the type of the elements of the first timeout Publisher
@param <V> the type of the elements of the subsequent timeout Publishers

@return a {@link Flux} that can time out if each element does not come before
a signal from a per-item companion {@link Publisher}