package it.tdlight.reactiveapi.rsocket; import io.rsocket.Payload; import java.util.concurrent.CompletableFuture; import reactor.core.publisher.Flux; sealed interface PendingEventsToProduce { record ServerPendingEventsToProduce(Flux events, CompletableFuture initCf, CompletableFuture doneCf) implements PendingEventsToProduce {} record ClientPendingEventsToProduce(CompletableFuture doneCf, CompletableFuture> fluxCf, CompletableFuture initCf) implements PendingEventsToProduce {} }