@yuzhouu/canvas-kit 0.1.9 → 0.1.11

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 (375) hide show
  1. package/README.md +204 -101
  2. package/_vendor/canvas-core/bindings/bindingUtil.d.ts +23 -0
  3. package/_vendor/canvas-core/bindings/terminalPorts.d.ts +67 -0
  4. package/_vendor/canvas-core/editor/bindingReactionScope.d.ts +7 -0
  5. package/_vendor/canvas-core/editor/cameraPanSession.d.ts +9 -0
  6. package/_vendor/canvas-core/editor/canvasPanInteraction.d.ts +2 -0
  7. package/_vendor/canvas-core/editor/commands.d.ts +16 -4
  8. package/_vendor/canvas-core/editor/createEditorWithPlugins.d.ts +6 -0
  9. package/_vendor/canvas-core/editor/editor.d.ts +44 -31
  10. package/_vendor/canvas-core/editor/editorComputedHelpers.d.ts +5 -2
  11. package/_vendor/canvas-core/editor/historyManager.d.ts +24 -6
  12. package/_vendor/canvas-core/editor/index.d.ts +2 -2
  13. package/_vendor/canvas-core/editor/interactions.d.ts +41 -8
  14. package/_vendor/canvas-core/editor/managers/bindingManager.d.ts +2 -6
  15. package/_vendor/canvas-core/editor/managers/inputsManager.d.ts +3 -0
  16. package/_vendor/canvas-core/editor/managers/interactionTransientManager.d.ts +0 -26
  17. package/_vendor/canvas-core/editor/managers/queryManager.d.ts +26 -1
  18. package/_vendor/canvas-core/editor/managers/selectionLayoutManager.d.ts +5 -0
  19. package/_vendor/canvas-core/editor/managers/selectionOverlayManager.d.ts +1 -0
  20. package/_vendor/canvas-core/editor/managers/shapeEditingManager.d.ts +4 -0
  21. package/_vendor/canvas-core/editor/managers/shapeGeometryManager.d.ts +3 -2
  22. package/_vendor/canvas-core/editor/managers/shapeHierarchyManager.d.ts +7 -2
  23. package/_vendor/canvas-core/editor/managers/shapeReparenting.d.ts +3 -2
  24. package/_vendor/canvas-core/editor/managers/snapCalculations.d.ts +4 -1
  25. package/_vendor/canvas-core/editor/managers/snapGeometry.d.ts +2 -1
  26. package/_vendor/canvas-core/editor/managers/snapTypes.d.ts +1 -0
  27. package/_vendor/canvas-core/editor/managers/spatialIndexManager.d.ts +1 -0
  28. package/_vendor/canvas-core/editor/operationManager.d.ts +74 -0
  29. package/_vendor/canvas-core/editor/queries/shapeTransforms.d.ts +32 -12
  30. package/_vendor/canvas-core/editor/selection.d.ts +19 -5
  31. package/_vendor/canvas-core/editor/selectionOverlay.d.ts +7 -4
  32. package/_vendor/canvas-core/editor/selectionResizeCapabilities.d.ts +9 -0
  33. package/_vendor/canvas-core/editor/shapeTransformSpace.d.ts +6 -0
  34. package/_vendor/canvas-core/exports/svg.d.ts +3 -3
  35. package/_vendor/canvas-core/geometry/contentCutout.d.ts +8 -0
  36. package/_vendor/canvas-core/geometry/index.d.ts +1 -0
  37. package/_vendor/canvas-core/geometry/mat.d.ts +6 -2
  38. package/_vendor/canvas-core/geometry/polygon.d.ts +7 -0
  39. package/_vendor/canvas-core/geometry/vec.d.ts +0 -2
  40. package/_vendor/canvas-core/index.d.ts +21 -23
  41. package/_vendor/canvas-core/plugins/editorRuntimePlugin.d.ts +4 -10
  42. package/_vendor/canvas-core/plugins/editorRuntimeRegistry.d.ts +19 -0
  43. package/_vendor/canvas-core/plugins/index.d.ts +2 -1
  44. package/_vendor/canvas-core/schema/records.d.ts +2 -7
  45. package/_vendor/canvas-core/schema/snapshots.d.ts +10 -19
  46. package/_vendor/canvas-core/shapes/colors.d.ts +3 -3
  47. package/_vendor/canvas-core/shapes/shapeUtil.d.ts +97 -13
  48. package/_vendor/canvas-core/tools/select/selectToolHelpers.d.ts +18 -8
  49. package/_vendor/canvas-core/tools/select/states/draggingPluginInteractionState.d.ts +16 -0
  50. package/_vendor/canvas-core/tools/select/states/index.d.ts +1 -1
  51. package/_vendor/canvas-core/tools/select/states/pointingSelectionHandleInteractionState.d.ts +3 -2
  52. package/_vendor/canvas-core/tools/select/states/pointingShapeState.d.ts +1 -1
  53. package/_vendor/canvas-core/tools/select/states/resizingState.d.ts +1 -1
  54. package/_vendor/canvas-core/tools/select/states/rotatingState.d.ts +1 -1
  55. package/_vendor/canvas-core/tools/select/states/selectStateNode.d.ts +6 -2
  56. package/_vendor/canvas-core/tools/select/states/translatingState.d.ts +1 -1
  57. package/_vendor/canvas-plugin-sdk/actionRegistry.d.ts +7 -0
  58. package/_vendor/{canvas-core/surfaces → canvas-plugin-sdk}/actions.d.ts +21 -6
  59. package/_vendor/canvas-plugin-sdk/capability.d.ts +16 -0
  60. package/_vendor/canvas-plugin-sdk/chrome.d.ts +52 -0
  61. package/_vendor/canvas-plugin-sdk/chromeRegistry.d.ts +15 -0
  62. package/_vendor/{canvas-core/surfaces → canvas-plugin-sdk}/contextMenu.d.ts +25 -30
  63. package/_vendor/canvas-plugin-sdk/contextMenuRegistry.d.ts +11 -0
  64. package/_vendor/canvas-plugin-sdk/exportRegistry.d.ts +9 -0
  65. package/_vendor/canvas-plugin-sdk/exports.d.ts +26 -0
  66. package/_vendor/canvas-plugin-sdk/importRegistry.d.ts +10 -0
  67. package/_vendor/canvas-plugin-sdk/imports.d.ts +38 -0
  68. package/_vendor/canvas-plugin-sdk/index.d.ts +18 -0
  69. package/_vendor/canvas-plugin-sdk/lifecycle.d.ts +31 -0
  70. package/_vendor/canvas-plugin-sdk/plugin.d.ts +76 -0
  71. package/_vendor/canvas-plugin-sdk/pluginUi.d.ts +37 -0
  72. package/_vendor/canvas-plugin-sdk/productApi.d.ts +28 -0
  73. package/_vendor/canvas-plugin-sdk/services.d.ts +20 -0
  74. package/_vendor/{canvas-core/surfaces → canvas-plugin-sdk}/toolbar.d.ts +48 -5
  75. package/_vendor/canvas-plugin-sdk/toolbarRegistry.d.ts +18 -0
  76. package/_vendor/canvas-react/components/CanvasView.d.ts +2 -2
  77. package/_vendor/canvas-react/components/canvasKeyboardEvents.d.ts +13 -0
  78. package/_vendor/canvas-react/components/useCanvasDomEvents.d.ts +4 -3
  79. package/_vendor/canvas-react/contextMenuRequest.d.ts +19 -0
  80. package/_vendor/canvas-react/host/canvasRenderPlugin.d.ts +22 -5
  81. package/_vendor/canvas-react/host/canvasRenderRuntime.d.ts +13 -0
  82. package/_vendor/canvas-react/host/domEventGuards.d.ts +3 -3
  83. package/_vendor/canvas-react/host/index.d.ts +3 -9
  84. package/_vendor/canvas-react/host/overlayRegistry.d.ts +3 -3
  85. package/_vendor/canvas-react/host/rendererRegistry.d.ts +7 -4
  86. package/_vendor/canvas-react/index.d.ts +1 -0
  87. package/_vendor/plugin-arrow/api.d.ts +33 -0
  88. package/_vendor/plugin-arrow/arrowGeometry.d.ts +7 -4
  89. package/_vendor/plugin-arrow/arrowHeadGeometry.d.ts +8 -0
  90. package/_vendor/plugin-arrow/arrowShapeUtil.d.ts +7 -4
  91. package/_vendor/plugin-arrow/arrowTerminalCommands.d.ts +2 -2
  92. package/_vendor/plugin-arrow/canvasRender.d.ts +2 -2
  93. package/_vendor/plugin-arrow/editorRuntime.d.ts +2 -2
  94. package/_vendor/plugin-arrow/feature.d.ts +2 -3
  95. package/_vendor/plugin-arrow/index.d.ts +5 -2
  96. package/_vendor/plugin-arrow/productRuntime.d.ts +2 -0
  97. package/_vendor/plugin-builtin-clipboard/clipboardChromeContributions.d.ts +2 -0
  98. package/{features/clipboard → _vendor/plugin-builtin-clipboard}/clipboardContextMenuContributions.d.ts +1 -1
  99. package/{features/clipboard → _vendor/plugin-builtin-clipboard}/clipboardContribution.d.ts +2 -2
  100. package/{features/clipboard → _vendor/plugin-builtin-clipboard}/clipboardService.d.ts +3 -3
  101. package/_vendor/plugin-builtin-clipboard/index.d.ts +3 -0
  102. package/_vendor/plugin-builtin-clipboard/plugin.d.ts +1 -0
  103. package/_vendor/plugin-builtin-export/blobDataUrl.d.ts +1 -0
  104. package/_vendor/plugin-builtin-export/canvasExportApi.d.ts +43 -0
  105. package/_vendor/plugin-builtin-export/index.d.ts +8 -0
  106. package/_vendor/plugin-builtin-export/plugin.d.ts +5 -0
  107. package/_vendor/plugin-builtin-export/pngExport.d.ts +15 -0
  108. package/{features/export → _vendor/plugin-builtin-export}/svgExport.d.ts +9 -2
  109. package/_vendor/plugin-builtin-import-host/CanvasImportHost.d.ts +3 -0
  110. package/_vendor/plugin-builtin-import-host/capability.d.ts +1 -0
  111. package/_vendor/plugin-builtin-import-host/index.d.ts +2 -0
  112. package/_vendor/plugin-builtin-import-host/plugin.d.ts +1 -0
  113. package/_vendor/plugin-builtin-tool-actions/capability.d.ts +1 -0
  114. package/_vendor/plugin-builtin-tool-actions/index.d.ts +2 -0
  115. package/_vendor/plugin-builtin-tool-actions/plugin.d.ts +1 -0
  116. package/_vendor/plugin-builtin-tool-actions/toolActions.d.ts +2 -0
  117. package/_vendor/plugin-connector/canvasRender.d.ts +2 -0
  118. package/_vendor/plugin-connector/connectorBindingUtil.d.ts +28 -0
  119. package/_vendor/plugin-connector/connectorBindings.d.ts +8 -0
  120. package/_vendor/plugin-connector/connectorGeometry.d.ts +70 -0
  121. package/_vendor/plugin-connector/connectorHandles.d.ts +12 -0
  122. package/_vendor/plugin-connector/connectorInteractions.d.ts +3 -0
  123. package/_vendor/plugin-connector/connectorMarker.d.ts +7 -0
  124. package/_vendor/plugin-connector/connectorModel.d.ts +43 -0
  125. package/_vendor/plugin-connector/connectorPortInteraction.d.ts +13 -0
  126. package/_vendor/plugin-connector/connectorPorts.d.ts +23 -0
  127. package/_vendor/plugin-connector/connectorRuntime.d.ts +62 -0
  128. package/_vendor/plugin-connector/connectorShapeUtil.d.ts +29 -0
  129. package/_vendor/plugin-connector/connectorTool.d.ts +4 -0
  130. package/_vendor/plugin-connector/constants.d.ts +17 -0
  131. package/_vendor/plugin-connector/editorRuntime.d.ts +7 -0
  132. package/_vendor/plugin-connector/feature.d.ts +4 -0
  133. package/_vendor/plugin-connector/index.d.ts +18 -0
  134. package/_vendor/plugin-connector/orthogonalRoute.d.ts +9 -0
  135. package/_vendor/plugin-connector/productRuntime.d.ts +2 -0
  136. package/_vendor/plugin-connector/quickConnect.d.ts +28 -0
  137. package/_vendor/plugin-connector/types.d.ts +51 -0
  138. package/_vendor/plugin-draw/DrawShapeRenderer.d.ts +5 -2
  139. package/_vendor/plugin-draw/canvasRender.d.ts +2 -2
  140. package/_vendor/plugin-draw/drawGeometry.d.ts +4 -7
  141. package/_vendor/plugin-draw/drawPath.d.ts +7 -1
  142. package/_vendor/plugin-draw/drawShapeUtil.d.ts +2 -2
  143. package/_vendor/plugin-draw/editorRuntime.d.ts +3 -3
  144. package/_vendor/plugin-draw/feature.d.ts +2 -3
  145. package/_vendor/plugin-draw/index.d.ts +4 -3
  146. package/_vendor/plugin-draw/productRuntime.d.ts +2 -0
  147. package/_vendor/plugin-eraser/canvasRender.d.ts +2 -2
  148. package/_vendor/plugin-eraser/editorRuntime.d.ts +2 -2
  149. package/_vendor/plugin-eraser/eraserRuntime.d.ts +12 -0
  150. package/_vendor/plugin-eraser/feature.d.ts +2 -3
  151. package/_vendor/plugin-eraser/index.d.ts +4 -2
  152. package/_vendor/plugin-eraser/productRuntime.d.ts +2 -0
  153. package/_vendor/plugin-frame/api.d.ts +19 -0
  154. package/_vendor/plugin-frame/canvasRender.d.ts +5 -5
  155. package/_vendor/plugin-frame/editorRuntime.d.ts +2 -2
  156. package/_vendor/plugin-frame/feature.d.ts +2 -3
  157. package/_vendor/plugin-frame/frameShapeUtil.d.ts +12 -2
  158. package/_vendor/plugin-frame/index.d.ts +5 -2
  159. package/_vendor/plugin-frame/productRuntime.d.ts +2 -0
  160. package/_vendor/plugin-geo/api.d.ts +27 -0
  161. package/_vendor/plugin-geo/canvasRender.d.ts +5 -5
  162. package/_vendor/plugin-geo/editorRuntime.d.ts +3 -3
  163. package/_vendor/plugin-geo/feature.d.ts +2 -3
  164. package/_vendor/plugin-geo/geoShapeUtil.d.ts +1 -1
  165. package/_vendor/plugin-geo/geoStrokeStyle.d.ts +2 -0
  166. package/_vendor/plugin-geo/geoTools.d.ts +1 -1
  167. package/_vendor/plugin-geo/index.d.ts +8 -5
  168. package/_vendor/plugin-geo/productRuntime.d.ts +2 -0
  169. package/_vendor/plugin-geo/types.d.ts +5 -1
  170. package/_vendor/plugin-group/canvasRender.d.ts +3 -4
  171. package/_vendor/plugin-group/editorRuntime.d.ts +2 -2
  172. package/_vendor/plugin-group/feature.d.ts +2 -3
  173. package/_vendor/plugin-group/groupContributions.d.ts +7 -0
  174. package/_vendor/plugin-group/groupShapeUtil.d.ts +24 -5
  175. package/_vendor/plugin-group/index.d.ts +4 -2
  176. package/_vendor/plugin-group/productRuntime.d.ts +2 -0
  177. package/_vendor/plugin-image/canvasRender.d.ts +2 -2
  178. package/_vendor/plugin-image/cropRuntime.d.ts +1 -1
  179. package/_vendor/plugin-image/cropSession.d.ts +5 -3
  180. package/_vendor/plugin-image/editorRuntime.d.ts +2 -4
  181. package/_vendor/plugin-image/feature.d.ts +2 -3
  182. package/_vendor/plugin-image/imageHostActionContract.d.ts +1 -1
  183. package/_vendor/plugin-image/imageShapeUtil.d.ts +3 -3
  184. package/_vendor/plugin-image/index.d.ts +5 -4
  185. package/_vendor/plugin-image/productRuntime.d.ts +4 -0
  186. package/_vendor/plugin-image/runtimeShared.d.ts +1 -1
  187. package/_vendor/plugin-image/smudge.d.ts +6 -2
  188. package/_vendor/plugin-image/smudgeRuntime.d.ts +1 -1
  189. package/_vendor/plugin-image/styleRuntime.d.ts +6 -1
  190. package/_vendor/plugin-image/toolbarRuntime.d.ts +1 -1
  191. package/_vendor/plugin-laser/canvasRender.d.ts +2 -2
  192. package/_vendor/plugin-laser/editorRuntime.d.ts +2 -2
  193. package/_vendor/plugin-laser/feature.d.ts +2 -3
  194. package/_vendor/plugin-laser/index.d.ts +4 -2
  195. package/_vendor/plugin-laser/laserRuntime.d.ts +18 -0
  196. package/_vendor/plugin-laser/productRuntime.d.ts +2 -0
  197. package/_vendor/plugin-packaging/api.d.ts +74 -0
  198. package/_vendor/plugin-packaging/canvasRender.d.ts +2 -0
  199. package/_vendor/plugin-packaging/editorRuntime.d.ts +2 -0
  200. package/_vendor/plugin-packaging/feature.d.ts +2 -0
  201. package/_vendor/plugin-packaging/index.d.ts +19 -0
  202. package/_vendor/plugin-packaging/packagingArtwork.d.ts +5 -0
  203. package/_vendor/plugin-packaging/packagingDxf.d.ts +9 -0
  204. package/_vendor/plugin-packaging/packagingGeometry.d.ts +74 -0
  205. package/_vendor/plugin-packaging/packagingInteractions.d.ts +2 -0
  206. package/_vendor/plugin-packaging/packagingPdfExporter.d.ts +25 -0
  207. package/_vendor/plugin-packaging/packagingRuntime.d.ts +11 -0
  208. package/_vendor/plugin-packaging/packagingShapeUtil.d.ts +34 -0
  209. package/_vendor/plugin-packaging/packagingStyle.d.ts +10 -0
  210. package/_vendor/plugin-packaging/packagingSvgExporter.d.ts +7 -0
  211. package/_vendor/plugin-packaging/productRuntime.d.ts +2 -0
  212. package/_vendor/plugin-packaging/types.d.ts +168 -0
  213. package/_vendor/plugin-packaging/validation.d.ts +3 -0
  214. package/_vendor/plugin-path/PathDraftOverlay.d.ts +1 -0
  215. package/_vendor/plugin-path/PathEditInsertPreviewOverlay.d.ts +1 -0
  216. package/_vendor/plugin-path/PathShapeRenderer.d.ts +15 -0
  217. package/_vendor/plugin-path/canvasRender.d.ts +2 -0
  218. package/_vendor/plugin-path/editorRuntime.d.ts +7 -0
  219. package/_vendor/plugin-path/feature.d.ts +2 -0
  220. package/_vendor/plugin-path/index.d.ts +8 -0
  221. package/_vendor/plugin-path/pathBoolean.d.ts +13 -0
  222. package/_vendor/plugin-path/pathDraft.d.ts +10 -0
  223. package/_vendor/plugin-path/pathEditPreview.d.ts +11 -0
  224. package/_vendor/plugin-path/pathEditSelection.d.ts +24 -0
  225. package/_vendor/plugin-path/pathEditSnap.d.ts +6 -0
  226. package/_vendor/plugin-path/pathGeometry.d.ts +74 -0
  227. package/_vendor/plugin-path/pathHandles.d.ts +18 -0
  228. package/_vendor/plugin-path/pathHistory.d.ts +13 -0
  229. package/_vendor/plugin-path/pathInteractions.d.ts +7 -0
  230. package/_vendor/plugin-path/pathShapeUtil.d.ts +30 -0
  231. package/_vendor/plugin-path/pathSvg.d.ts +3 -0
  232. package/_vendor/plugin-path/pathTool.d.ts +42 -0
  233. package/_vendor/plugin-path/productRuntime.d.ts +15 -0
  234. package/_vendor/plugin-path/types.d.ts +36 -0
  235. package/_vendor/plugin-text/api.d.ts +20 -0
  236. package/_vendor/plugin-text/canvasRender.d.ts +6 -3
  237. package/_vendor/plugin-text/capabilities.d.ts +2 -0
  238. package/_vendor/plugin-text/editorRuntime.d.ts +3 -3
  239. package/_vendor/plugin-text/feature.d.ts +4 -4
  240. package/_vendor/plugin-text/geoLabelBindingUtil.d.ts +6 -3
  241. package/_vendor/plugin-text/host/RichTextEditingBox.d.ts +4 -1
  242. package/_vendor/plugin-text/host/TiptapTextEditor.d.ts +6 -3
  243. package/_vendor/plugin-text/host/initialTextBackground.d.ts +2 -0
  244. package/_vendor/plugin-text/host/richTextRendering.d.ts +1 -2
  245. package/_vendor/plugin-text/host/textEditingBoxStyle.d.ts +1 -1
  246. package/_vendor/plugin-text/host/textEntryFocus.d.ts +2 -1
  247. package/_vendor/plugin-text/host/textFormattingApi.d.ts +16 -0
  248. package/_vendor/plugin-text/host/textMeasurement.d.ts +10 -2
  249. package/_vendor/plugin-text/host/textShapeRendererRuntime.d.ts +3 -1
  250. package/_vendor/plugin-text/host/tiptapTextEditorController.d.ts +4 -1
  251. package/_vendor/plugin-text/index.d.ts +11 -4
  252. package/_vendor/plugin-text/pathLabelBindingUtil.d.ts +55 -0
  253. package/_vendor/plugin-text/productRuntime.d.ts +6 -0
  254. package/_vendor/plugin-text/richTextUtils.d.ts +9 -2
  255. package/_vendor/plugin-text/shapeWideTextFormatting.d.ts +12 -0
  256. package/_vendor/plugin-text/textFonts.d.ts +6 -3
  257. package/_vendor/plugin-text/textFormatting.d.ts +47 -0
  258. package/_vendor/plugin-text/textFormattingSession.d.ts +6 -0
  259. package/_vendor/plugin-text/textLabelHelpers.d.ts +32 -6
  260. package/_vendor/plugin-text/textLinkPopoverPresentation.d.ts +18 -0
  261. package/_vendor/plugin-text/textShapeHelpers.d.ts +1 -0
  262. package/_vendor/plugin-text/textShapeUtil.d.ts +9 -5
  263. package/_vendor/plugin-text/textTypes.d.ts +1 -0
  264. package/_vendor/signals/core.d.ts +1 -0
  265. package/_vendor/signals/effect.d.ts +0 -4
  266. package/_vendor/signals/index.d.ts +2 -2
  267. package/_vendor/store/history.d.ts +1 -1
  268. package/_vendor/store/store.d.ts +6 -0
  269. package/browser/indexedDb.d.ts +10 -10
  270. package/browser/persistence.d.ts +6 -38
  271. package/chrome/floating/CanvasKitFloatingPortal.d.ts +6 -0
  272. package/chrome/floating/useCanvasKitFloatingPosition.d.ts +11 -0
  273. package/chrome/toolbar/CanvasKitFloatingToolbarLayer.d.ts +1 -1
  274. package/chrome/toolbar/FloatingSelectionToolbarPageSpace.d.ts +5 -3
  275. package/chrome/toolbar/toolbarLabels.d.ts +1 -1
  276. package/chrome/toolbar/useToolbarSurfaces.d.ts +11 -16
  277. package/chrome/types.d.ts +15 -17
  278. package/chrome/useCanvasKitChromeContext.d.ts +12 -15
  279. package/chrome/useChromeSurfaces.d.ts +12 -0
  280. package/chrome/useContextMenuSurface.d.ts +4 -4
  281. package/chrome/useHistoryControls.d.ts +3 -3
  282. package/chrome/usePageControls.d.ts +3 -3
  283. package/controller/canvasKitController.d.ts +5 -16
  284. package/core/index.d.ts +4 -6
  285. package/core/product-controller/canvasProductController.d.ts +42 -12
  286. package/core/product-controller/index.d.ts +1 -1
  287. package/core/runtime/productAssets.d.ts +4 -2
  288. package/core/runtime/productEditor.d.ts +1 -1
  289. package/core/runtime/productServices.d.ts +11 -21
  290. package/core/runtime/runtimeContracts.d.ts +17 -0
  291. package/es-DocrZgUh.mjs +2 -0
  292. package/features/context-menu/contextMenuRuntime.d.ts +4 -4
  293. package/features/image/asset/imageAssetService.d.ts +2 -3
  294. package/features/image/asset/imageBlobStore.d.ts +7 -2
  295. package/features/image/asset/imageFileHelpers.d.ts +0 -6
  296. package/features/image/asset/svgImageAssetInliner.d.ts +1 -1
  297. package/features/image/controller/imageProductController.d.ts +2 -2
  298. package/features/image/imageHostPlugin.d.ts +1 -0
  299. package/features/image/import/ImageImportController.d.ts +3 -1
  300. package/features/image/index.d.ts +1 -3
  301. package/features/image/smudge/imageSmudgeHostActions.d.ts +2 -2
  302. package/features/image/toolbar/imageHostActions.d.ts +17 -7
  303. package/features/image/toolbar/imageToolbarHostBridge.d.ts +1 -1
  304. package/features/text/link/TextLinkHoverPopover.d.ts +6 -0
  305. package/features/text/textHostPlugin.d.ts +5 -0
  306. package/features/text/textSvgAssetInliner.d.ts +3 -0
  307. package/features/text/textSvgAssetPlugin.d.ts +2 -0
  308. package/index.css +1 -1
  309. package/index.d.ts +36 -12
  310. package/index.mjs +111 -96
  311. package/package.json +12 -9
  312. package/plugins/standardCanvasKitPlugins.d.ts +16 -0
  313. package/react/CanvasKitRoot.d.ts +10 -5
  314. package/react/useCanvasKitControllerLifecycle.d.ts +8 -0
  315. package/react/useCanvasKitRuntime.d.ts +2 -4
  316. package/runtime/canvasKitCommandExecutor.d.ts +13 -0
  317. package/runtime/canvasKitPluginContracts.d.ts +34 -0
  318. package/runtime/canvasKitPluginSetup.d.ts +32 -0
  319. package/runtime/canvasKitResourceScope.d.ts +5 -0
  320. package/runtime/canvasKitRuntime.d.ts +48 -19
  321. package/runtime/canvasKitRuntimeContracts.d.ts +34 -0
  322. package/runtime/persistenceCoordinator.d.ts +33 -0
  323. package/_vendor/canvas-core/editor/createEditorWithRuntimePlugins.d.ts +0 -6
  324. package/_vendor/canvas-core/editor/middleMousePanInteraction.d.ts +0 -2
  325. package/_vendor/canvas-core/schema/snapshotSupport.d.ts +0 -43
  326. package/_vendor/canvas-core/tools/select/states/draggingSelectionHandleInteractionState.d.ts +0 -15
  327. package/_vendor/canvas-react/host/actionRegistry.d.ts +0 -15
  328. package/_vendor/canvas-react/host/canvasRenderPluginHost.d.ts +0 -2
  329. package/_vendor/canvas-react/host/canvasRenderPluginHostManifest.d.ts +0 -2
  330. package/_vendor/canvas-react/host/canvasRenderPluginHostRuntime.d.ts +0 -3
  331. package/_vendor/canvas-react/host/canvasRenderPluginHostTypes.d.ts +0 -104
  332. package/_vendor/canvas-react/host/canvasRenderPluginHostValidation.d.ts +0 -11
  333. package/_vendor/canvas-react/host/contextMenuRegistry.d.ts +0 -17
  334. package/_vendor/canvas-react/host/extension.d.ts +0 -37
  335. package/_vendor/canvas-react/host/toolbarRegistry.d.ts +0 -20
  336. package/_vendor/plugin-text/arrowLabelBindingUtil.d.ts +0 -42
  337. package/_vendor/plugin-text/host/RichTextLinkPopover.d.ts +0 -14
  338. package/_vendor/plugin-text/host/RichTextToolbar.d.ts +0 -8
  339. package/_vendor/plugin-text/host/richTextBubbleMenuPositionSync.d.ts +0 -7
  340. package/browser/localSnapshotRestore.d.ts +0 -13
  341. package/builtins/controller/createBuiltInCanvasController.d.ts +0 -16
  342. package/builtins/controller/layerController.d.ts +0 -9
  343. package/builtins/controller/shapeCreationController.d.ts +0 -83
  344. package/builtins/extensions.d.ts +0 -18
  345. package/builtins/index.d.ts +0 -5
  346. package/chrome/useSvgExport.d.ts +0 -15
  347. package/core/api/apiRegistry.d.ts +0 -12
  348. package/core/runtime/productDefinition.d.ts +0 -33
  349. package/core/runtime/productHost.d.ts +0 -20
  350. package/features/actions/actionRuntime.d.ts +0 -21
  351. package/features/clipboard/clipboardHostExtension.d.ts +0 -2
  352. package/features/image/imageHostExtension.d.ts +0 -10
  353. package/features/image/import/useImageImport.d.ts +0 -16
  354. package/features/keyboard/keyboardShortcutHostExtension.d.ts +0 -2
  355. package/features/keyboard/useCanvasKitKeyboardShortcuts.d.ts +0 -6
  356. package/features/persistence/CanvasKitPersistenceNotice.d.ts +0 -4
  357. package/features/persistence/persistenceHostExtension.d.ts +0 -2
  358. package/features/selection/selectionActions.d.ts +0 -20
  359. package/features/selection/selectionContextMenuContributions.d.ts +0 -2
  360. package/features/selection/selectionHostExtension.d.ts +0 -2
  361. package/features/selection/selectionToolbarContributions.d.ts +0 -2
  362. package/features/tool/toolActions.d.ts +0 -2
  363. package/features/tool/toolContextMenuContributions.d.ts +0 -2
  364. package/features/tool/toolHostExtension.d.ts +0 -2
  365. package/features/tool/toolToolbarContributions.d.ts +0 -2
  366. package/features/view/viewActions.d.ts +0 -5
  367. package/features/view/viewContextMenuContributions.d.ts +0 -2
  368. package/features/view/viewHostExtension.d.ts +0 -2
  369. package/host/defaultHostExtensions.d.ts +0 -2
  370. package/product/canvasKitProduct.d.ts +0 -51
  371. package/react/useCanvasKitController.d.ts +0 -5
  372. package/react/useCanvasKitStartup.d.ts +0 -9
  373. package/runtime/canvasKitHostContracts.d.ts +0 -135
  374. package/runtime/canvasKitHostFeatureHooks.d.ts +0 -12
  375. package/runtime/canvasKitRuntimePlan.d.ts +0 -50
