await

suspend fun await(): SendOutcome(source)

Suspend until this send reaches a terminal state (Acked, Delivered, or Failed).

Returns immediately if already in a terminal state.

Disconnect behaviour: if the engine disconnects (transport drop, RadioClient.disconnect, or host scope cancel) before a terminal state, state transitions to Failed(Disconnected) and await returns SendOutcome.Failure.

Cancellation: if the caller's coroutine is cancelled while suspended in await, the function rethrows kotlinx.coroutines.CancellationException. The underlying handle is unaffected — the engine continues to track the send and updates state for any other observer. Use cancel to actively withdraw the send.