Optional collect?: COptional timeoutBounds the wait, in milliseconds. On expiry the promise resolves with $case: 'timedOut'.
No default, because a panel can stay open for minutes. Without it, an explorer that opens
a panel and then emits no closed leaves the promise pending for the scene's whole life.
Optional until?: StopConditionStops the wait early. The panel closing always stops it regardless.
Channels whose events land in
events. Defaults to none.