@@ -1,5 +1,5 @@
1
1
  import type { Editor, PageId, PageRecord } from "../_vendor/canvas-core/index";
2
- import type { CanvasKitHostFeature } from "../runtime/canvasKitHostContracts";
2
+ import type { ExecuteCanvasKitCommand } from "../runtime/canvasKitCommandExecutor";
3
3
  export interface PageControls {
4
4
  pages: readonly PageRecord[];
5
5
  currentPage: PageRecord | null;
@@ -10,7 +10,7 @@ export interface PageControls {
10
10
  renameCurrentPage(nextName: string): void;
11
11
  selectPage(pageId: PageId): void;
12
12
  }
13
- export declare function usePageControls({ editor, hostFeatures, }: {
13
+ export declare function usePageControls({ editor, executeCommand, }: {
14
14
  editor: Editor;
15
- hostFeatures: readonly CanvasKitHostFeature[];
15
+ executeCommand: ExecuteCanvasKitCommand;
16
16
  }): PageControls;
@@ -1,27 +1,16 @@
1
- import { type CanvasProductController, type CanvasProductControllerContext, type CanvasProductSessionSnapshot } from "../core/product-controller";
2
- import type { CanvasRenderPluginHostRuntime } from "../_vendor/canvas-react/host/index";
3
- import { type BuiltInCanvasController, type BuiltInCanvasControllerSnapshot, type BuiltInCanvasFrameInput, type BuiltInCanvasRectangleInput, type BuiltInCanvasShapeInput, type BuiltInCanvasTextInput } from "../builtins";
4
- import type { CanvasKitControllerSlot } from "../runtime/canvasKitHostContracts";
5
- export type CanvasKitShapeInput = BuiltInCanvasShapeInput;
6
- export type CanvasKitRectangleInput = BuiltInCanvasRectangleInput;
7
- export type CanvasKitTextInput = BuiltInCanvasTextInput;
8
- export type CanvasKitFrameInput = BuiltInCanvasFrameInput;
1
+ import { type CanvasProductController, type CanvasProductControllerSnapshot, type CanvasProductControllerContext, type CanvasProductSessionSnapshot } from "../core/product-controller";
9
2
  export interface CanvasKitBaseController<TToolId extends string = string> extends CanvasProductController<TToolId> {
10
3
  }
11
- export interface CanvasKitControllerSlots {
12
- }
13
- export declare const CANVAS_KIT_TOOL_IDS: readonly ["select", "hand", "rectangle", "ellipse", "diamond", "triangle", "hexagon", "star", "arrow", "draw", "path", "text", "frame", "eraser", "laser"];
4
+ export declare const CANVAS_KIT_TOOL_IDS: readonly ["select", "hand", "rectangle", "ellipse", "rhombus", "triangle", "hexagon", "star", "arrow", "draw", "path", "text", "frame", "eraser", "laser"];
14
5
  export type CanvasKitToolId = (typeof CANVAS_KIT_TOOL_IDS)[number];
15
- export interface CanvasKitControllerSnapshot<TToolId extends string = CanvasKitToolId> extends BuiltInCanvasControllerSnapshot<TToolId> {
6
+ export interface CanvasKitControllerSnapshot<TToolId extends string = CanvasKitToolId> extends CanvasProductControllerSnapshot<TToolId> {
16
7
  productId: string;
17
8
  session: CanvasProductSessionSnapshot<TToolId>;
18
9
  }
19
- export interface CanvasKitController<TToolId extends string = CanvasKitToolId> extends BuiltInCanvasController<TToolId>, CanvasKitControllerSlots {
10
+ export interface CanvasKitController<TToolId extends string = CanvasKitToolId> extends CanvasKitBaseController<TToolId> {
20
11
  snapshot(): CanvasKitControllerSnapshot<TToolId>;
21
12
  }
22
- export interface CanvasKitControllerRuntimeContext extends Omit<CanvasProductControllerContext, "pluginHostRuntime"> {
23
- controllerSlots: readonly CanvasKitControllerSlot<string, unknown>[];
24
- pluginHostRuntime: CanvasRenderPluginHostRuntime;
13
+ export interface CanvasKitControllerRuntimeContext extends CanvasProductControllerContext {
25
14
  }
26
15
  export interface CanvasKitControllerOptions<TToolId extends string = CanvasKitToolId> extends CanvasKitControllerRuntimeContext {
27
16
  assertToolId?: (toolId: string) => asserts toolId is TToolId;
package/core/index.d.ts CHANGED
@@ -1,9 +1,7 @@
1
1
  export { createDefaultCanvasProductEditor } from "./runtime/productEditor";
2
+ export { createCanvasProductController } from "./product-controller";
2
3
  export { cleanupProductAssetsAfterRestore, preloadProductAssets, resolveProductAssetUrl, } from "./runtime/productAssets";
3
- export { createProductApiRegistry, createProductApiToken, } from "./api/apiRegistry";
4
4
  export { createProductServiceRegistry, createProductServiceToken, requireProductService, } from "./runtime/productServices";
5
- export type { CanvasProductRuntimeInitializer, CanvasProductRuntimeInitializerContext, CreateCanvasProductEditorOptions, ProductPersistenceAdapter, ProductPersistenceRestoreResult, ProductPersistenceStatus, } from "./runtime/productDefinition";
6
- export type { ProductActionRegistry, ProductContextMenuRegistry, ProductPluginHostRuntime, ProductToolbarRegistry, } from "./runtime/productHost";
7
- export type { ProductAssetResolverService, ProductServiceFactory, ProductServiceFactoryContext, ProductServiceRegistry, ProductServiceRegistryRuntime, ProductServiceToken, } from "./runtime/productServices";
8
- export type { ProductApiRegistry, ProductApiRegistryRuntime, ProductApiToken, } from "./api/apiRegistry";
9
- export type { CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductCreatePageInput, CanvasProductDocumentRef, CanvasProductShapeData, CanvasProductShapeUpdate, } from "./product-controller";
5
+ export type { CreateCanvasProductEditorOptions, ProductPersistenceAdapter, ProductPersistenceLoadResult, } from "./runtime/runtimeContracts";
6
+ export type { ProductAssetResolverService, ProductServiceFactory, ProductServiceFactoryContext, ProductServiceRegistry, ProductServiceRegistryRuntime, ProductServiceSetup, ProductServiceToken, } from "./runtime/productServices";
7
+ export type { CanvasProductAssetData, CanvasProductController, CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductCommittedChange, CanvasProductCreatePageInput, CanvasProductDocumentRef, CanvasProductLayerNode, CanvasProductShapeData, CanvasProductShapeUpdate, CanvasProductRealtimeChange, CanvasProductSubscriptionOptions, } from "./product-controller";
@@ -1,10 +1,6 @@
1
- import type { Camera, ChangeSource, Editor, LayerOrderDirection, LayerOrderEdge, ReparentShapePlacementFailureReason, ShapeId } from "../../_vendor/canvas-core/index";
1
+ import type { AssetId, Camera, ChangeSource, Editor, LayerOrderDirection, LayerOrderEdge, ReparentShapePlacementFailureReason, ShapeId } from "../../_vendor/canvas-core/index";
2
+ import type { ProductApiRegistry } from "../../_vendor/canvas-plugin-sdk/index";
2
3
  import type { ProductServiceRegistry } from "../runtime/productServices";
3
- import type { ProductApiRegistry } from "../api/apiRegistry";
4
- export interface CanvasProductShapeRef {
5
- id: ShapeId;
6
- type: string;
7
- }
8
4
  export interface CanvasProductShapeData {
9
5
  id: ShapeId;
10
6
  type: string;
@@ -14,6 +10,7 @@ export interface CanvasProductShapeData {
14
10
  x: number;
15
11
  y: number;
16
12
  rotation: number;
13
+ skewX: number;
17
14
  scaleX: number;
18
15
  scaleY: number;
19
16
  opacity: number;
@@ -22,11 +19,18 @@ export interface CanvasProductShapeData {
22
19
  props: Record<string, unknown>;
23
20
  meta: Record<string, unknown>;
24
21
  }
22
+ export interface CanvasProductAssetData {
23
+ id: AssetId;
24
+ type: string;
25
+ props: Record<string, unknown>;
26
+ meta: Record<string, unknown>;
27
+ }
25
28
  export interface CanvasProductShapeUpdate {
26
29
  id: ShapeId;
27
30
  x?: number;
28
31
  y?: number;
29
32
  rotation?: number;
33
+ skewX?: number;
30
34
  scaleX?: number;
31
35
  scaleY?: number;
32
36
  opacity?: number;
@@ -50,6 +54,7 @@ export interface CanvasProductSessionSnapshot<TToolId extends string = string> {
50
54
  currentPageId: string;
51
55
  activeToolId: TToolId;
52
56
  isToolLocked: boolean;
57
+ meta: Record<string, unknown>;
53
58
  pages: CanvasProductSessionPageState[];
54
59
  }
55
60
  export interface CanvasProductDocumentRef {
@@ -66,13 +71,39 @@ export interface CanvasProductControllerSnapshot<TToolId extends string = string
66
71
  session: CanvasProductSessionSnapshot<TToolId>;
67
72
  }
68
73
  export type CanvasProductControllerChangeKey = "document" | "session" | "pageId" | "activeToolId" | "selectedShapeIds" | "shapeCount";
69
- export interface CanvasProductControllerChange<TToolId extends string = string> {
74
+ export interface CanvasProductRealtimeChange<TToolId extends string = string> {
75
+ delivery: "realtime";
70
76
  source: ChangeSource;
71
77
  changes: readonly CanvasProductControllerChangeKey[];
72
78
  snapshot: CanvasProductControllerSnapshot<TToolId>;
73
79
  previousSnapshot: CanvasProductControllerSnapshot<TToolId>;
74
80
  }
81
+ export interface CanvasProductCommittedChange<TToolId extends string = string> {
82
+ delivery: "committed";
83
+ source: ChangeSource;
84
+ commit: {
85
+ id: string;
86
+ revision: number;
87
+ kind: string;
88
+ label: string;
89
+ };
90
+ changes: readonly CanvasProductControllerChangeKey[];
91
+ affectedShapeIds: {
92
+ added: readonly ShapeId[];
93
+ updated: readonly ShapeId[];
94
+ removed: readonly ShapeId[];
95
+ };
96
+ snapshot: CanvasProductControllerSnapshot<TToolId>;
97
+ }
98
+ export type CanvasProductControllerChange<TToolId extends string = string> = CanvasProductRealtimeChange<TToolId> | CanvasProductCommittedChange<TToolId>;
75
99
  export type CanvasProductControllerChangeListener<TToolId extends string = string> = (change: CanvasProductControllerChange<TToolId>) => void;
100
+ export type CanvasProductSubscriptionOptions = {
101
+ delivery?: "realtime";
102
+ scope?: "all" | "document" | "session";
103
+ } | {
104
+ delivery: "committed";
105
+ scope: "document";
106
+ };
76
107
  export interface CanvasProductLayerNode {
77
108
  id: ShapeId;
78
109
  parentId: string;
@@ -81,7 +112,6 @@ export interface CanvasProductLayerNode {
81
112
  childIds: ShapeId[];
82
113
  siblingIndex: number;
83
114
  depth: number;
84
- displayName: string;
85
115
  canReceiveChildren: boolean;
86
116
  isHidden: boolean;
87
117
  isLocked: boolean;
@@ -119,7 +149,7 @@ export interface CanvasProductCreatePageInput {
119
149
  export interface CanvasProductController<TToolId extends string = string> {
120
150
  apis: ProductApiRegistry;
121
151
  snapshot(): CanvasProductControllerSnapshot<TToolId>;
122
- subscribe(listener: CanvasProductControllerChangeListener<TToolId>): () => void;
152
+ subscribe(listener: CanvasProductControllerChangeListener<TToolId>, options?: CanvasProductSubscriptionOptions): () => void;
123
153
  clearHistory(): void;
124
154
  canUndo(): boolean;
125
155
  canRedo(): boolean;
@@ -127,10 +157,13 @@ export interface CanvasProductController<TToolId extends string = string> {
127
157
  redo(): boolean;
128
158
  getDocument(): CanvasProductDocumentRef;
129
159
  updateDocumentMeta(patch: Record<string, unknown>): CanvasProductDocumentRef;
160
+ updateSessionMeta(patch: Record<string, unknown>): CanvasProductSessionSnapshot<TToolId>;
130
161
  select(ids: ShapeId[]): void;
131
162
  selectAll(): void;
132
163
  deleteSelection(): void;
133
164
  deleteShapes(ids: ShapeId[]): void;
165
+ getAsset(id: AssetId): CanvasProductAssetData | null;
166
+ resolveAssetUrl(id: AssetId): string | null;
134
167
  getShape(id: ShapeId): CanvasProductShapeData | null;
135
168
  getShapes(ids?: ShapeId[]): CanvasProductShapeData[];
136
169
  updateShapes(updates: CanvasProductShapeUpdate[]): ShapeId[];
@@ -156,13 +189,10 @@ export interface CanvasProductController<TToolId extends string = string> {
156
189
  updatePageMeta(pageId: string, patch: Record<string, unknown>): string | null;
157
190
  deletePage(pageId: string): boolean;
158
191
  selectPage(pageId: string): void;
159
- exportSelectionSvg(): string | null;
160
- exportPageSvg(): string | null;
161
192
  }
162
193
  export interface CanvasProductControllerContext {
163
194
  editor: Editor;
164
195
  services: ProductServiceRegistry;
165
- pluginHostRuntime: unknown;
166
196
  apis: ProductApiRegistry;
167
197
  productId: string;
168
198
  }
@@ -1,2 +1,2 @@
1
1
  export { createCanvasProductController } from "./canvasProductController";
2
- export type { CanvasProductController, CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductControllerContext, CanvasProductControllerOptions, CanvasProductControllerSnapshot, CanvasProductCreatePageInput, CanvasProductDocumentRef, CanvasProductLayerActionState, CanvasProductLayerNode, CanvasProductLayerPlacement, CanvasProductLayerPlacementFailureReason, CanvasProductLayerPlacementResult, CanvasProductPageRef, CanvasProductShapeData, CanvasProductSessionPageState, CanvasProductSessionSnapshot, CanvasProductShapeRef, CanvasProductShapeUpdate, } from "./canvasProductController";
2
+ export type { CanvasProductAssetData, CanvasProductController, CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductCommittedChange, CanvasProductControllerContext, CanvasProductControllerOptions, CanvasProductControllerSnapshot, CanvasProductCreatePageInput, CanvasProductDocumentRef, CanvasProductLayerActionState, CanvasProductLayerNode, CanvasProductLayerPlacement, CanvasProductLayerPlacementFailureReason, CanvasProductLayerPlacementResult, CanvasProductPageRef, CanvasProductShapeData, CanvasProductSessionPageState, CanvasProductSessionSnapshot, CanvasProductShapeUpdate, CanvasProductRealtimeChange, CanvasProductSubscriptionOptions, } from "./canvasProductController";
@@ -6,13 +6,15 @@ export declare function resolveProductAssetUrl({ assetResolverTokens, assetId, e
6
6
  editor: Editor;
7
7
  services: ProductServiceRegistry;
8
8
  }): string | null;
9
- export declare function preloadProductAssets({ assetResolverTokens, editor, services, }: {
9
+ export declare function preloadProductAssets({ assetResolverTokens, editor, signal, services, }: {
10
10
  assetResolverTokens: readonly ProductServiceToken<ProductAssetResolverService>[];
11
11
  editor: Editor;
12
+ signal: AbortSignal;
12
13
  services: ProductServiceRegistry;
13
14
  }): Promise<void>;
14
- export declare function cleanupProductAssetsAfterRestore({ assetResolverTokens, editor, services, }: {
15
+ export declare function cleanupProductAssetsAfterRestore({ assetResolverTokens, editor, signal, services, }: {
15
16
  assetResolverTokens: readonly ProductServiceToken<ProductAssetResolverService>[];
16
17
  editor: Editor;
18
+ signal: AbortSignal;
17
19
  services: ProductServiceRegistry;
18
20
  }): Promise<void>;
@@ -1,3 +1,3 @@
1
1
  import { type Editor } from "../../_vendor/canvas-core/index";
2
- import type { CreateCanvasProductEditorOptions } from "./productDefinition";
2
+ import type { CreateCanvasProductEditorOptions } from "./runtimeContracts";
3
3
  export declare function createDefaultCanvasProductEditor(options: CreateCanvasProductEditorOptions): Editor;
@@ -1,30 +1,20 @@
1
1
  import type { AssetId, Editor } from "../../_vendor/canvas-core/index";
2
- export interface ProductServiceToken<TService> {
3
- readonly id: string;
4
- readonly __service?: TService;
5
- }
6
- export interface ProductServiceFactoryContext {
7
- productId: string;
8
- }
9
- export interface ProductServiceFactory<TService> {
10
- token: ProductServiceToken<TService>;
11
- create(context: ProductServiceFactoryContext): TService;
12
- dispose?(service: TService): void;
13
- }
14
- export interface ProductServiceRegistry {
15
- get<TService>(token: ProductServiceToken<TService>): TService | null;
16
- }
17
- export interface ProductServiceRegistryRuntime extends ProductServiceRegistry {
2
+ import { createProductServiceToken, requireProductService, type ProductServiceFactory, type ProductServiceFactoryContext, type ProductServiceRegistry, type ProductServiceSetup, type ProductServiceToken } from "../../_vendor/canvas-plugin-sdk/index";
3
+ export { createProductServiceToken, requireProductService, };
4
+ export type { ProductServiceFactory, ProductServiceFactoryContext, ProductServiceRegistry, ProductServiceSetup, ProductServiceToken, };
5
+ export interface ProductServiceRegistryRuntime extends ProductServiceSetup {
18
6
  dispose(): void;
19
7
  }
20
8
  export interface ProductAssetResolverService {
21
9
  resolveAssetUrl(editor: Editor, assetId: AssetId): string | null;
22
- preloadForEditor?(editor: Editor): Promise<void>;
23
- cleanupAfterRestore?(editor: Editor): Promise<void> | void;
10
+ preloadForEditor?(editor: Editor, options: {
11
+ signal: AbortSignal;
12
+ }): Promise<void>;
13
+ cleanupAfterRestore?(editor: Editor, options: {
14
+ signal: AbortSignal;
15
+ }): Promise<void> | void;
24
16
  }
25
- export declare function createProductServiceToken<TService>(id: string): ProductServiceToken<TService>;
26
17
  export declare function createProductServiceRegistry({ factories, productId, }: {
27
- factories: readonly ProductServiceFactory<unknown>[];
18
+ factories?: readonly ProductServiceFactory<unknown>[];
28
19
  productId: string;
29
20
  }): ProductServiceRegistryRuntime;
30
- export declare function requireProductService<TService>(services: ProductServiceRegistry, token: ProductServiceToken<TService>): TService;
@@ -0,0 +1,17 @@
1
+ import type { AssetId, DocumentSnapshot, EditorPlugin, SessionSnapshot } from "../../_vendor/canvas-core/index";
2
+ export interface ProductPersistenceLoadResult {
3
+ documentSnapshot: unknown | null;
4
+ sessionSnapshot: unknown | null;
5
+ }
6
+ export interface ProductPersistenceAdapter {
7
+ load?(options: {
8
+ signal: AbortSignal;
9
+ }): Promise<ProductPersistenceLoadResult>;
10
+ saveDocument?(snapshot: DocumentSnapshot): Promise<void>;
11
+ saveSession?(snapshot: SessionSnapshot): Promise<void>;
12
+ }
13
+ export interface CreateCanvasProductEditorOptions {
14
+ editorPlugins: readonly EditorPlugin[];
15
+ documentMeta?: Record<string, unknown>;
16
+ resolveAssetUrl?: (assetId: AssetId) => string | null;
17
+ }