OptionalcallbacksCallbacks to handle various graph events and render hooks.
OptionalisEnable whether the graph is directed or not
OptionallayoutLayout-specific configuration (e.g. tree, radial, etc.)
OptionalpivotAbsolute ceiling on how many candidates one pivot fetch may stage. A provider
that returns more is refused, not truncated.
OptionalpivotPut a pvt-node-unsaved class on every node a pivot run created and has not
written back yet, so a stylesheet can mark them.
A class rather than a badge: the rim rations four corners and only two on the container nodes an enrichment produces, and a marker that pushes a declared potential off the rim costs more than it says. Off by default — the count in the Pivot panel is the surface that always tells the truth about this.
OptionalpivotHow many candidates a one-click pivot may land on the canvas without offering triage first — a context-menu pivot row, or a rim badge with a single pivot to offer. Only candidates that are new count: what dedup will skip does not, and an edge between two nodes already on screen does.
It decides nothing for a pivot that declared PivotDefinition.autoIngest either way, and nothing at all for a run started from the Pivot panel — going there to read the counts is never answered by having the results land instead.
0 sends every one-click run with something new in it to triage.
OptionalpivotWhat the library puts on a node's rim for its pivots.
'per-pivot' — one badge per pivot that declared a potential for this node,
each opening that pivot. What a handful of providers wants.'summary' — one badge for all of them, whatever the provider count. It
shows the total declared through Node.setPotential with no pivot id,
or, failing that, how many pivots apply to the node. Clicking it opens the
Pivot panel on that node — unless exactly one pivot applies and it has nothing
to narrow, which runs straight away.'off' — nothing. NodeStyle.badges still draws.A node has four rim corners and only two once it has children, so 'per-pivot'
stops being readable somewhere around a dozen providers. 'summary' is the
answer at a hundred.
OptionalpivotsPivots to register before anything is built, so the UI's first paint already knows whether there are any. See Graph.pivots for the imperative door and PluginContext.addPivot for the plugin one.
OptionalpluginsPlugins to install after the UI is built. Each is handed a PluginContext and can add UI elements, keybindings and lifecycle hooks. See Graph.use for imperative registration.
OptionalrenderOptions for the rendering engine
OptionalsimulationOptions for the simultion engine
OptionalUIOptions for the UI
Remarks
This interface should be used as the entry point when configuring the graph.