OptionalcreateFactory for commitInsert — invoked at the end of an insert drag.
Consumers own id generation and any palette/payload fields. Returning
null aborts the insert. When omitted, commitInsert returns null.
OptionalfromMerge a new pose back into an object. Default: shallow spread.
OptionalgetOptional children lookup. Default omits the method.
OptionalgetOptional parent lookup. Default returns null.
OptionalintersectsTight intersection test against a pose. Default: AABB-vs-AABB using
poseBounds. Override for non-rect poses (e.g. polygons via
pathPoseDescriptor.intersectsRect).
OptionalnextFactory for fresh node ids in commitPaste. Default: crypto.randomUUID()
when available, otherwise a monotonic paste-<n> counter. Override
when consumers want stable id schemes (e.g. clip-${n++}).
OptionalposeProject a pose to an AABB for hitTestArea. Default: identity (works
when TPose carries top-level x/y/width/height).
Live ref to the current array.
OptionalselectionLive ref to the current selection. Default: empty array.
Functional setter (typically the second value from useState).
OptionalsetOptional reparent mutator. Default is a noop.
OptionalsetSelection setter. Default: noop.
Project an object to its pose. Required.
OptionaltranslateTranslate a pose by (dx, dy). Default: shallow-spread { x, y },
which matches the canonical axis-aligned rect pose. Override for
non-rect poses whose translation isn't a top-level x/y bump.
Configuration for
arrayAdapter.