The most components that may be open at once.
ReadonlyChanged$Every change, as it happens. Completes at Dispose.
The id of the instance the user is looking at, or null when nothing is open.
The open components, in the order they were opened.
Opens a component and makes it the active one.
The loaded artifact version.
What the agent passed to seed it with.
Attaches (or detaches, with null) the live handle on a rendered component.
Closes every instance without emitting per-instance changes, and completes Changed$.
The instance showing a version of this artifact, or undefined.
The instance with this id, or undefined.
Records what a component just reported. Returns false for an unknown instance.
Closes an instance; the previous one in open order becomes active. Returns false when there is no such instance.
Makes an instance the active one (or null for none). Returns false for an unknown id.
Updates the instance cap (the configuration is read after the engine is created). Open instances above a lowered cap stay open.
Shows another version in an existing instance. The instance id, its inputs and its place in the open order are kept; only the artifact version (and what is derived from its spec) changes, and the old handle is dropped (the surface re-attaches one once the new version has initialized).
The set of open components.