OptionalaccessibilityOptionalanchorUIWidget.anchor, as [x, y].
OptionaldisabledOptionalenabledNode.enabled; false removes the widget from layout entirely.
OptionalfocusableOptionalgrowOptionalheightOptional ReadonlyidThe node's Node.id, for a node being restored rather than created (§79: "the engine assigns ids only to newly created objects").
Omit it — which is what every ordinary construction does — and the engine assigns the next counter value. Supply one and it is used verbatim and reserved, so no later node can be given the same id (2026-08-06, A-17). Ids are opaque strings: the format does not require them to look like the engine's own.
OptionalinteractiveOptionallabelUIWidget.label — writes accessibility.label. Applied after
UIWidgetOptions.accessibility so an explicit record still wins on
every other field, and a lone label does not require building one.
OptionalmarginOptionalmaxOptionalmaxOptionalminOptionalminOptionalnameOptionalnaturalImageWidget.naturalHeight. Default 0.
OptionalnaturalImageWidget.naturalWidth. Default 0.
OptionaloffsetUIWidget.offset, as [x, y].
OptionalpaddingOptionalpivotUIWidget.pivot, as [x, y].
OptionalroleUIWidget.role — writes accessibility.role. Same merge rule as
UIWidgetOptions.label.
OptionalsourceImageWidget.source. Default null.
OptionalvisibleOptionalwidth
Construction options for an ImageWidget.