Whether a pointer button is held (for capture-loss handling).
Apply a transaction, tracking busy/error state. Returns null on failure.
New entities without a layer go to the active layer.
Like apply, but failures are thrown to the caller (e.g. a form field that
shows the error next to itself) instead of being reported in the state.
Pointer capture lost, window blurred, … — abort any in-progress gesture.
Cancel the running solve (the document stays unchanged).
Clear the reported error.
Stop processing input and remove listeners.
Resolves when all queued input has been processed (tests, scripted input).
Handle a key from a focused editor. Returns true if it was consumed.
Registered tools.
Pointer left the canvas: clear hover and snap feedback.
Register a tool; returns an unregister function. Duplicate IDs throw.
Report an error in the editor state.
Layer for new entities (null = the engine's default layer).
Show or hide the grid (kept in the state for UIs).
Extra overlay markers (e.g. selection grips from the select tool).
Switch tools (the current operation is cancelled).
Model units per typed display unit (e.g. 1000 for metres).
Activate the initial tool once built-in tools are registered.
Wheel zoom at a CSS position.
Whether something can be pasted.