semiotic 3.7.4 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (517) hide show
  1. package/CLAUDE.md +60 -15
  2. package/README.md +135 -24
  3. package/agent-skill/semiotic-charts/SKILL.md +146 -0
  4. package/ai/cli.js +133 -45
  5. package/ai/componentMetadata.cjs +6 -1
  6. package/ai/dist/mcp-server.js +1651 -154
  7. package/ai/examples.md +174 -0
  8. package/ai/schema.json +2934 -517
  9. package/ai/surface-manifest.json +200 -0
  10. package/ai/system-prompt.md +19 -3
  11. package/dist/components/Annotation.d.ts +4 -0
  12. package/dist/components/CategoryColors.d.ts +1 -1
  13. package/dist/components/ChartContainer.d.ts +91 -0
  14. package/dist/components/ChartGrid.d.ts +11 -1
  15. package/dist/components/CircularBrush.d.ts +61 -0
  16. package/dist/components/ContextLayout.d.ts +5 -1
  17. package/dist/components/DataSummaryContext.d.ts +1 -0
  18. package/dist/components/DirectManipulationControl.d.ts +63 -0
  19. package/dist/components/LinkedCharts.d.ts +3 -1
  20. package/dist/components/MobileAnnotationCalloutList.d.ts +13 -0
  21. package/dist/components/MobileChartContainer.d.ts +51 -0
  22. package/dist/components/MobileStandardControls.d.ts +68 -0
  23. package/dist/components/SmallMultipleChart.d.ts +84 -0
  24. package/dist/components/Tooltip/FlippingTooltip.d.ts +21 -0
  25. package/dist/components/ai/ChartRecipe.d.ts +16 -0
  26. package/dist/components/ai/IntentMark.d.ts +15 -0
  27. package/dist/components/ai/chartCapabilities.d.ts +8 -1
  28. package/dist/components/ai/chartCapabilityTypes.d.ts +42 -1
  29. package/dist/components/ai/chartClinic.d.ts +91 -0
  30. package/dist/components/ai/chartRecipeRegistry.d.ts +14 -0
  31. package/dist/components/ai/chartRecipes.d.ts +278 -0
  32. package/dist/components/ai/dataPitfallsBridge.d.ts +203 -0
  33. package/dist/components/ai/dataQualityBridge.d.ts +201 -0
  34. package/dist/components/ai/describeChart.d.ts +9 -0
  35. package/dist/components/ai/describeRecipeChart.d.ts +16 -0
  36. package/dist/components/ai/generativeChart.d.ts +170 -0
  37. package/dist/components/ai/intentManifest.d.ts +62 -0
  38. package/dist/components/ai/navigationTree.d.ts +3 -0
  39. package/dist/components/ai/observedSceneAudit.d.ts +72 -0
  40. package/dist/components/ai/readerGrounding.d.ts +83 -0
  41. package/dist/components/ai/recipeCapability.d.ts +8 -0
  42. package/dist/components/ai/recipeNavigation.d.ts +13 -0
  43. package/dist/components/ai/recipeSemantics.d.ts +11 -0
  44. package/dist/components/ai/repairChartConfig.d.ts +9 -0
  45. package/dist/components/ai/suggestCharts.d.ts +11 -1
  46. package/dist/components/charts/custom/GeoCustomChart.d.ts +48 -0
  47. package/dist/components/charts/custom/NetworkCustomChart.d.ts +22 -3
  48. package/dist/components/charts/custom/OrdinalCustomChart.d.ts +8 -2
  49. package/dist/components/charts/custom/XYCustomChart.d.ts +11 -2
  50. package/dist/components/charts/geo/DistanceCartogram.d.ts +1 -1
  51. package/dist/components/charts/geo/FlowMap.d.ts +1 -1
  52. package/dist/components/charts/geo/ProportionalSymbolMap.d.ts +1 -1
  53. package/dist/components/charts/geo/index.d.ts +2 -0
  54. package/dist/components/charts/index.d.ts +29 -1
  55. package/dist/components/charts/network/ChordDiagram.d.ts +1 -1
  56. package/dist/components/charts/network/CirclePack.d.ts +1 -1
  57. package/dist/components/charts/network/ForceDirectedGraph.d.ts +15 -5
  58. package/dist/components/charts/network/OrbitDiagram.d.ts +1 -1
  59. package/dist/components/charts/network/ProcessSankey.d.ts +1 -1
  60. package/dist/components/charts/network/SankeyDiagram.d.ts +1 -1
  61. package/dist/components/charts/network/TreeDiagram.d.ts +1 -1
  62. package/dist/components/charts/network/Treemap.d.ts +1 -1
  63. package/dist/components/charts/network/useForceLayout.d.ts +17 -0
  64. package/dist/components/charts/ordinal/BarChart.d.ts +1 -1
  65. package/dist/components/charts/ordinal/BoxPlot.d.ts +1 -1
  66. package/dist/components/charts/ordinal/DonutChart.d.ts +1 -1
  67. package/dist/components/charts/ordinal/DotPlot.d.ts +1 -1
  68. package/dist/components/charts/ordinal/FunnelChart.d.ts +1 -1
  69. package/dist/components/charts/ordinal/GroupedBarChart.d.ts +1 -1
  70. package/dist/components/charts/ordinal/Histogram.d.ts +1 -1
  71. package/dist/components/charts/ordinal/PieChart.d.ts +1 -1
  72. package/dist/components/charts/ordinal/RidgelinePlot.d.ts +1 -1
  73. package/dist/components/charts/ordinal/StackedBarChart.d.ts +1 -1
  74. package/dist/components/charts/ordinal/SwarmPlot.d.ts +8 -1
  75. package/dist/components/charts/ordinal/SwimlaneChart.d.ts +1 -1
  76. package/dist/components/charts/ordinal/ViolinPlot.d.ts +1 -1
  77. package/dist/components/charts/physics/ChainReactionChart.d.ts +9 -0
  78. package/dist/components/charts/physics/CollisionSwarmChart.capability.d.ts +2 -0
  79. package/dist/components/charts/physics/CollisionSwarmChart.d.ts +47 -0
  80. package/dist/components/charts/physics/EventDropChart.capability.d.ts +2 -0
  81. package/dist/components/charts/physics/EventDropChart.d.ts +53 -0
  82. package/dist/components/charts/physics/GaltonBoardChart.capability.d.ts +2 -0
  83. package/dist/components/charts/physics/GaltonBoardChart.d.ts +66 -0
  84. package/dist/components/charts/physics/GauntletChart.capability.d.ts +2 -0
  85. package/dist/components/charts/physics/GauntletChart.d.ts +73 -0
  86. package/dist/components/charts/physics/PhysicalFlowChart.capability.d.ts +2 -0
  87. package/dist/components/charts/physics/PhysicalFlowChart.d.ts +63 -0
  88. package/dist/components/charts/physics/PhysicsCustomChart.d.ts +120 -0
  89. package/dist/components/charts/physics/PhysicsPileChart.capability.d.ts +2 -0
  90. package/dist/components/charts/physics/PhysicsPileChart.d.ts +53 -0
  91. package/dist/components/charts/physics/ProcessFlowChart.capability.d.ts +2 -0
  92. package/dist/components/charts/physics/ProcessFlowChart.d.ts +96 -0
  93. package/dist/components/charts/physics/chainReactionOverlay.d.ts +22 -0
  94. package/dist/components/charts/physics/chainReactionRuntime.d.ts +37 -0
  95. package/dist/components/charts/physics/chainReactionTypes.d.ts +97 -0
  96. package/dist/components/charts/physics/collisionSwarmPhysics.d.ts +27 -0
  97. package/dist/components/charts/physics/dependencyMachine.d.ts +188 -0
  98. package/dist/components/charts/physics/eventDropPhysics.d.ts +64 -0
  99. package/dist/components/charts/physics/galtonBoardPhysics.d.ts +28 -0
  100. package/dist/components/charts/physics/gauntletChartProps.d.ts +67 -0
  101. package/dist/components/charts/physics/gauntletChrome.d.ts +33 -0
  102. package/dist/components/charts/physics/gauntletController.d.ts +73 -0
  103. package/dist/components/charts/physics/gauntletEffects.d.ts +36 -0
  104. package/dist/components/charts/physics/gauntletPhysics.d.ts +71 -0
  105. package/dist/components/charts/physics/gauntletRuntime.d.ts +42 -0
  106. package/dist/components/charts/physics/gauntletTypes.d.ts +213 -0
  107. package/dist/components/charts/physics/physicalFlowPhysics.d.ts +57 -0
  108. package/dist/components/charts/physics/physicsChartShared.d.ts +41 -0
  109. package/dist/components/charts/physics/physicsChartUtils.d.ts +18 -0
  110. package/dist/components/charts/physics/physicsEncoding.d.ts +142 -0
  111. package/dist/components/charts/physics/physicsHocHandle.d.ts +53 -0
  112. package/dist/components/charts/physics/physicsHocUtils.d.ts +128 -0
  113. package/dist/components/charts/physics/physicsPilePhysics.d.ts +41 -0
  114. package/dist/components/charts/physics/physicsProcessPrimitives.d.ts +38 -0
  115. package/dist/components/charts/physics/processFlowPhysics.d.ts +97 -0
  116. package/dist/components/charts/realtime/RealtimeHeatmap.d.ts +9 -1
  117. package/dist/components/charts/realtime/RealtimeHistogram.d.ts +9 -1
  118. package/dist/components/charts/realtime/RealtimeLineChart.d.ts +30 -1
  119. package/dist/components/charts/realtime/RealtimeSwarmChart.d.ts +16 -2
  120. package/dist/components/charts/realtime/RealtimeWaterfallChart.d.ts +9 -1
  121. package/dist/components/charts/realtime/aggregate.d.ts +51 -0
  122. package/dist/components/charts/realtime/eventTime.d.ts +26 -0
  123. package/dist/components/charts/shared/auditMobileVisualization.d.ts +91 -0
  124. package/dist/components/charts/shared/chartDefinitionPilot.d.ts +145 -0
  125. package/dist/components/charts/shared/chartFamilySets.d.ts +20 -0
  126. package/dist/components/charts/shared/chartSpecCore.d.ts +165 -0
  127. package/dist/components/charts/shared/chartSpecs.d.ts +8 -127
  128. package/dist/components/charts/shared/chartSpecsGeo.d.ts +2 -0
  129. package/dist/components/charts/shared/chartSpecsNetwork.d.ts +2 -0
  130. package/dist/components/charts/shared/chartSpecsOrdinal.d.ts +2 -0
  131. package/dist/components/charts/shared/chartSpecsPhysics.d.ts +2 -0
  132. package/dist/components/charts/shared/chartSpecsRealtime.d.ts +2 -0
  133. package/dist/components/charts/shared/chartSpecsValue.d.ts +2 -0
  134. package/dist/components/charts/shared/chartSpecsXY.d.ts +2 -0
  135. package/dist/components/charts/shared/colorContrast.d.ts +3 -0
  136. package/dist/components/charts/shared/colorPalettes.d.ts +2 -0
  137. package/dist/components/charts/shared/colorUtils.d.ts +17 -13
  138. package/dist/components/charts/shared/diagnoseAnnotationChecks.d.ts +4 -0
  139. package/dist/components/charts/shared/diagnoseConfig.d.ts +9 -14
  140. package/dist/components/charts/shared/diagnoseMisleadingChecks.d.ts +9 -0
  141. package/dist/components/charts/shared/diagnosePhysicsChecks.d.ts +3 -0
  142. package/dist/components/charts/shared/diagnoseTypes.d.ts +10 -0
  143. package/dist/components/charts/shared/hooks.d.ts +28 -5
  144. package/dist/components/charts/shared/minMax.d.ts +3 -0
  145. package/dist/components/charts/shared/motionEncoding.d.ts +145 -0
  146. package/dist/components/charts/shared/radialGeometry.d.ts +0 -18
  147. package/dist/components/charts/shared/responsiveRules.d.ts +56 -0
  148. package/dist/components/charts/shared/smartTooltip.d.ts +27 -0
  149. package/dist/components/charts/shared/statisticalOverlays.d.ts +35 -0
  150. package/dist/components/charts/shared/streamPropsHelpers.d.ts +12 -2
  151. package/dist/components/charts/shared/temporalStrings.d.ts +7 -0
  152. package/dist/components/charts/shared/tooltipUtils.d.ts +2 -0
  153. package/dist/components/charts/shared/types.d.ts +49 -1
  154. package/dist/components/charts/shared/useChartSetup.d.ts +10 -3
  155. package/dist/components/charts/shared/useCustomChartSetup.d.ts +15 -6
  156. package/dist/components/charts/shared/useNetworkChartSetup.d.ts +6 -2
  157. package/dist/components/charts/shared/useOrdinalPieceStyle.d.ts +1 -1
  158. package/dist/components/charts/shared/useStreamingLegend.d.ts +1 -1
  159. package/dist/components/charts/shared/useSyncedPushData.d.ts +49 -0
  160. package/dist/components/charts/shared/validateChartData.d.ts +1 -1
  161. package/dist/components/charts/shared/validationMap.d.ts +0 -11
  162. package/dist/components/charts/xy/AreaChart.d.ts +1 -1
  163. package/dist/components/charts/xy/BubbleChart.d.ts +1 -1
  164. package/dist/components/charts/xy/LineChart.d.ts +1 -1
  165. package/dist/components/charts/xy/MinimapChart.d.ts +1 -1
  166. package/dist/components/charts/xy/MultiAxisLineChart.d.ts +2 -2
  167. package/dist/components/charts/xy/QuadrantChart.d.ts +1 -1
  168. package/dist/components/charts/xy/Scatterplot.d.ts +10 -1
  169. package/dist/components/charts/xy/ScatterplotMatrix.d.ts +11 -1
  170. package/dist/components/charts/xy/StackedAreaChart.d.ts +9 -4
  171. package/dist/components/controls/controlAudit.d.ts +24 -0
  172. package/dist/components/controls/controlContract.d.ts +57 -0
  173. package/dist/components/data/fromArrow.d.ts +54 -0
  174. package/dist/components/data/fromFlintChart.d.ts +74 -0
  175. package/dist/components/data/fromMermaid.d.ts +47 -0
  176. package/dist/components/data/fromObservablePlot.d.ts +69 -0
  177. package/dist/components/data/fromVegaLite.d.ts +27 -0
  178. package/dist/components/data/portability/index.d.ts +17 -0
  179. package/dist/components/data/portability/result.d.ts +52 -0
  180. package/dist/components/data/portability/spec.d.ts +160 -0
  181. package/dist/components/data/portability/vegaLite.d.ts +80 -0
  182. package/dist/components/export/chartConfig.d.ts +11 -0
  183. package/dist/components/realtime/ReorderBuffer.d.ts +54 -0
  184. package/dist/components/realtime/RunningStats.d.ts +66 -0
  185. package/dist/components/realtime/WindowAccumulator.d.ts +105 -0
  186. package/dist/components/realtime/parseWindowDuration.d.ts +12 -0
  187. package/dist/components/realtime/types.d.ts +11 -0
  188. package/dist/components/recipes/annotationLayout.d.ts +29 -0
  189. package/dist/components/recipes/axisFixedForce.d.ts +119 -0
  190. package/dist/components/recipes/boba.d.ts +23 -0
  191. package/dist/components/recipes/customTooltip.d.ts +31 -0
  192. package/dist/components/recipes/cyclical.d.ts +39 -0
  193. package/dist/components/recipes/edgeRouter.d.ts +103 -0
  194. package/dist/components/recipes/forceLayout.d.ts +48 -0
  195. package/dist/components/recipes/forceLayoutAsync.d.ts +17 -0
  196. package/dist/components/recipes/gofishBobaHandwritten.d.ts +3 -0
  197. package/dist/components/recipes/gofishDisplayListFixtures.generated.d.ts +37 -0
  198. package/dist/components/recipes/gofishIR.d.ts +215 -0
  199. package/dist/components/recipes/gofishIRExamples.d.ts +38 -0
  200. package/dist/components/recipes/intervalLanes.d.ts +87 -0
  201. package/dist/components/recipes/intervals.d.ts +80 -0
  202. package/dist/components/recipes/isometricLandmarks.d.ts +88 -0
  203. package/dist/components/recipes/isotypeGlyphs.d.ts +17 -0
  204. package/dist/components/recipes/mermaidDag.d.ts +44 -0
  205. package/dist/components/recipes/mobileAnnotationStrategy.d.ts +48 -0
  206. package/dist/components/recipes/mobileChartFamilyRecipes.d.ts +59 -0
  207. package/dist/components/recipes/networkAnalysis.d.ts +102 -0
  208. package/dist/components/recipes/networkLayouts.d.ts +83 -0
  209. package/dist/components/recipes/packedClusterMatrix.d.ts +166 -0
  210. package/dist/components/recipes/physics.d.ts +122 -0
  211. package/dist/components/recipes/physicsReference.d.ts +102 -0
  212. package/dist/components/recipes/processAggregates.d.ts +32 -0
  213. package/dist/components/recipes/processChrome.d.ts +67 -0
  214. package/dist/components/recipes/processJourney.d.ts +54 -0
  215. package/dist/components/recipes/processPhysics.d.ts +300 -0
  216. package/dist/components/recipes/processVolumeGeometry.d.ts +28 -0
  217. package/dist/components/recipes/radialCoords.d.ts +69 -0
  218. package/dist/components/recipes/random.d.ts +2 -0
  219. package/dist/components/recipes/recipeChrome.d.ts +191 -0
  220. package/dist/components/recipes/recipeGlyph.d.ts +42 -0
  221. package/dist/components/recipes/recipeLegend.d.ts +109 -0
  222. package/dist/components/recipes/recipeUtils.d.ts +157 -0
  223. package/dist/components/recipes/runs.d.ts +59 -0
  224. package/dist/components/recipes/tokenEncoding.d.ts +157 -0
  225. package/dist/components/recipes/tokenLayer.d.ts +79 -0
  226. package/dist/components/recipes/unitize.d.ts +108 -0
  227. package/dist/components/recipes/vector.d.ts +28 -0
  228. package/dist/components/recipes/waffle.d.ts +43 -0
  229. package/dist/components/semiotic-ai-core.d.ts +47 -0
  230. package/dist/components/semiotic-ai.d.ts +52 -4
  231. package/dist/components/semiotic-controls.d.ts +18 -0
  232. package/dist/components/semiotic-data.d.ts +2 -0
  233. package/dist/components/semiotic-experimental.d.ts +49 -0
  234. package/dist/components/semiotic-geo.d.ts +11 -0
  235. package/dist/components/semiotic-network.d.ts +14 -1
  236. package/dist/components/semiotic-ordinal.d.ts +10 -0
  237. package/dist/components/semiotic-physics-matter.d.ts +10 -0
  238. package/dist/components/semiotic-physics-rapier.d.ts +9 -0
  239. package/dist/components/semiotic-physics.d.ts +56 -0
  240. package/dist/components/semiotic-realtime-core.d.ts +34 -0
  241. package/dist/components/semiotic-realtime-react.d.ts +10 -0
  242. package/dist/components/semiotic-realtime.d.ts +4 -22
  243. package/dist/components/semiotic-recipes-core.d.ts +92 -0
  244. package/dist/components/semiotic-recipes-react.d.ts +7 -0
  245. package/dist/components/semiotic-recipes.d.ts +4 -26
  246. package/dist/components/semiotic-server-edge.d.ts +8 -0
  247. package/dist/components/semiotic-server-node.d.ts +5 -0
  248. package/dist/components/semiotic-server.d.ts +2 -2
  249. package/dist/components/semiotic-themes-core.d.ts +53 -0
  250. package/dist/components/semiotic-themes-react.d.ts +4 -0
  251. package/dist/components/semiotic-themes.d.ts +6 -74
  252. package/dist/components/semiotic-utils-core.d.ts +46 -0
  253. package/dist/components/semiotic-utils-react.d.ts +5 -0
  254. package/dist/components/semiotic-utils.d.ts +3 -39
  255. package/dist/components/semiotic-xy.d.ts +10 -0
  256. package/dist/components/semiotic.d.ts +39 -7
  257. package/dist/components/server/animatedGif.d.ts +36 -0
  258. package/dist/components/server/renderEvidence.d.ts +1 -1
  259. package/dist/components/server/renderToStaticSVG.d.ts +3 -35
  260. package/dist/components/server/serverChartConfigShared.d.ts +17 -0
  261. package/dist/components/server/serverChartConfigs.d.ts +19 -9
  262. package/dist/components/server/serverChartConfigsCustom.d.ts +5 -0
  263. package/dist/components/server/serverChartConfigsGeo.d.ts +9 -0
  264. package/dist/components/server/serverChartConfigsNetwork.d.ts +8 -0
  265. package/dist/components/server/serverChartConfigsOrdinal.d.ts +16 -0
  266. package/dist/components/server/serverChartConfigsPhysics.d.ts +9 -0
  267. package/dist/components/server/serverChartConfigsXY.d.ts +11 -0
  268. package/dist/components/server/staticGeo.d.ts +4 -0
  269. package/dist/components/server/staticLegend.d.ts +1 -1
  270. package/dist/components/server/staticNetwork.d.ts +8 -0
  271. package/dist/components/server/staticOrdinal.d.ts +11 -0
  272. package/dist/components/server/staticPhysics.d.ts +3 -0
  273. package/dist/components/server/staticSVGChrome.d.ts +110 -0
  274. package/dist/components/server/staticXY.d.ts +4 -0
  275. package/dist/components/store/ObservationStore.d.ts +23 -3
  276. package/dist/components/store/SelectionStore.d.ts +1 -1
  277. package/dist/components/store/ThemeStore.d.ts +1 -1
  278. package/dist/components/store/TooltipStore.d.ts +1 -1
  279. package/dist/components/store/createStore.d.ts +1 -1
  280. package/dist/components/store/designTokens.d.ts +15 -0
  281. package/dist/components/store/themeSerialization.d.ts +32 -0
  282. package/dist/components/store/useChartInterrogation.d.ts +9 -0
  283. package/dist/components/stream/AccessibleDataTable.d.ts +3 -13
  284. package/dist/components/stream/FocusRing.d.ts +4 -2
  285. package/dist/components/stream/GeoCanvasHitTester.d.ts +1 -1
  286. package/dist/components/stream/GeoPipelineStore.d.ts +28 -0
  287. package/dist/components/stream/NetworkHtmlMarksLayer.d.ts +44 -0
  288. package/dist/components/stream/NetworkPipelineStore.d.ts +62 -25
  289. package/dist/components/stream/NetworkSVGOverlay.d.ts +15 -0
  290. package/dist/components/stream/OrdinalPipelineStore.d.ts +64 -2
  291. package/dist/components/stream/PipelineStore.d.ts +100 -162
  292. package/dist/components/stream/SceneGraph.d.ts +14 -2
  293. package/dist/components/stream/StreamGeoFrame.d.ts +1 -1
  294. package/dist/components/stream/StreamNetworkFrame.d.ts +1 -1
  295. package/dist/components/stream/StreamOrdinalFrame.d.ts +1 -1
  296. package/dist/components/stream/StreamXYFrame.d.ts +2 -18
  297. package/dist/components/stream/accessibleDataRows.d.ts +33 -0
  298. package/dist/components/stream/accessorUtils.d.ts +23 -10
  299. package/dist/components/stream/brushAccessibility.d.ts +25 -0
  300. package/dist/components/stream/canvasBackground.d.ts +24 -0
  301. package/dist/components/stream/canvasSetup.d.ts +4 -1
  302. package/dist/components/stream/customLayout.d.ts +20 -0
  303. package/dist/components/stream/customLayoutDiagnostics.d.ts +11 -0
  304. package/dist/components/stream/customLayoutFailure.d.ts +33 -0
  305. package/dist/components/stream/customLayoutPalette.d.ts +19 -9
  306. package/dist/components/stream/customLayoutSelection.d.ts +52 -0
  307. package/dist/components/stream/frameThemeColors.d.ts +24 -0
  308. package/dist/components/stream/geoAnnotationAnchors.d.ts +14 -0
  309. package/dist/components/stream/geoCartogram.d.ts +17 -0
  310. package/dist/components/stream/geoCustomLayout.d.ts +59 -0
  311. package/dist/components/stream/geoDefaultTooltip.d.ts +11 -0
  312. package/dist/components/stream/geoFrameHelpers.d.ts +34 -0
  313. package/dist/components/stream/geoPipelineHelpers.d.ts +46 -0
  314. package/dist/components/stream/geoTypes.d.ts +56 -7
  315. package/dist/components/stream/glyphDef.d.ts +98 -0
  316. package/dist/components/stream/hitTarget.d.ts +170 -0
  317. package/dist/components/stream/hoverUtils.d.ts +3 -0
  318. package/dist/components/stream/keyboardNav.d.ts +4 -1
  319. package/dist/components/stream/layouts/forceLayoutPlugin.d.ts +9 -1
  320. package/dist/components/stream/layouts/forceLayoutWorkerClient.d.ts +57 -0
  321. package/dist/components/stream/networkBezier.d.ts +10 -0
  322. package/dist/components/stream/networkColorAccessors.d.ts +49 -0
  323. package/dist/components/stream/networkCustomLayout.d.ts +66 -1
  324. package/dist/components/stream/networkDefaultTooltip.d.ts +10 -0
  325. package/dist/components/stream/networkFrameInteraction.d.ts +37 -0
  326. package/dist/components/stream/networkFramePaint.d.ts +43 -0
  327. package/dist/components/stream/networkPipelineConfig.d.ts +22 -0
  328. package/dist/components/stream/networkPipelineHelpers.d.ts +12 -0
  329. package/dist/components/stream/networkRealtimeEncoding.d.ts +41 -0
  330. package/dist/components/stream/networkTypes.d.ts +104 -5
  331. package/dist/components/stream/ordinalCanvasRenderers.d.ts +7 -0
  332. package/dist/components/stream/ordinalCustomLayout.d.ts +17 -1
  333. package/dist/components/stream/ordinalDataIndex.d.ts +5 -0
  334. package/dist/components/stream/ordinalDefaultTooltip.d.ts +10 -0
  335. package/dist/components/stream/ordinalDomain.d.ts +38 -0
  336. package/dist/components/stream/ordinalPipelineUpdateResults.d.ts +12 -0
  337. package/dist/components/stream/ordinalPulse.d.ts +10 -0
  338. package/dist/components/stream/ordinalPulseResources.d.ts +3 -0
  339. package/dist/components/stream/ordinalSceneBuilders/sceneBuilderMap.d.ts +5 -0
  340. package/dist/components/stream/ordinalSceneBuilders/types.d.ts +2 -0
  341. package/dist/components/stream/ordinalSpatialIndex.d.ts +9 -0
  342. package/dist/components/stream/ordinalTypes.d.ts +56 -8
  343. package/dist/components/stream/paintNeeds.d.ts +31 -0
  344. package/dist/components/stream/physics/CapacityQueueController.d.ts +5 -0
  345. package/dist/components/stream/physics/CapacityQueueTypes.d.ts +134 -0
  346. package/dist/components/stream/physics/MatterPhysicsEngineAdapter.d.ts +42 -0
  347. package/dist/components/stream/physics/PhysicsAccessibility.d.ts +48 -0
  348. package/dist/components/stream/physics/PhysicsAnnotations.d.ts +58 -0
  349. package/dist/components/stream/physics/PhysicsBodyBudget.d.ts +26 -0
  350. package/dist/components/stream/physics/PhysicsBodySpatialIndex.d.ts +10 -0
  351. package/dist/components/stream/physics/PhysicsCanvasTheme.d.ts +26 -0
  352. package/dist/components/stream/physics/PhysicsControllers.d.ts +75 -0
  353. package/dist/components/stream/physics/PhysicsEngineAdapter.d.ts +59 -0
  354. package/dist/components/stream/physics/PhysicsEngineConformance.d.ts +23 -0
  355. package/dist/components/stream/physics/PhysicsEvidence.d.ts +25 -0
  356. package/dist/components/stream/physics/PhysicsKernel.d.ts +207 -0
  357. package/dist/components/stream/physics/PhysicsOptionalEngineAdapters.d.ts +12 -0
  358. package/dist/components/stream/physics/PhysicsPipelineStore.d.ts +84 -0
  359. package/dist/components/stream/physics/PhysicsPipelineTypes.d.ts +181 -0
  360. package/dist/components/stream/physics/PhysicsSVGOverlay.d.ts +72 -0
  361. package/dist/components/stream/physics/PhysicsSediment.d.ts +69 -0
  362. package/dist/components/stream/physics/PhysicsSettledSVG.d.ts +18 -0
  363. package/dist/components/stream/physics/PhysicsSettledScene.d.ts +21 -0
  364. package/dist/components/stream/physics/PhysicsWorkerClient.d.ts +24 -0
  365. package/dist/components/stream/physics/PhysicsWorkerProtocol.d.ts +101 -0
  366. package/dist/components/stream/physics/PhysicsWorkerRuntime.d.ts +5 -0
  367. package/dist/components/stream/physics/RapierPhysicsEngineAdapter.d.ts +18 -0
  368. package/dist/components/stream/physics/ServiceOperationsControllers.d.ts +27 -0
  369. package/dist/components/stream/physics/ServiceOperationsTypes.d.ts +89 -0
  370. package/dist/components/stream/physics/StreamPhysicsFrame.d.ts +6 -0
  371. package/dist/components/stream/physics/StreamPhysicsTypes.d.ts +302 -0
  372. package/dist/components/stream/physics/physicsBodyCanvas.d.ts +27 -0
  373. package/dist/components/stream/physics/physicsPipelineControls.d.ts +4 -0
  374. package/dist/components/stream/physics/physicsPipelineHelpers.d.ts +41 -0
  375. package/dist/components/stream/physics/physicsPipelineObservations.d.ts +14 -0
  376. package/dist/components/stream/physics/physicsPipelineUpdateResults.d.ts +9 -0
  377. package/dist/components/stream/physics/physicsRegionRuntime.d.ts +54 -0
  378. package/dist/components/stream/physics/physicsSemanticUI.d.ts +20 -0
  379. package/dist/components/stream/physics/usePhysicsFrameLifecyclePolicy.d.ts +16 -0
  380. package/dist/components/stream/pipelineBufferUtils.d.ts +26 -0
  381. package/dist/components/stream/pipelineConfig.d.ts +177 -0
  382. package/dist/components/stream/pipelineDecay.d.ts +20 -2
  383. package/dist/components/stream/pipelineDomainResolution.d.ts +62 -0
  384. package/dist/components/stream/pipelineIdentityOps.d.ts +26 -0
  385. package/dist/components/stream/pipelinePulse.d.ts +16 -2
  386. package/dist/components/stream/pipelineRibbons.d.ts +41 -0
  387. package/dist/components/stream/pipelineSpatialIndex.d.ts +12 -0
  388. package/dist/components/stream/pipelineStoreUpdateResults.d.ts +12 -0
  389. package/dist/components/stream/pipelineStyleResolvers.d.ts +46 -0
  390. package/dist/components/stream/pipelineTransitions.d.ts +2 -0
  391. package/dist/components/stream/pipelineUpdateContract.d.ts +62 -0
  392. package/dist/components/stream/pulseFrameRefresh.d.ts +22 -0
  393. package/dist/components/stream/renderers/glyphCanvasRenderer.d.ts +6 -0
  394. package/dist/components/stream/renderers/networkSymbolRenderer.d.ts +2 -0
  395. package/dist/components/stream/renderers/resolveCSSColor.d.ts +6 -0
  396. package/dist/components/stream/renderers/symbolCanvasRenderer.d.ts +2 -0
  397. package/dist/components/stream/sceneRevisionDiagnostics.d.ts +18 -0
  398. package/dist/components/stream/stalenessBands.d.ts +28 -0
  399. package/dist/components/stream/streamStoreSync.d.ts +37 -0
  400. package/dist/components/stream/symbolPath.d.ts +24 -0
  401. package/dist/components/stream/types.d.ts +206 -9
  402. package/dist/components/stream/useFrame.d.ts +21 -2
  403. package/dist/components/stream/useHydration.d.ts +6 -0
  404. package/dist/components/stream/useLegendCategoryEmission.d.ts +5 -0
  405. package/dist/components/stream/useStalenessCheck.d.ts +6 -1
  406. package/dist/components/stream/workerModuleUrl.d.ts +10 -0
  407. package/dist/components/stream/xyAnnotationAnchors.d.ts +13 -0
  408. package/dist/components/stream/xyCanvasRenderers.d.ts +7 -0
  409. package/dist/components/stream/xyCrosshair.d.ts +11 -0
  410. package/dist/components/stream/xyDateTicks.d.ts +9 -0
  411. package/dist/components/stream/xyDefaultTooltip.d.ts +10 -0
  412. package/dist/components/stream/xySceneBuilders/pointScene.d.ts +2 -2
  413. package/dist/components/stream/xySceneBuilders/types.d.ts +9 -4
  414. package/dist/controls.min.js +2 -0
  415. package/dist/controls.module.min.js +2 -0
  416. package/dist/forceLayoutWorker.js +1 -0
  417. package/dist/geo.min.js +1 -1
  418. package/dist/geo.module.min.js +1 -1
  419. package/dist/network.min.js +1 -1
  420. package/dist/network.module.min.js +1 -1
  421. package/dist/ordinal.min.js +1 -1
  422. package/dist/ordinal.module.min.js +1 -1
  423. package/dist/physics-matter.min.js +1 -0
  424. package/dist/physics-matter.module.min.js +1 -0
  425. package/dist/physics-rapier.min.js +1 -0
  426. package/dist/physics-rapier.module.min.js +1 -0
  427. package/dist/physics.min.js +2 -0
  428. package/dist/physics.module.min.js +2 -0
  429. package/dist/physicsWorker.js +1 -0
  430. package/dist/realtime.min.js +1 -1
  431. package/dist/realtime.module.min.js +1 -1
  432. package/dist/semiotic-ai-chunk-OG7BQUUW.module.min.js +2 -0
  433. package/dist/semiotic-ai-core.d.ts +47 -0
  434. package/dist/semiotic-ai-core.min.js +1 -0
  435. package/dist/semiotic-ai-core.module.min.js +1 -0
  436. package/dist/semiotic-ai-statisticalOverlays-CY4WKR4A.module.min.js +2 -0
  437. package/dist/semiotic-ai.d.ts +52 -4
  438. package/dist/semiotic-ai.min.js +1 -1
  439. package/dist/semiotic-ai.module.min.js +1 -1
  440. package/dist/semiotic-chunk-3FSVZ46U.module.min.js +2 -0
  441. package/dist/semiotic-controls.d.ts +18 -0
  442. package/dist/semiotic-data.d.ts +2 -0
  443. package/dist/semiotic-data.min.js +1 -1
  444. package/dist/semiotic-data.module.min.js +1 -1
  445. package/dist/semiotic-experimental.d.ts +49 -0
  446. package/dist/semiotic-experimental.min.js +1 -0
  447. package/dist/semiotic-experimental.module.min.js +1 -0
  448. package/dist/semiotic-geo.d.ts +11 -0
  449. package/dist/semiotic-network.d.ts +14 -1
  450. package/dist/semiotic-ordinal.d.ts +10 -0
  451. package/dist/semiotic-physics-matter.d.ts +10 -0
  452. package/dist/semiotic-physics-rapier.d.ts +9 -0
  453. package/dist/semiotic-physics.d.ts +56 -0
  454. package/dist/semiotic-realtime-core.d.ts +34 -0
  455. package/dist/semiotic-realtime-core.min.js +1 -0
  456. package/dist/semiotic-realtime-core.module.min.js +1 -0
  457. package/dist/semiotic-realtime-react.d.ts +10 -0
  458. package/dist/semiotic-realtime-react.min.js +2 -0
  459. package/dist/semiotic-realtime-react.module.min.js +2 -0
  460. package/dist/semiotic-realtime.d.ts +4 -22
  461. package/dist/semiotic-recipes-core.d.ts +92 -0
  462. package/dist/semiotic-recipes-core.min.js +1 -0
  463. package/dist/semiotic-recipes-core.module.min.js +1 -0
  464. package/dist/semiotic-recipes-react.d.ts +7 -0
  465. package/dist/semiotic-recipes-react.min.js +2 -0
  466. package/dist/semiotic-recipes-react.module.min.js +2 -0
  467. package/dist/semiotic-recipes.d.ts +4 -26
  468. package/dist/semiotic-recipes.min.js +1 -1
  469. package/dist/semiotic-recipes.module.min.js +1 -1
  470. package/dist/semiotic-server-edge.d.ts +8 -0
  471. package/dist/semiotic-server-edge.min.js +1 -0
  472. package/dist/semiotic-server-edge.module.min.js +1 -0
  473. package/dist/semiotic-server-node.d.ts +5 -0
  474. package/dist/semiotic-server-node.min.js +1 -0
  475. package/dist/semiotic-server-node.module.min.js +1 -0
  476. package/dist/semiotic-server.d.ts +2 -2
  477. package/dist/semiotic-statisticalOverlays-UOMSFKVJ.module.min.js +2 -0
  478. package/dist/semiotic-themes-core.d.ts +53 -0
  479. package/dist/semiotic-themes-core.min.js +1 -0
  480. package/dist/semiotic-themes-core.module.min.js +1 -0
  481. package/dist/semiotic-themes-react.d.ts +4 -0
  482. package/dist/semiotic-themes-react.min.js +2 -0
  483. package/dist/semiotic-themes-react.module.min.js +2 -0
  484. package/dist/semiotic-themes.d.ts +6 -74
  485. package/dist/semiotic-themes.min.js +1 -2
  486. package/dist/semiotic-themes.module.min.js +1 -2
  487. package/dist/semiotic-utils-core.d.ts +46 -0
  488. package/dist/semiotic-utils-core.min.js +1 -0
  489. package/dist/semiotic-utils-core.module.min.js +1 -0
  490. package/dist/semiotic-utils-react.d.ts +5 -0
  491. package/dist/semiotic-utils-react.min.js +2 -0
  492. package/dist/semiotic-utils-react.module.min.js +2 -0
  493. package/dist/semiotic-utils.d.ts +3 -39
  494. package/dist/semiotic-utils.min.js +1 -2
  495. package/dist/semiotic-utils.module.min.js +1 -2
  496. package/dist/semiotic-value.min.js +1 -1
  497. package/dist/semiotic-value.module.min.js +1 -1
  498. package/dist/semiotic-xy.d.ts +10 -0
  499. package/dist/semiotic.d.ts +39 -7
  500. package/dist/semiotic.min.js +1 -1
  501. package/dist/semiotic.module.min.js +1 -1
  502. package/dist/server.min.js +1 -1
  503. package/dist/server.module.min.js +1 -1
  504. package/dist/xy-chunk-IWD6IB6V.module.min.js +2 -0
  505. package/dist/xy-statisticalOverlays-7RWG6LJT.module.min.js +2 -0
  506. package/dist/xy.min.js +1 -1
  507. package/dist/xy.module.min.js +1 -1
  508. package/package.json +246 -86
  509. package/spec/README.md +152 -0
  510. package/spec/bindings/README.md +35 -0
  511. package/spec/bindings/vega-lite.mjs +112 -0
  512. package/spec/v0.1/annotation-provenance.schema.json +127 -0
  513. package/spec/v0.1/audience-profile.schema.json +67 -0
  514. package/spec/v0.1/chart-capability.schema.json +186 -0
  515. package/dist/semiotic-ai-statisticalOverlays-C2PPlmXv.js +0 -1
  516. package/dist/semiotic-statisticalOverlays-C3DsOgr_.js +0 -1
  517. package/dist/xy-statisticalOverlays-C2PPlmXv.js +0 -1
