OptionalcanOptionaldispatchOptional store-mutating dispatch path for affordances that change
per-child placement (e.g. resize edges) rather than container state.
Called by the React layer's useContainerLayout BEFORE reduce, so
the strategy can choose to handle a given affordance here, in reduce,
or in both.
OptionalgetOptional fast-path preview. When defined and returns non-null, the host
uses this instead of calling .layout({ preview }). Useful when preview
placements are cheap to compute directly (e.g. grid cells given an index).
Return null to delegate to the canonical .layout() path.
OptionalinitialOptionalpreview?: LayoutPreviewWhen set, the strategy should lay out as if preview.insertId were
inserted at preview.insertIndex (or at the cursor when index is
undefined). The strategy MAY ignore this and return the regular
layout — the host falls back gracefully. When honored, set
result.isPreview = true.
Optionalreduce
Optional hook used by DnD to reject drops the strategy can't lay out. Receives the prospective post-drop items list. Return false to reject. Strategies that don't implement it are treated as accept-all.