Resolved socket URL (already validated by normalizeControlSocketUrl).
Shared secret to present as ?token=, or null for an open hub.
Call an embedder method. May return a value or a promise, and may throw —
LuxarApp throws ... called before init() for most methods, and that
error is the honest answer to send back.
Attach an embedder event listener, returning its unsubscribe.
Teardown registry. The client registers its socket and timers here.
OptionalopenSocket factory. Defaults to the platform WebSocket.
OptionalnowClock, injectable so a test can drive the camera throttle.
Everything the client needs from the app around it.