@@ -0,0 +1,213 @@
1
+ /**
2
+ * Gauntlet domain types + body-kind constants (no heavy runtime).
3
+ */
4
+ import type { Datum } from "../shared/datumTypes";
5
+ import type { ChartAccessor } from "../shared/types";
6
+ import type { PhysicsBodyState } from "../../stream/physics/PhysicsKernel";
7
+ import type { PhysicsQueuedSpawn, PhysicsSpawnSpringSpec } from "../../stream/physics/PhysicsPipelineStore";
8
+ import type { StreamPhysicsRegionEffect } from "../../stream/physics/StreamPhysicsTypes";
9
+ export declare const CORE_KIND: "gauntlet-core";
10
+ export declare const POSITIVE_KIND: "gauntlet-positive";
11
+ export declare const NEGATIVE_KIND: "gauntlet-negative";
12
+ export interface GauntletProjectPlacement {
13
+ graveyardX?: number;
14
+ graveyardY?: number;
15
+ routeY?: number;
16
+ socketX?: number;
17
+ socketY?: number;
18
+ startX?: number;
19
+ startY?: number;
20
+ }
21
+ export interface GauntletPropertyForceContext<TDatum extends Datum = Datum> {
22
+ body: PhysicsBodyState;
23
+ bodies: readonly PhysicsBodyState[];
24
+ core: PhysicsBodyState;
25
+ index: number;
26
+ layout: GauntletLayout;
27
+ placement: Required<GauntletProjectPlacement>;
28
+ project: GauntletProjectState<TDatum>;
29
+ }
30
+ export interface GauntletPropertyDefinition {
31
+ id: string;
32
+ label?: string;
33
+ short?: string;
34
+ color?: string;
35
+ value?: number;
36
+ radius?: number;
37
+ mass?: number;
38
+ buoyancy?: number;
39
+ load?: number;
40
+ /** Work units required to remove one occurrence at a bounded-work gate. */
41
+ work?: number;
42
+ /** Lower values are selected first by the default work-budget planner. */
43
+ priority?: number;
44
+ pull?: {
45
+ x?: number;
46
+ y?: number;
47
+ };
48
+ popColor?: string;
49
+ spring?: false | Partial<PhysicsSpawnSpringSpec>;
50
+ target?: (context: GauntletPropertyForceContext) => {
51
+ x: number;
52
+ y: number;
53
+ } | null | undefined;
54
+ }
55
+ export interface GauntletGate {
56
+ id: string;
57
+ label?: string;
58
+ description?: string;
59
+ color?: string;
60
+ /**
61
+ * Optional shared FIFO capacity for compound cores crossing this gate.
62
+ * Event time remains the earliest arrival; the matching gate event waits
63
+ * until the project's core has been processed.
64
+ */
65
+ capacity?: {
66
+ unitsPerSecond: number;
67
+ /** Reads work units from the source datum or live project state. */
68
+ unitAccessor?: string | ((project: GauntletProjectState) => number);
69
+ maxQueue?: number;
70
+ queueLayout?: "lane" | "none";
71
+ queueSlotSpacing?: number;
72
+ queueStiffness?: number;
73
+ /** Invisible sensor/queue width; independent from the drawn gate width. */
74
+ sensorWidth?: number;
75
+ };
76
+ enabled?: boolean;
77
+ regionEffect?: Partial<Omit<StreamPhysicsRegionEffect, "id" | "shape">>;
78
+ time?: number;
79
+ x?: number;
80
+ width?: number;
81
+ }
82
+ /** Pop one or more attached property ids from a project. */
83
+ export type GauntletPopSpec = readonly string[] | {
84
+ candidates?: readonly string[];
85
+ count?: number;
86
+ ids?: readonly string[];
87
+ };
88
+ export interface GauntletEffect {
89
+ addPositive?: readonly string[] | Record<string, number>;
90
+ addNegative?: readonly string[] | Record<string, number>;
91
+ popPositive?: GauntletPopSpec;
92
+ /**
93
+ * Remove attached negative property bodies — the inverse of the common
94
+ * "pop positives / add negatives" gate. Supports the same array / candidates
95
+ * / ids shape as {@link popPositive}.
96
+ */
97
+ popNegative?: GauntletPopSpec;
98
+ delayDelta?: number;
99
+ metricsDelta?: Record<string, number>;
100
+ outcome?: string;
101
+ stage?: string;
102
+ summary?: string;
103
+ viabilityDelta?: number;
104
+ when?: (context: GauntletEventContext) => boolean;
105
+ }
106
+ export interface GauntletEvent {
107
+ id: string;
108
+ label?: string;
109
+ time: number;
110
+ gateId?: string;
111
+ /** Capacity-gate visit this event waits for. Defaults to its gate-event ordinal. */
112
+ gateVisit?: number;
113
+ effects?: readonly GauntletEffect[];
114
+ final?: boolean;
115
+ outcome?: string;
116
+ routeX?: number;
117
+ routeY?: number;
118
+ summary?: string;
119
+ }
120
+ export interface GauntletEventLogItem {
121
+ id: string;
122
+ label: string;
123
+ summary?: string;
124
+ /** Actual project-local application time (event `time` is the authored earliest time). */
125
+ appliedAt?: number;
126
+ time?: number;
127
+ }
128
+ export interface GauntletProjectState<TDatum extends Datum = Datum> {
129
+ crashX?: number;
130
+ id: string;
131
+ activePositiveIds: string[];
132
+ datum: TDatum;
133
+ delay: number;
134
+ eventsApplied: string[];
135
+ /** Ordered event tape for readouts, replay evidence, and accessibility. */
136
+ eventHistory?: GauntletEventLogItem[];
137
+ killed: boolean;
138
+ lastEvent?: GauntletEventLogItem;
139
+ metrics: Record<string, number>;
140
+ missingPositiveIds: string[];
141
+ negativeIds: string[];
142
+ outcome: string;
143
+ poppedPositiveIds: string[];
144
+ /** Negative property ids removed by {@link GauntletEffect.popNegative}. */
145
+ poppedNegativeIds: string[];
146
+ /** Project-local timeline origin in simulation seconds. */
147
+ startedAt?: number;
148
+ stage: string;
149
+ viability: number;
150
+ }
151
+ export interface GauntletLayout {
152
+ crashY: number;
153
+ floorY: number;
154
+ gates: Array<Required<Pick<GauntletGate, "id" | "x" | "width">> & GauntletGate>;
155
+ graveyardX: number;
156
+ graveyardY: number;
157
+ height: number;
158
+ routeY: number;
159
+ socketX: number;
160
+ startX: number;
161
+ width: number;
162
+ }
163
+ export interface GauntletEventContext<TDatum extends Datum = Datum> {
164
+ event: GauntletEvent;
165
+ gate?: GauntletLayout["gates"][number];
166
+ negativeProperties: Map<string, GauntletPropertyDefinition>;
167
+ positiveProperties: Map<string, GauntletPropertyDefinition>;
168
+ project: GauntletProjectState<TDatum>;
169
+ }
170
+ /** Placement override for a project in layout space. */
171
+ export type GauntletProjectPlacementFn<TDatum extends Datum = Datum> = (project: GauntletProjectState<TDatum>, index: number, layout: GauntletLayout) => Partial<GauntletProjectPlacement>;
172
+ /** Optional spawn overrides for the project core body. */
173
+ export type GauntletCoreBodyFn<TDatum extends Datum = Datum> = (project: GauntletProjectState<TDatum>, index: number, layout: GauntletLayout, placement: Required<GauntletProjectPlacement>) => Partial<PhysicsQueuedSpawn>;
174
+ /** Custom viability scorer. */
175
+ export type GauntletViabilityFn<TDatum extends Datum = Datum> = (project: GauntletProjectState<TDatum>, context: {
176
+ negativeProperties: Map<string, GauntletPropertyDefinition>;
177
+ positiveProperties: Map<string, GauntletPropertyDefinition>;
178
+ }) => number;
179
+ /** Accessors used when seeding project state from user rows. */
180
+ export interface GauntletAccessors<TDatum extends Datum = Datum> {
181
+ idAccessor?: ChartAccessor<TDatum, string>;
182
+ initialViability?: ChartAccessor<TDatum, number>;
183
+ metricsAccessor?: ChartAccessor<TDatum, Record<string, number>>;
184
+ negativeAccessor?: ChartAccessor<TDatum, readonly string[]>;
185
+ positiveAccessor?: ChartAccessor<TDatum, readonly string[]>;
186
+ startTimeAccessor?: ChartAccessor<TDatum, number>;
187
+ }
188
+ export interface GauntletPropertyWorkPlanOptions {
189
+ attachedIds: readonly string[];
190
+ properties: readonly GauntletPropertyDefinition[] | Map<string, GauntletPropertyDefinition>;
191
+ budget: number;
192
+ candidates?: readonly string[];
193
+ }
194
+ export interface GauntletPropertyWorkPlan {
195
+ ids: string[];
196
+ used: number;
197
+ budget: number;
198
+ remaining: number;
199
+ skippedIds: string[];
200
+ }
201
+ export interface GauntletNegativeReplacementOptions {
202
+ from: string;
203
+ to: string;
204
+ count?: number;
205
+ }
206
+ /** Wall colliders matching {@link GAUNTLET_WALL} / SSR builder. */
207
+ export interface GauntletBodyDatum<TDatum extends Datum = Datum> {
208
+ __gauntlet: true;
209
+ kind: typeof CORE_KIND | typeof POSITIVE_KIND | typeof NEGATIVE_KIND;
210
+ projectId: string;
211
+ property?: GauntletPropertyDefinition;
212
+ sourceDatum: TDatum;
213
+ }
@@ -0,0 +1,57 @@
1
+ import type { Datum } from "../shared/datumTypes";
2
+ import type { ChartAccessor } from "../shared/types";
3
+ import { type PhysicsChartArea, type PhysicsChartLayout } from "./physicsChartShared";
4
+ export type PhysicalFlowCoordinateMode = "auto" | "normalized" | "pixels";
5
+ export type PhysicalFlowPathConstraint = "path" | "none";
6
+ export interface PhysicalFlowPoint {
7
+ x: number;
8
+ y: number;
9
+ }
10
+ export type PhysicalFlowRawPath = ReadonlyArray<PhysicalFlowPoint | readonly [number, number]>;
11
+ export interface PhysicalFlowOptions<TNode extends Datum = Datum, TLink extends Datum = Datum> {
12
+ nodes: readonly TNode[];
13
+ links: readonly TLink[];
14
+ nodeIdAccessor: ChartAccessor<TNode, string>;
15
+ nodeXAccessor: ChartAccessor<TNode, number>;
16
+ nodeYAccessor: ChartAccessor<TNode, number>;
17
+ sourceAccessor: ChartAccessor<TLink, string>;
18
+ targetAccessor: ChartAccessor<TLink, string>;
19
+ throughputAccessor: ChartAccessor<TLink, number>;
20
+ pathAccessor?: ChartAccessor<TLink, PhysicalFlowRawPath | undefined>;
21
+ coordinateMode?: PhysicalFlowCoordinateMode;
22
+ particleRate: number;
23
+ maxParticles: number;
24
+ particleRadius: number;
25
+ flowSpeed: number;
26
+ pathConstraint?: PhysicalFlowPathConstraint;
27
+ reducedMotion?: boolean;
28
+ seed: number;
29
+ size: [number, number];
30
+ }
31
+ export interface PhysicalFlowProjectionMetadata {
32
+ kind: "physical-flow";
33
+ coordinateMode: Exclude<PhysicalFlowCoordinateMode, "auto">;
34
+ particleCount: number;
35
+ totalThroughput: number;
36
+ plot: PhysicsChartArea["plot"];
37
+ nodes: Array<{
38
+ id: string;
39
+ label: string;
40
+ x: number;
41
+ y: number;
42
+ sensorId: string;
43
+ incoming: number;
44
+ outgoing: number;
45
+ }>;
46
+ links: Array<{
47
+ id: string;
48
+ source: string;
49
+ target: string;
50
+ sourceLabel: string;
51
+ targetLabel: string;
52
+ throughput: number;
53
+ packetCount: number;
54
+ path: PhysicalFlowPoint[];
55
+ }>;
56
+ }
57
+ export declare function buildPhysicalFlowPhysics<TNode extends Datum, TLink extends Datum>(options: PhysicalFlowOptions<TNode, TLink>): PhysicsChartLayout;
@@ -0,0 +1,41 @@
1
+ import type { Datum } from "../shared/datumTypes";
2
+ import type { ChartAccessor } from "../shared/types";
3
+ import type { Style } from "../../stream/types";
4
+ import type { PhysicsColliderSpec } from "../../stream/physics/PhysicsKernel";
5
+ import type { PhysicsPipelineConfig, PhysicsQueuedSpawn, PhysicsSpawnPacingOptions } from "../../stream/physics/PhysicsPipelineStore";
6
+ import type { PhysicsSemanticItem } from "../../stream/physics/StreamPhysicsTypes";
7
+ export interface PhysicsChartLayout {
8
+ config: PhysicsPipelineConfig;
9
+ initialSpawns: PhysicsQueuedSpawn[];
10
+ initialSpawnPacing?: PhysicsSpawnPacingOptions;
11
+ projectionRows: Array<{
12
+ label: string;
13
+ value: number;
14
+ secondary?: number;
15
+ }>;
16
+ metadata?: Record<string, unknown>;
17
+ }
18
+ export interface PhysicsChartArea {
19
+ width: number;
20
+ height: number;
21
+ plot: {
22
+ x: number;
23
+ y: number;
24
+ width: number;
25
+ height: number;
26
+ };
27
+ }
28
+ export declare function physicsChartArea(size: [number, number]): PhysicsChartArea;
29
+ export declare function hashStringColor(value: unknown): string;
30
+ export declare function styleFromColorAccessor<TDatum extends Datum>(colorBy: ChartAccessor<TDatum, string> | undefined, fallback?: string): (body: {
31
+ datum?: unknown;
32
+ }) => Style;
33
+ export declare function baseConfig(seed: number, colliders: PhysicsColliderSpec[], chartType: string, kernel?: Partial<NonNullable<PhysicsPipelineConfig["kernel"]>>): PhysicsPipelineConfig;
34
+ export declare function projectionRowsToSemanticItems(rows: readonly PhysicsChartLayout["projectionRows"][number][], size: [number, number], noun: string): PhysicsSemanticItem[];
35
+ export declare function readAccessor<TDatum extends Datum, TValue>(datum: TDatum, index: number, accessor: ChartAccessor<TDatum, TValue>): TValue;
36
+ export declare function finiteNumber(value: unknown): number | null;
37
+ export declare function clampNumber(value: number, min: number, max: number): number;
38
+ export declare function positiveNumber(value: unknown, fallback: number): number;
39
+ export declare function normalizedFiniteExtent(extent: readonly [unknown, unknown] | undefined): [number, number] | undefined;
40
+ export declare function safeIdPart(value: unknown): string;
41
+ export declare function seededRandom(seed: number): () => number;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Physics chart layout builders — barrel re-export.
3
+ * Implementations live in per-chart modules next to this file.
4
+ */
5
+ export type { PhysicsChartLayout, PhysicsChartArea } from "./physicsChartShared";
6
+ export { projectionRowsToSemanticItems, physicsChartArea, hashStringColor, styleFromColorAccessor } from "./physicsChartShared";
7
+ export type { GaltonBoardPhysicsOptions, GaltonBoardProjectionMetadata, GaltonMechanicalSampleOptions } from "./galtonBoardPhysics";
8
+ export { generateGaltonMechanicalSamples, buildGaltonBoardPhysics } from "./galtonBoardPhysics";
9
+ export type { EventDropWindowOptions, EventDropPlotRegion, EventDropLidSegment, EventDropProjectionMetadata, EventDropPhysicsOptions } from "./eventDropPhysics";
10
+ export { buildEventDropPhysics, placeEventDropSpawn } from "./eventDropPhysics";
11
+ export type { PhysicsPileMechanicalSampleOptions, PhysicsPileOptions, PileTubeGeometry } from "./physicsPilePhysics";
12
+ export { generatePhysicsPileMechanicalSamples, pileTubeGeometry, buildPhysicsPile } from "./physicsPilePhysics";
13
+ export type { CollisionSwarmPhysicsOptions, CollisionSwarmProjectionMetadata } from "./collisionSwarmPhysics";
14
+ export { buildCollisionSwarmPhysics } from "./collisionSwarmPhysics";
15
+ export type { PhysicalFlowCoordinateMode, PhysicalFlowPathConstraint, PhysicalFlowPoint, PhysicalFlowRawPath, PhysicalFlowOptions, PhysicalFlowProjectionMetadata } from "./physicalFlowPhysics";
16
+ export { buildPhysicalFlowPhysics } from "./physicalFlowPhysics";
17
+ export type { ProcessFlowStageDef, ProcessFlowPhysicsOptions, ProcessFlowProjectionMetadata } from "./processFlowPhysics";
18
+ export { buildProcessFlowPhysics } from "./processFlowPhysics";
@@ -0,0 +1,142 @@
1
+ import type { Datum } from "../shared/datumTypes";
2
+ import type { MotionCoordinateSpace, MotionEncodingAccessor, MotionEncodingConstant, MotionKinematicsEncoding, MotionPlacementEncoding, MotionProcessEncoding, MotionTimeBasis, MotionTimeEncoding, MotionTimeUnit, ResolvedMotionEncodingRow } from "../shared/motionEncoding";
3
+ import type { Style } from "../../stream/types";
4
+ import type { PhysicsBodyShape, PhysicsBodyState } from "../../stream/physics/PhysicsKernel";
5
+ import type { PhysicsQueuedSpawn } from "../../stream/physics/PhysicsPipelineStore";
6
+ import type { PhysicsSemanticItem } from "../../stream/physics/StreamPhysicsFrame";
7
+ import type { PhysicsCustomLayout, PhysicsCustomLayoutContext, PhysicsCustomLayoutResult } from "./PhysicsCustomChart";
8
+ /** Explicit literal wrapper for channels whose values could also be field names. */
9
+ export type PhysicsEncodingConstant<TValue> = MotionEncodingConstant<TValue>;
10
+ /**
11
+ * A data channel can read a field, calculate a value, or provide an explicit
12
+ * constant. Constants use a wrapper so string values are never confused with
13
+ * field names.
14
+ */
15
+ export type PhysicsEncodingAccessor<TDatum, TValue> = MotionEncodingAccessor<TDatum, TValue>;
16
+ export interface PhysicsAppearanceEncoding<TDatum> {
17
+ color?: PhysicsEncodingAccessor<TDatum, string>;
18
+ opacity?: PhysicsEncodingAccessor<TDatum, number>;
19
+ shape?: PhysicsEncodingAccessor<TDatum, PhysicsBodyShape>;
20
+ size?: PhysicsEncodingAccessor<TDatum, number>;
21
+ stroke?: PhysicsEncodingAccessor<TDatum, string>;
22
+ strokeWidth?: PhysicsEncodingAccessor<TDatum, number>;
23
+ }
24
+ export type PhysicsPlacementEncoding<TDatum> = MotionPlacementEncoding<TDatum>;
25
+ export interface PhysicsTimeEncoding<TDatum> extends MotionTimeEncoding<TDatum> {
26
+ /** Simulated time at which the body enters the world. */
27
+ spawnAt?: PhysicsEncodingAccessor<TDatum, number>;
28
+ }
29
+ export type PhysicsKinematicsEncoding<TDatum> = MotionKinematicsEncoding<TDatum>;
30
+ /**
31
+ * Causal simulation channels. Unlike appearance channels, these values change
32
+ * behavior and should be paired with visible or settled evidence when they
33
+ * carry analytical meaning.
34
+ */
35
+ export interface PhysicsDynamicsEncoding<TDatum> {
36
+ bodyCollisions?: PhysicsEncodingAccessor<TDatum, boolean>;
37
+ friction?: PhysicsEncodingAccessor<TDatum, number>;
38
+ mass?: PhysicsEncodingAccessor<TDatum, number>;
39
+ restitution?: PhysicsEncodingAccessor<TDatum, number>;
40
+ }
41
+ export type PhysicsProcessEncoding<TDatum> = MotionProcessEncoding<TDatum>;
42
+ export interface PhysicsAccessibleEncoding<TDatum> {
43
+ description?: PhysicsEncodingAccessor<TDatum, string>;
44
+ group?: PhysicsEncodingAccessor<TDatum, string>;
45
+ label?: PhysicsEncodingAccessor<TDatum, string>;
46
+ }
47
+ /**
48
+ * Grammar-of-graphics bridge for physics-backed charts. Visual channels remain
49
+ * separate from causal dynamics and from process/evidence channels so motion
50
+ * does not silently become an unexplained quantitative encoding.
51
+ */
52
+ export interface PhysicsEncoding<TDatum extends Datum = Datum> {
53
+ id: PhysicsEncodingAccessor<TDatum, string | number>;
54
+ appearance?: PhysicsAppearanceEncoding<TDatum>;
55
+ placement?: PhysicsPlacementEncoding<TDatum>;
56
+ time?: PhysicsTimeEncoding<TDatum>;
57
+ kinematics?: PhysicsKinematicsEncoding<TDatum>;
58
+ dynamics?: PhysicsDynamicsEncoding<TDatum>;
59
+ process?: PhysicsProcessEncoding<TDatum>;
60
+ /** Named analytical values retained on resolved rows for projections. */
61
+ evidence?: Record<string, PhysicsEncodingAccessor<TDatum, unknown>>;
62
+ accessible?: PhysicsAccessibleEncoding<TDatum>;
63
+ }
64
+ export interface PhysicsEncodingDefaults {
65
+ color?: string;
66
+ mass?: number;
67
+ opacity?: number;
68
+ shape?: PhysicsBodyShape;
69
+ size?: number;
70
+ stroke?: string;
71
+ strokeWidth?: number;
72
+ x?: number;
73
+ y?: number;
74
+ }
75
+ /**
76
+ * A resolved physics row is a resolved motion row (the shared neutral channels
77
+ * — kinematics, process, evidence, accessible) plus the physics-only channels:
78
+ * appearance, causal dynamics, a scaled/required placement, spawn timing, and
79
+ * the queued body spawn. Physics is literally a superset of motion.
80
+ */
81
+ export interface ResolvedPhysicsEncodingRow<TDatum extends Datum = Datum> extends Omit<ResolvedMotionEncodingRow<TDatum>, "placement" | "time"> {
82
+ appearance: {
83
+ color?: string;
84
+ opacity?: number;
85
+ shape: PhysicsBodyShape;
86
+ size: number;
87
+ stroke?: string;
88
+ strokeWidth?: number;
89
+ };
90
+ placement: {
91
+ x: number;
92
+ y: number;
93
+ lane?: string | number;
94
+ space?: MotionCoordinateSpace;
95
+ };
96
+ time: {
97
+ arrival?: number;
98
+ spawnAt?: number;
99
+ basis?: MotionTimeBasis;
100
+ unit?: MotionTimeUnit;
101
+ };
102
+ dynamics: {
103
+ bodyCollisions?: boolean;
104
+ friction?: number;
105
+ mass: number;
106
+ restitution?: number;
107
+ };
108
+ spawn: PhysicsQueuedSpawn;
109
+ }
110
+ export interface PhysicsEncodingCompilation<TDatum extends Datum = Datum> {
111
+ rows: ResolvedPhysicsEncodingRow<TDatum>[];
112
+ byId: Map<string, ResolvedPhysicsEncodingRow<TDatum>>;
113
+ spawns: PhysicsQueuedSpawn[];
114
+ semanticItems: PhysicsSemanticItem[];
115
+ /**
116
+ * Per-body style lookup. Always the function form (the compiler resolves one
117
+ * style per id up front); assignable to `StreamPhysicsFrameProps["bodyStyle"]`.
118
+ */
119
+ bodyStyle: (body: PhysicsBodyState) => Style;
120
+ }
121
+ export interface CompilePhysicsEncodingOptions<TDatum extends Datum = Datum> {
122
+ data: readonly TDatum[];
123
+ encoding: PhysicsEncoding<TDatum>;
124
+ defaults?: PhysicsEncodingDefaults;
125
+ scales?: {
126
+ x?: (value: number) => number;
127
+ y?: (value: number) => number;
128
+ };
129
+ }
130
+ /** Resolve row accessors once into worker-safe body spawns and chart metadata. */
131
+ export declare function compilePhysicsEncoding<TDatum extends Datum = Datum>(options: CompilePhysicsEncodingOptions<TDatum>): PhysicsEncodingCompilation<TDatum>;
132
+ export type PhysicsEncodingLayoutExtension = Omit<PhysicsCustomLayoutResult, "bodies" | "initialSpawns" | "bodyStyle" | "semanticItems"> & {
133
+ semanticItems?: PhysicsSemanticItem[];
134
+ };
135
+ export interface CreatePhysicsEncodingLayoutOptions<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>> {
136
+ encoding: PhysicsEncoding<TDatum>;
137
+ defaults?: PhysicsEncodingDefaults;
138
+ /** Add constraints, regions, controllers, world config, and overlays. */
139
+ extend?: (context: PhysicsCustomLayoutContext<TDatum, TConfig>, compilation: PhysicsEncodingCompilation<TDatum>) => PhysicsEncodingLayoutExtension | undefined;
140
+ }
141
+ /** Build a PhysicsCustomChart layout from declarative data encodings. */
142
+ export declare function createPhysicsEncodingLayout<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>>(options: CreatePhysicsEncodingLayoutOptions<TDatum, TConfig>): PhysicsCustomLayout<TDatum, TConfig>;
@@ -0,0 +1,53 @@
1
+ import type { Ref, RefObject } from "react";
2
+ import type { Datum } from "../shared/datumTypes";
3
+ import type { RealtimeFrameHandle } from "../../realtime/types";
4
+ import type { StreamPhysicsFrameHandle } from "../../stream/physics/StreamPhysicsFrame";
5
+ import type { StreamPhysicsPopOptions } from "../../stream/physics/physicsBodyCanvas";
6
+ import type { PhysicsQueuedSpawn } from "../../stream/physics/PhysicsPipelineStore";
7
+ /**
8
+ * The imperative handle every physics HOC exposes: the shared realtime
9
+ * push/remove/update surface plus the physics-only `popBodies` — a
10
+ * body-removal "pop" burst (expanding ring + sparks) played by the frame.
11
+ * The exit-emphasis counterpart to realtime `pulse`; returns the ids of the
12
+ * bodies actually removed.
13
+ */
14
+ export interface PhysicsFrameHandle extends RealtimeFrameHandle {
15
+ popBodies(ids: string[], options?: StreamPhysicsPopOptions): string[];
16
+ }
17
+ export interface PhysicsDatumSpawnResult {
18
+ datumId: string;
19
+ spawns: PhysicsQueuedSpawn[];
20
+ }
21
+ export interface UsePhysicsHocHandleOptions {
22
+ frameRef: RefObject<StreamPhysicsFrameHandle | null>;
23
+ /**
24
+ * Turn one user row into one or more physics body spawns. Called for
25
+ * push / pushMany / update — never for initial static layout (that path
26
+ * uses the HOC's `initialSpawns`).
27
+ */
28
+ spawnDatum: (datum: Datum, index: number) => PhysicsDatumSpawnResult;
29
+ /**
30
+ * Optional seed so remove/update work on static initial rows without a
31
+ * prior push. Map each seed row to its body ids (defaults: single body
32
+ * whose id equals the datum id).
33
+ */
34
+ seedRows?: readonly Datum[];
35
+ /**
36
+ * Resolve a stable row id for seed/push tracking. Defaults to
37
+ * `String(datum.id ?? index)`.
38
+ */
39
+ idAccessor?: string | ((datum: Datum, index: number) => string);
40
+ /**
41
+ * Resolve body ids for a seed row. Defaults to matching `seedSpawns`
42
+ * (and unitized `rowId-*` ids), else `[rowId]`.
43
+ */
44
+ bodyIdsForSeed?: (datum: Datum, rowId: string, index: number) => string[];
45
+ /**
46
+ * Initial layout spawns — used to resolve multi-body seed rows (pile
47
+ * unitization, physical-flow packets) for remove/update.
48
+ */
49
+ seedSpawns?: readonly PhysicsQueuedSpawn[];
50
+ }
51
+ /** Body ids belonging to a seed row (handles unitized `id-0`, `id-1`, …). */
52
+ export declare function bodyIdsForSeedRow(rowId: string, spawns: readonly PhysicsQueuedSpawn[] | undefined): string[];
53
+ export declare function usePhysicsHocHandle(ref: Ref<PhysicsFrameHandle> | undefined, options: UsePhysicsHocHandleOptions): void;
@@ -0,0 +1,128 @@
1
+ import * as React from "react";
2
+ import type { FrameGraphicsProp } from "../../stream/useFrame";
3
+ import type { PhysicsSemanticItem, StreamPhysicsFrameProps } from "../../stream/physics/StreamPhysicsFrame";
4
+ import { type TooltipProp } from "../../Tooltip/Tooltip";
5
+ import type { Datum } from "../shared/datumTypes";
6
+ import type { BaseChartProps, ChartMode } from "../shared/types";
7
+ import { type ChartModeResult } from "../shared/hooks";
8
+ export type PhysicsHocFrameProps<TOmitted extends keyof StreamPhysicsFrameProps = never> = Partial<Omit<StreamPhysicsFrameProps, "initialSpawns" | "initialSpawnPacing" | "size" | TOmitted>>;
9
+ /**
10
+ * Chrome / AI / annotation contracts HOCs forward to StreamPhysicsFrame.
11
+ * Compose with `BaseChartProps` on every physics HOC.
12
+ */
13
+ export type PhysicsSharedChartProps = {
14
+ annotations?: StreamPhysicsFrameProps["annotations"];
15
+ autoPlaceAnnotations?: StreamPhysicsFrameProps["autoPlaceAnnotations"];
16
+ background?: StreamPhysicsFrameProps["background"];
17
+ legend?: StreamPhysicsFrameProps["legend"];
18
+ legendPosition?: StreamPhysicsFrameProps["legendPosition"];
19
+ legendLayout?: StreamPhysicsFrameProps["legendLayout"];
20
+ svgAnnotationRules?: StreamPhysicsFrameProps["svgAnnotationRules"];
21
+ };
22
+ /** Galton / pile sampling mode (orthogonal to ChartMode display modes). */
23
+ export type PhysicsSimulationMode = "sample" | "mechanical";
24
+ /**
25
+ * Split ChartMode (`primary`/`context`/`sparkline`/`mobile`) from the
26
+ * Galton/pile `sample`/`mechanical` simulation mode. Accepts legacy
27
+ * `mode="mechanical"` as simulationMode for back-compat.
28
+ */
29
+ export declare function resolvePhysicsModes(options: {
30
+ mode?: ChartMode | PhysicsSimulationMode;
31
+ simulationMode?: PhysicsSimulationMode;
32
+ }): {
33
+ chartMode: ChartMode | undefined;
34
+ simulationMode: PhysicsSimulationMode;
35
+ };
36
+ /** Physics fills its box; only compact ChartModes get non-zero chrome padding. */
37
+ export declare function physicsMarginForMode(compactMode: boolean, mode?: ChartMode): {
38
+ top: number;
39
+ right: number;
40
+ bottom: number;
41
+ left: number;
42
+ };
43
+ export declare function resolvePhysicsChartSize(size: [number, number] | undefined, width: number | undefined, height: number | undefined, fallback: [number, number]): [number, number];
44
+ export type PhysicsChartModeProps = {
45
+ width?: number;
46
+ height?: number;
47
+ title?: string;
48
+ description?: string;
49
+ summary?: string;
50
+ accessibleTable?: boolean;
51
+ /** Frame-level hover; HOCs may pass via tooltip or frameProps. */
52
+ enableHover?: boolean;
53
+ mobileInteraction?: BaseChartProps["mobileInteraction"];
54
+ mobileSemantics?: BaseChartProps["mobileSemantics"];
55
+ responsiveRules?: BaseChartProps["responsiveRules"];
56
+ mode?: ChartMode | PhysicsSimulationMode;
57
+ simulationMode?: PhysicsSimulationMode;
58
+ size?: [number, number];
59
+ showProjection?: boolean;
60
+ showChrome?: boolean;
61
+ tooltip?: TooltipProp;
62
+ className?: string;
63
+ };
64
+ export interface PhysicsChartModeResult {
65
+ chartMode: ChartMode | undefined;
66
+ simulationMode: PhysicsSimulationMode;
67
+ resolved: ChartModeResult;
68
+ chartSize: [number, number];
69
+ margin: {
70
+ top: number;
71
+ right: number;
72
+ bottom: number;
73
+ left: number;
74
+ };
75
+ showProjection: boolean;
76
+ showChrome: boolean;
77
+ enableHover: boolean;
78
+ title: string | undefined;
79
+ description: string | undefined;
80
+ summary: string | undefined;
81
+ accessibleTable: boolean | undefined;
82
+ className: string | undefined;
83
+ compactMode: boolean;
84
+ mobileInteraction: ChartModeResult["mobileInteraction"];
85
+ mobileSemantics: ChartModeResult["mobileSemantics"];
86
+ }
87
+ /**
88
+ * ChartMode + size + compact chrome defaults for every physics HOC.
89
+ * Primary physics sizes stay family-specific (`primaryFallback`); mode only
90
+ * overrides when width/height/size are unset.
91
+ */
92
+ export declare function usePhysicsChartMode(props: PhysicsChartModeProps, primaryFallback: [number, number], options?: {
93
+ hasSimulationMode?: boolean;
94
+ }): PhysicsChartModeResult;
95
+ export declare function renderPhysicsChartState<TDatum extends Datum>(options: {
96
+ data?: TDatum[] | null;
97
+ emptyContent?: BaseChartProps["emptyContent"];
98
+ loading?: BaseChartProps["loading"];
99
+ loadingContent?: BaseChartProps["loadingContent"];
100
+ size: [number, number];
101
+ }): React.ReactElement | null;
102
+ export declare function renderPhysicsFrame(componentName: string, size: [number, number], children: React.ReactNode): React.ReactElement;
103
+ export declare function composePhysicsFrameGraphics(first: FrameGraphicsProp | undefined, second: FrameGraphicsProp | undefined): FrameGraphicsProp | undefined;
104
+ export declare function resolvePhysicsTooltipProps(tooltip: TooltipProp | undefined, frameProps?: Partial<StreamPhysicsFrameProps>): Pick<StreamPhysicsFrameProps, "enableHover" | "tooltipContent">;
105
+ /**
106
+ * HOC → StreamPhysicsFrame shared Semiotic contracts: a11y, observation,
107
+ * click, chrome (title/legend/annotations), primitive styling, emphasis.
108
+ * Prefer HOC props; frameProps fill gaps.
109
+ */
110
+ export declare function resolvePhysicsFrameSharedProps(props: Pick<BaseChartProps, "accessibleTable" | "chartId" | "className" | "color" | "description" | "emphasis" | "hoverRadius" | "onClick" | "onObservation" | "opacity" | "stroke" | "strokeWidth" | "summary" | "title"> & {
111
+ annotations?: StreamPhysicsFrameProps["annotations"];
112
+ autoPlaceAnnotations?: StreamPhysicsFrameProps["autoPlaceAnnotations"];
113
+ background?: StreamPhysicsFrameProps["background"];
114
+ legend?: StreamPhysicsFrameProps["legend"];
115
+ legendPosition?: StreamPhysicsFrameProps["legendPosition"];
116
+ legendLayout?: StreamPhysicsFrameProps["legendLayout"];
117
+ svgAnnotationRules?: StreamPhysicsFrameProps["svgAnnotationRules"];
118
+ }, frameProps: Partial<StreamPhysicsFrameProps> | undefined, semanticItems?: PhysicsSemanticItem[], modeExtras?: {
119
+ chartMode?: ChartMode;
120
+ className?: string;
121
+ title?: string;
122
+ description?: string;
123
+ summary?: string;
124
+ accessibleTable?: boolean;
125
+ enableHover?: boolean;
126
+ margin?: StreamPhysicsFrameProps["margin"];
127
+ }): Partial<StreamPhysicsFrameProps>;
128
+ export type { TooltipProp };