@yuzhouu/canvas-kit 0.1.7 → 0.1.9

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 (184) hide show
  1. package/README.md +5 -1
  2. package/_vendor/canvas-core/editor/commands.d.ts +10 -1
  3. package/_vendor/canvas-core/editor/createEditorWithRuntimePlugins.d.ts +6 -0
  4. package/_vendor/canvas-core/editor/editor.d.ts +6 -1
  5. package/_vendor/canvas-core/editor/index.d.ts +1 -1
  6. package/_vendor/canvas-core/editor/managers/documentSnapshotManager.d.ts +1 -1
  7. package/_vendor/canvas-core/editor/managers/snapCalculations.d.ts +34 -4
  8. package/_vendor/canvas-core/editor/managers/snapManager.d.ts +7 -0
  9. package/_vendor/canvas-core/editor/managers/snapTypes.d.ts +15 -0
  10. package/_vendor/canvas-core/editor/middleMousePanInteraction.d.ts +2 -0
  11. package/_vendor/canvas-core/index.d.ts +7 -7
  12. package/_vendor/canvas-core/plugins/{editorPlugin.d.ts → editorRuntimePlugin.d.ts} +3 -3
  13. package/_vendor/canvas-core/plugins/index.d.ts +1 -1
  14. package/_vendor/canvas-core/schema/records.d.ts +10 -1
  15. package/_vendor/canvas-core/shapes/shapeUtil.d.ts +13 -4
  16. package/_vendor/canvas-core/shapes/types.d.ts +2 -2
  17. package/_vendor/canvas-core/surfaces/toolbar.d.ts +11 -1
  18. package/_vendor/canvas-react/components/CanvasView.d.ts +3 -3
  19. package/_vendor/canvas-react/components/useCanvasDomEvents.d.ts +2 -0
  20. package/_vendor/canvas-react/host/actionRegistry.d.ts +15 -0
  21. package/_vendor/canvas-react/host/{canvasPlugin.d.ts → canvasRenderPlugin.d.ts} +5 -5
  22. package/_vendor/canvas-react/host/canvasRenderPluginHost.d.ts +2 -0
  23. package/_vendor/canvas-react/host/canvasRenderPluginHostManifest.d.ts +2 -0
  24. package/_vendor/canvas-react/host/canvasRenderPluginHostRuntime.d.ts +3 -0
  25. package/_vendor/canvas-react/host/canvasRenderPluginHostTypes.d.ts +104 -0
  26. package/_vendor/canvas-react/host/canvasRenderPluginHostValidation.d.ts +11 -0
  27. package/_vendor/canvas-react/host/contextMenuRegistry.d.ts +8 -3
  28. package/_vendor/canvas-react/host/domEventGuards.d.ts +3 -3
  29. package/_vendor/canvas-react/host/extension.d.ts +4 -4
  30. package/_vendor/canvas-react/host/index.d.ts +5 -4
  31. package/_vendor/canvas-react/host/overlayRegistry.d.ts +3 -3
  32. package/_vendor/canvas-react/host/rendererRegistry.d.ts +3 -3
  33. package/_vendor/canvas-react/host/toolbarRegistry.d.ts +9 -13
  34. package/_vendor/plugin-arrow/canvasRender.d.ts +2 -0
  35. package/_vendor/plugin-arrow/{editor.d.ts → editorRuntime.d.ts} +2 -2
  36. package/_vendor/plugin-arrow/index.d.ts +2 -2
  37. package/_vendor/plugin-draw/canvasRender.d.ts +2 -0
  38. package/_vendor/plugin-draw/{editor.d.ts → editorRuntime.d.ts} +2 -2
  39. package/_vendor/plugin-draw/index.d.ts +2 -2
  40. package/_vendor/plugin-eraser/canvasRender.d.ts +2 -0
  41. package/_vendor/plugin-eraser/editorRuntime.d.ts +2 -0
  42. package/_vendor/plugin-eraser/index.d.ts +2 -2
  43. package/_vendor/plugin-frame/{canvas.d.ts → canvasRender.d.ts} +2 -2
  44. package/_vendor/plugin-frame/{editor.d.ts → editorRuntime.d.ts} +2 -2
  45. package/_vendor/plugin-frame/index.d.ts +2 -2
  46. package/_vendor/plugin-geo/{canvas.d.ts → canvasRender.d.ts} +2 -2
  47. package/_vendor/plugin-geo/{editor.d.ts → editorRuntime.d.ts} +2 -2
  48. package/_vendor/plugin-geo/geoGeometry.d.ts +19 -3
  49. package/_vendor/plugin-geo/index.d.ts +2 -2
  50. package/_vendor/plugin-geo/types.d.ts +1 -0
  51. package/_vendor/plugin-group/{canvas.d.ts → canvasRender.d.ts} +2 -2
  52. package/_vendor/plugin-group/{editor.d.ts → editorRuntime.d.ts} +2 -2
  53. package/_vendor/plugin-group/index.d.ts +2 -2
  54. package/_vendor/plugin-image/{editor.d.ts → actionIds.d.ts} +0 -8
  55. package/_vendor/plugin-image/canvasRender.d.ts +2 -0
  56. package/_vendor/plugin-image/cropRuntime.d.ts +2 -0
  57. package/_vendor/plugin-image/editorRuntime.d.ts +5 -0
  58. package/_vendor/plugin-image/imageHostActionContract.d.ts +2 -0
  59. package/_vendor/plugin-image/imageShapeUtil.d.ts +2 -1
  60. package/_vendor/plugin-image/imageSvgExporter.d.ts +6 -0
  61. package/_vendor/plugin-image/index.d.ts +8 -4
  62. package/_vendor/plugin-image/runtimeShared.d.ts +5 -0
  63. package/_vendor/plugin-image/smudge.d.ts +63 -0
  64. package/_vendor/plugin-image/smudgeInteractions.d.ts +2 -0
  65. package/_vendor/plugin-image/smudgeRuntime.d.ts +2 -0
  66. package/_vendor/plugin-image/styleRuntime.d.ts +17 -0
  67. package/_vendor/plugin-image/toolbarRuntime.d.ts +3 -0
  68. package/_vendor/plugin-image/types.d.ts +16 -1
  69. package/_vendor/plugin-laser/canvasRender.d.ts +2 -0
  70. package/_vendor/plugin-laser/editorRuntime.d.ts +2 -0
  71. package/_vendor/plugin-laser/index.d.ts +2 -2
  72. package/_vendor/plugin-text/canvasRender.d.ts +5 -0
  73. package/_vendor/plugin-text/editorRuntime.d.ts +5 -0
  74. package/_vendor/plugin-text/host/RichTextLinkPopover.d.ts +14 -0
  75. package/_vendor/plugin-text/host/richTextRendering.d.ts +9 -1
  76. package/_vendor/plugin-text/index.d.ts +2 -0
  77. package/_vendor/plugin-text/richTextLinks.d.ts +3 -0
  78. package/_vendor/plugin-text/richTextUtils.d.ts +2 -1
  79. package/browser/indexedDb.d.ts +10 -0
  80. package/browser/persistence.d.ts +2 -4
  81. package/builtins/controller/createBuiltInCanvasController.d.ts +1 -1
  82. package/builtins/controller/layerController.d.ts +1 -1
  83. package/builtins/controller/shapeCreationController.d.ts +6 -2
  84. package/builtins/index.d.ts +1 -1
  85. package/chrome/toolbar/CanvasKitWheelCapture.d.ts +2 -0
  86. package/chrome/{FloatingSelectionToolbarPageSpace.d.ts → toolbar/FloatingSelectionToolbarPageSpace.d.ts} +1 -1
  87. package/{core/features → chrome}/toolbar/toolbarLabels.d.ts +1 -1
  88. package/chrome/{bindings → toolbar}/useToolbarSurfaces.d.ts +2 -2
  89. package/chrome/types.d.ts +12 -8
  90. package/chrome/useCanvasKitChromeContext.d.ts +6 -4
  91. package/chrome/{bindings/useCanvasKitLayerTree.d.ts → useCanvasKitLayerTree.d.ts} +1 -1
  92. package/chrome/{bindings/useContextMenuSurface.d.ts → useContextMenuSurface.d.ts} +3 -3
  93. package/chrome/useHistoryControls.d.ts +12 -0
  94. package/chrome/usePageControls.d.ts +16 -0
  95. package/chrome/{bindings/useSvgExport.d.ts → useSvgExport.d.ts} +2 -2
  96. package/chrome/useZoomControls.d.ts +9 -0
  97. package/controller/canvasKitController.d.ts +10 -7
  98. package/core/api/apiRegistry.d.ts +12 -0
  99. package/core/index.d.ts +4 -19
  100. package/core/{controller → product-controller}/canvasProductController.d.ts +17 -4
  101. package/core/product-controller/index.d.ts +2 -0
  102. package/core/runtime/productDefinition.d.ts +5 -4
  103. package/core/runtime/productHost.d.ts +5 -2
  104. package/{core/features/actions/canvasActionContext.d.ts → features/actions/actionRuntime.d.ts} +7 -1
  105. package/{core/features → features}/clipboard/clipboardContextMenuContributions.d.ts +1 -1
  106. package/features/clipboard/clipboardContribution.d.ts +11 -0
  107. package/features/clipboard/clipboardHostExtension.d.ts +2 -0
  108. package/{core/features → features}/clipboard/clipboardService.d.ts +3 -3
  109. package/features/context-menu/contextMenuRuntime.d.ts +13 -0
  110. package/{core/features → features}/export/svgExport.d.ts +1 -1
  111. package/features/image/asset/imageAssetService.d.ts +11 -0
  112. package/features/image/{imageBlobStore.d.ts → asset/imageBlobStore.d.ts} +3 -2
  113. package/features/image/asset/imageFileHelpers.d.ts +49 -0
  114. package/features/image/{svgImageAssetInliner.d.ts → asset/svgImageAssetInliner.d.ts} +1 -1
  115. package/features/image/controller/imageProductController.d.ts +27 -0
  116. package/features/image/imageHostExtension.d.ts +10 -5
  117. package/features/image/{ImageImportController.d.ts → import/ImageImportController.d.ts} +3 -3
  118. package/features/image/{useImageImport.d.ts → import/useImageImport.d.ts} +3 -4
  119. package/features/image/index.d.ts +17 -15
  120. package/features/image/smudge/imageSmudgeHostActions.d.ts +10 -0
  121. package/features/image/smudge/imageSmudgeTypes.d.ts +25 -0
  122. package/features/image/toolbar/imageHostActions.d.ts +69 -0
  123. package/features/image/{imageToolbarHostBridge.d.ts → toolbar/imageToolbarHostBridge.d.ts} +2 -2
  124. package/features/keyboard/keyboardShortcutHostExtension.d.ts +2 -0
  125. package/features/keyboard/useCanvasKitKeyboardShortcuts.d.ts +6 -0
  126. package/{react → features/persistence}/CanvasKitPersistenceNotice.d.ts +1 -1
  127. package/features/persistence/persistenceHostExtension.d.ts +2 -0
  128. package/{core/features/actions/canvasActions.d.ts → features/selection/selectionActions.d.ts} +3 -9
  129. package/{core/features/toolbar → features/selection}/selectionContextMenuContributions.d.ts +1 -1
  130. package/features/selection/selectionHostExtension.d.ts +2 -0
  131. package/features/selection/selectionToolbarContributions.d.ts +2 -0
  132. package/features/tool/toolActions.d.ts +2 -0
  133. package/{core/features/toolbar → features/tool}/toolContextMenuContributions.d.ts +1 -1
  134. package/features/tool/toolHostExtension.d.ts +2 -0
  135. package/features/tool/toolToolbarContributions.d.ts +2 -0
  136. package/features/view/viewActions.d.ts +5 -0
  137. package/{core/features/context-menu → features/view}/viewContextMenuContributions.d.ts +1 -1
  138. package/features/view/viewHostExtension.d.ts +2 -0
  139. package/host/defaultHostExtensions.d.ts +2 -0
  140. package/index.d.ts +12 -7
  141. package/index.mjs +96 -76
  142. package/package.json +1 -1
  143. package/product/canvasKitProduct.d.ts +8 -7
  144. package/react/useCanvasKitController.d.ts +1 -1
  145. package/react/useCanvasKitRuntime.d.ts +1 -1
  146. package/runtime/canvasKitHostContracts.d.ts +135 -0
  147. package/runtime/canvasKitHostFeatureHooks.d.ts +12 -0
  148. package/runtime/canvasKitRuntime.d.ts +8 -6
  149. package/runtime/canvasKitRuntimePlan.d.ts +50 -0
  150. package/_vendor/canvas-core/editor/createEditorWithPlugins.d.ts +0 -6
  151. package/_vendor/canvas-react/host/pluginHost.d.ts +0 -2
  152. package/_vendor/canvas-react/host/pluginHostManifest.d.ts +0 -2
  153. package/_vendor/canvas-react/host/pluginHostRuntime.d.ts +0 -3
  154. package/_vendor/canvas-react/host/pluginHostTypes.d.ts +0 -102
  155. package/_vendor/canvas-react/host/pluginHostValidation.d.ts +0 -11
  156. package/_vendor/plugin-arrow/canvas.d.ts +0 -2
  157. package/_vendor/plugin-draw/canvas.d.ts +0 -2
  158. package/_vendor/plugin-eraser/canvas.d.ts +0 -2
  159. package/_vendor/plugin-eraser/editor.d.ts +0 -2
  160. package/_vendor/plugin-image/canvas.d.ts +0 -2
  161. package/_vendor/plugin-laser/canvas.d.ts +0 -2
  162. package/_vendor/plugin-laser/editor.d.ts +0 -2
  163. package/_vendor/plugin-text/canvas.d.ts +0 -5
  164. package/_vendor/plugin-text/editor.d.ts +0 -5
  165. package/chrome/bindings/useCanvasKitChromeControls.d.ts +0 -27
  166. package/core/controller/featureControllerRegistry.d.ts +0 -12
  167. package/core/controller/index.d.ts +0 -4
  168. package/core/features/clipboard/clipboardContribution.d.ts +0 -19
  169. package/core/features/context-menu/contextMenuActions.d.ts +0 -12
  170. package/core/features/context-menu/contextMenuContext.d.ts +0 -6
  171. package/core/features/context-menu/contextMenuContribution.d.ts +0 -4
  172. package/core/features/hostActionIds.d.ts +0 -1
  173. package/core/features/toolbar/toolbarContribution.d.ts +0 -4
  174. package/core/runtime/productContributions.d.ts +0 -9
  175. package/features/image/imageAssetService.d.ts +0 -7
  176. package/features/image/imageFileHelpers.d.ts +0 -35
  177. package/features/image/imageHostActions.d.ts +0 -36
  178. package/features/image/imageProductController.d.ts +0 -22
  179. package/features/image/imageProductToolbarActions.d.ts +0 -2
  180. package/react/useCanvasKitKeyboardShortcuts.d.ts +0 -6
  181. package/runtime/canvasKitHostExtensions.d.ts +0 -19
  182. package/runtime/canvasKitRuntimeInitializer.d.ts +0 -11
  183. /package/chrome/{CanvasKitFloatingToolbarLayer.d.ts → toolbar/CanvasKitFloatingToolbarLayer.d.ts} +0 -0
  184. /package/core/{controller → product-controller}/productLayerTree.d.ts +0 -0
@@ -1,5 +1,5 @@
1
- import type { AssetId, Editor, LandEditorPlugin } from "../../_vendor/canvas-core/index";
2
- import type { ProductFeatureControllerRegistryRuntime } from "../controller/featureControllerRegistry";
1
+ import type { AssetId, Editor, LandEditorRuntimePlugin } from "../../_vendor/canvas-core/index";
2
+ import type { ProductApiRegistryRuntime } from "../api/apiRegistry";
3
3
  import type { ProductPluginHostRuntime } from "./productHost";
4
4
  import type { ProductServiceRegistry } from "./productServices";
5
5
  export interface ProductPersistenceRestoreResult {
@@ -19,12 +19,13 @@ export interface ProductPersistenceAdapter {
19
19
  discardUnsupportedRecords?(editor: Editor): Promise<ProductPersistenceRestoreResult | void>;
20
20
  }
21
21
  export interface CreateCanvasProductEditorOptions {
22
- editorPlugins: readonly LandEditorPlugin[];
22
+ editorRuntimePlugins: readonly LandEditorRuntimePlugin[];
23
+ documentMeta?: Record<string, unknown>;
23
24
  resolveAssetUrl?: (assetId: AssetId) => string | null;
24
25
  }
25
26
  export interface CanvasProductRuntimeInitializerContext<TPluginHostRuntime extends ProductPluginHostRuntime = ProductPluginHostRuntime> {
26
27
  productId: string;
27
- featureControllers: ProductFeatureControllerRegistryRuntime;
28
+ apis: ProductApiRegistryRuntime;
28
29
  editor: Editor;
29
30
  pluginHostRuntime: TPluginHostRuntime;
30
31
  services: ProductServiceRegistry;
@@ -1,10 +1,12 @@
1
1
  import type { ContextMenuContribution, CanvasAction, ToolbarContribution } from "../../_vendor/canvas-core/index";
2
- export interface ProductToolbarRegistry {
2
+ export interface ProductActionRegistry {
3
3
  registerAction(action: CanvasAction): void;
4
4
  registerHostAction(action: CanvasAction): void;
5
- registerContribution(contribution: ToolbarContribution): void;
6
5
  getAction(actionId: string): CanvasAction | null;
7
6
  getDuplicateActionIds(): string[];
7
+ }
8
+ export interface ProductToolbarRegistry {
9
+ registerContribution(contribution: ToolbarContribution): void;
8
10
  getDuplicateContributionIds(): string[];
9
11
  }
10
12
  export interface ProductContextMenuRegistry {
@@ -12,6 +14,7 @@ export interface ProductContextMenuRegistry {
12
14
  getDuplicateContributionIds(): string[];
13
15
  }
14
16
  export interface ProductPluginHostRuntime {
17
+ actionRegistry: ProductActionRegistry;
15
18
  toolbarRegistry: ProductToolbarRegistry;
16
19
  contextMenuRegistry: ProductContextMenuRegistry;
17
20
  }
@@ -1,4 +1,5 @@
1
- import type { Editor, CanvasActionContext } from "../../../_vendor/canvas-core/index";
1
+ import type { CanvasActionContext, Editor } from "../../_vendor/canvas-core/index";
2
+ import type { ProductPluginHostRuntime } from "../../core/runtime/productHost";
2
3
  export declare function createCanvasActionContext({ editor, toolState, selectionState, }: {
3
4
  editor: Editor;
4
5
  toolState: {
@@ -13,3 +14,8 @@ export declare function createCanvasActionContext({ editor, toolState, selection
13
14
  isMixedFrameAndPointHandleSelection: boolean;
14
15
  };
15
16
  }): CanvasActionContext;
17
+ export declare function runCanvasAction({ context, pluginHostRuntime, actionId, }: {
18
+ context: CanvasActionContext;
19
+ pluginHostRuntime: ProductPluginHostRuntime;
20
+ actionId: string;
21
+ }): void;
@@ -1,2 +1,2 @@
1
- import type { ContextMenuContribution } from "../../../_vendor/canvas-core/index";
1
+ import type { ContextMenuContribution } from "../../_vendor/canvas-core/index";
2
2
  export declare const clipboardContextMenuContributions: readonly ContextMenuContribution[];
@@ -0,0 +1,11 @@
1
+ import type { CanvasAction, KeyboardShortcutInput } from "../../_vendor/canvas-core/index";
2
+ import type { ProductServiceRegistry } from "../../core/runtime/productServices";
3
+ export declare const SYSTEM_CLIPBOARD_COPY_ACTION_ID = "system.clipboard.copy";
4
+ export declare const SYSTEM_CLIPBOARD_CUT_ACTION_ID = "system.clipboard.cut";
5
+ export declare const SYSTEM_CLIPBOARD_PASTE_ACTION_ID = "system.clipboard.paste";
6
+ export declare const SYSTEM_CLIPBOARD_PASTE_AT_POINT_ACTION_ID = "system.clipboard.paste-at-point";
7
+ export declare const clipboardActionShortcuts: readonly {
8
+ actionId: string;
9
+ shortcut: KeyboardShortcutInput;
10
+ }[];
11
+ export declare function createClipboardActions(services: ProductServiceRegistry): readonly CanvasAction[];
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createClipboardHostExtension(): CanvasKitHostExtension;
@@ -1,10 +1,10 @@
1
- import type { EditorClipboardPayload } from "../../../_vendor/canvas-core/index";
2
- import { type ProductServiceFactory, type ProductServiceRegistry } from "../../runtime/productServices";
1
+ import type { EditorClipboardPayload } from "../../_vendor/canvas-core/index";
2
+ import { type ProductServiceFactory, type ProductServiceRegistry } from "../../core/runtime/productServices";
3
3
  export interface CanvasClipboardService {
4
4
  write(payload: EditorClipboardPayload): Promise<void>;
5
5
  read(): Promise<EditorClipboardPayload | null>;
6
6
  getMemoryPayload(): EditorClipboardPayload | null;
7
7
  }
8
- export declare const canvasClipboardServiceToken: import("../..").ProductServiceToken<CanvasClipboardService>;
8
+ export declare const canvasClipboardServiceToken: import("../../core").ProductServiceToken<CanvasClipboardService>;
9
9
  export declare function getCanvasClipboardService(services: ProductServiceRegistry): CanvasClipboardService | null;
10
10
  export declare function memoryCanvasClipboardService(): ProductServiceFactory<CanvasClipboardService>;
@@ -0,0 +1,13 @@
1
+ import type { CanvasActionValue, ContextMenuContext, ContextMenuContributionTarget, ContextMenuTarget, Editor } from "../../_vendor/canvas-core/index";
2
+ import type { ProductPluginHostRuntime } from "../../core/runtime/productHost";
3
+ export declare function createContextMenuContext({ editor, menu, }: {
4
+ editor: Editor;
5
+ menu: ContextMenuContext["menu"];
6
+ }): ContextMenuContext;
7
+ export declare function getContextMenuContributionTarget(target: ContextMenuTarget, editor: Editor): ContextMenuContributionTarget;
8
+ export declare function runContextMenuAction({ actionId, context, pluginHostRuntime, value, }: {
9
+ actionId: string;
10
+ context: ContextMenuContext;
11
+ pluginHostRuntime: ProductPluginHostRuntime;
12
+ value?: CanvasActionValue;
13
+ }): void;
@@ -1,4 +1,4 @@
1
- import type { Editor, ExportIntegrityReport, ShapeCapabilityManifest, ShapeId, SvgExportSkippedShape, SvgThemeColorResolver } from "../../../_vendor/canvas-core/index";
1
+ import type { Editor, ExportIntegrityReport, ShapeCapabilityManifest, ShapeId, SvgExportSkippedShape, SvgThemeColorResolver } from "../../_vendor/canvas-core/index";
2
2
  export interface SvgAssetInliner {
3
3
  inline(input: {
4
4
  editor: Editor;
@@ -0,0 +1,11 @@
1
+ import type { Editor } from "../../../_vendor/canvas-core/index";
2
+ import { type ProductAssetResolverService, type ProductServiceFactory } from "../../../core";
3
+ import { type ImageObjectUrlStore } from "./imageBlobStore";
4
+ export interface ImageAssetService extends ProductAssetResolverService {
5
+ objectUrls: ImageObjectUrlStore;
6
+ }
7
+ export interface ImageAssetServiceOptions {
8
+ flushSnapshot?: (editor: Editor) => Promise<void>;
9
+ }
10
+ export declare const imageAssetServiceToken: import("../../../core").ProductServiceToken<ImageAssetService>;
11
+ export declare function localImageAssetService({ flushSnapshot, }?: ImageAssetServiceOptions): ProductServiceFactory<ImageAssetService>;
@@ -1,4 +1,4 @@
1
- import type { AssetId, Editor } from "../../_vendor/canvas-core/index";
1
+ import type { AssetId, Editor } from "../../../_vendor/canvas-core/index";
2
2
  export interface ImageBlobWriteResult {
3
3
  storageKey: string;
4
4
  }
@@ -16,7 +16,8 @@ export declare function readImageBlob(storageKey: string): Promise<Blob | null>;
16
16
  export declare function readImageBlobAsDataUrl(storageKey: string): Promise<string | null>;
17
17
  export declare function deleteImageBlob(storageKey: string): Promise<void>;
18
18
  export declare function getAllImageBlobStorageKeys(): Promise<string[]>;
19
- export declare function getImageAssetStorageKey(editor: Editor, assetId: AssetId): string | null;
19
+ export declare function getLocalImageAssetStorageKey(editor: Editor, assetId: AssetId): string | null;
20
+ export declare function getRemoteImageAssetUrl(editor: Editor, assetId: AssetId): string | null;
20
21
  export declare function getReferencedImageStorageKeys(editor: Editor): Set<string>;
21
22
  export declare function cleanupUnreferencedImageBlobs({ editor, objectUrls, }: {
22
23
  editor: Editor;
@@ -0,0 +1,49 @@
1
+ import type { Editor } from "../../../_vendor/canvas-core/index";
2
+ import { isEditableEventTarget } from "../../../_vendor/canvas-react/index";
3
+ import type { ImageAssetSource } from "../../../_vendor/plugin-image/index";
4
+ export { isEditableEventTarget };
5
+ export interface PreparedImageAssetInput {
6
+ name: string;
7
+ source: ImageAssetSource;
8
+ mimeType: string | null;
9
+ fileSize?: number;
10
+ width: number;
11
+ height: number;
12
+ }
13
+ export interface LocalImageBlobInput {
14
+ blob: Blob;
15
+ name?: string;
16
+ mimeType?: string;
17
+ originalUrl?: string;
18
+ }
19
+ export interface RemoteImageUrlInput {
20
+ url: string;
21
+ name?: string;
22
+ }
23
+ export declare function decodeImageSize(src: string): Promise<{
24
+ width: number;
25
+ height: number;
26
+ }>;
27
+ export declare function getLocalImageAssetInput(input: File | LocalImageBlobInput): Promise<PreparedImageAssetInput>;
28
+ export declare function getRemoteImageAssetInput({ name, url, }: RemoteImageUrlInput): Promise<PreparedImageAssetInput>;
29
+ export declare function getLocalImageAssetInputFromUrl({ name, url, }: RemoteImageUrlInput): Promise<PreparedImageAssetInput>;
30
+ export declare function fitImageSize({ height, width, }: {
31
+ height: number;
32
+ width: number;
33
+ }): {
34
+ w: number;
35
+ h: number;
36
+ };
37
+ export declare function getFirstImageFile(files: Iterable<File>): File | null;
38
+ export declare function getFirstImageFileFromDataTransfer(dataTransfer: DataTransfer | null): File | null;
39
+ export declare function hasImageFileItem(dataTransfer: DataTransfer | null): boolean;
40
+ export declare function getDropPagePoint(editor: Editor, event: DragEvent): import("../../../_vendor/canvas-core/index").Vec;
41
+ export declare function downloadObjectUrl({ filename, url, }: {
42
+ filename: string;
43
+ url: string;
44
+ }): void;
45
+ export declare function openUrlInNewTab(url: string): void;
46
+ export declare function downloadBlob({ blob, filename, }: {
47
+ blob: Blob;
48
+ filename: string;
49
+ }): Promise<void>;
@@ -1,3 +1,3 @@
1
- import type { SvgAssetInliner } from "../../core";
1
+ import type { SvgAssetInliner } from "../../export/svgExport";
2
2
  import type { ImageAssetService } from "./imageAssetService";
3
3
  export declare function createImageSvgAssetInliner(imageAssetService: ImageAssetService): SvgAssetInliner;
@@ -0,0 +1,27 @@
1
+ import type { Editor, ShapeId, Vec } from "../../../_vendor/canvas-core/index";
2
+ import { type ProductServiceRegistry } from "../../../core";
3
+ import { type ImageInsertSource, type ImageInsertStrategy, type ImageInsertSize } from "../toolbar/imageHostActions";
4
+ import type { ImageSmudgeController } from "../smudge/imageSmudgeTypes";
5
+ export interface ImageInsertInput {
6
+ source: ImageInsertSource;
7
+ pagePoint?: Vec;
8
+ size?: ImageInsertSize;
9
+ strategy?: ImageInsertStrategy;
10
+ }
11
+ export interface ImageReplaceInput {
12
+ file: File;
13
+ }
14
+ export interface ImageProductController {
15
+ insertImage(input: ImageInsertInput): Promise<ShapeId | null>;
16
+ replaceSelectedImage(input: ImageReplaceInput): Promise<boolean>;
17
+ downloadSelectedImageOriginal(): Promise<void>;
18
+ smudge: ImageSmudgeController;
19
+ }
20
+ export declare const imageProductControllerToken: import("../../../core").ProductApiToken<ImageProductController>;
21
+ export interface ImageProductControllerRuntimeOptions {
22
+ flushSnapshot?: (editor: Editor) => Promise<void>;
23
+ }
24
+ export declare function createImageProductController({ editor, flushSnapshot, services, }: ImageProductControllerRuntimeOptions & {
25
+ editor: Editor;
26
+ services: ProductServiceRegistry;
27
+ }): ImageProductController | null;
@@ -1,5 +1,10 @@
1
- import type { ProductPersistenceAdapter } from "../../core";
2
- import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostExtensions";
3
- export declare function createImageHostExtension({ flushSnapshot, }: {
4
- flushSnapshot?: ProductPersistenceAdapter["flushSnapshot"];
5
- }): CanvasKitHostExtension;
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ import { type ImageProductController } from "./controller/imageProductController";
3
+ declare module "../../controller/canvasKitController" {
4
+ interface CanvasKitControllerSlots {
5
+ image: ImageProductController | null;
6
+ }
7
+ }
8
+ export declare function createImageHostExtension(): CanvasKitHostExtension<{
9
+ image: ImageProductController | null;
10
+ }>;
@@ -1,6 +1,6 @@
1
- import type { Editor } from "../../_vendor/canvas-core/index";
2
- import type { ImageAssetService } from "./imageAssetService";
3
- import type { ImageToolbarHostBridge } from "./imageToolbarHostBridge";
1
+ import type { Editor } from "../../../_vendor/canvas-core/index";
2
+ import type { ImageAssetService } from "../asset/imageAssetService";
3
+ import type { ImageToolbarHostBridge } from "../toolbar/imageToolbarHostBridge";
4
4
  export declare const ImageImportController: import("react").NamedExoticComponent<{
5
5
  editor: Editor;
6
6
  hostBridge?: ImageToolbarHostBridge;
@@ -1,12 +1,11 @@
1
- import type { Editor, ShapeId, Vec } from "../../_vendor/canvas-core/index";
2
- import { type ImageImportSource, type ImageInsertSize } from "./imageHostActions";
3
- import type { ImageAssetService } from "./imageAssetService";
1
+ import type { Editor, ShapeId, Vec } from "../../../_vendor/canvas-core/index";
2
+ import { type ImageInsertSize } from "../toolbar/imageHostActions";
3
+ import type { ImageAssetService } from "../asset/imageAssetService";
4
4
  export interface ImageImportControls {
5
5
  insertImageFromFile(input: {
6
6
  file: File;
7
7
  pagePoint?: Vec;
8
8
  size?: ImageInsertSize;
9
- source: ImageImportSource;
10
9
  }): Promise<ShapeId | null>;
11
10
  replaceSelectedImage(file: File): Promise<void>;
12
11
  }
@@ -1,15 +1,17 @@
1
- export { ImageImportController } from "./ImageImportController";
2
- export { imageProductControllerToken, registerImageProductController, } from "./imageProductController";
3
- export type { ImageInsertInput, ImageProductController, ImageProductControllerRuntimeOptions, ImageReplaceInput, } from "./imageProductController";
4
- export { imageAssetServiceToken, localImageAssetService, } from "./imageAssetService";
5
- export type { ImageAssetService } from "./imageAssetService";
6
- export { registerImageProductToolbarActions } from "./imageProductToolbarActions";
7
- export { createImageToolbarHostBridge, ImageToolbarHostBridge, imageToolbarHostBridgeService, imageToolbarHostBridgeToken, } from "./imageToolbarHostBridge";
8
- export type { ImageToolbarHostBridgeHandlers } from "./imageToolbarHostBridge";
9
- export { cleanupUnreferencedImageBlobs, createImageObjectUrlStore, createImageStorageKey, deleteImageBlob, getAllImageBlobStorageKeys, getImageAssetStorageKey, getReferencedImageStorageKeys, readImageBlob, readImageBlobAsDataUrl, writeImageBlob, } from "./imageBlobStore";
10
- export type { ImageBlobWriteResult, ImageObjectUrlStore, } from "./imageBlobStore";
11
- export { downloadSelectedImageOriginal, getDropPagePoint, getFirstImageFile, getFirstImageFileFromDataTransfer, hasImageFileItem, insertImageFileIntoEditor, isEditableEventTarget, registerImageToolbarActions, replaceSelectedImageFromFile, } from "./imageHostActions";
12
- export type { ImageImportSource, ImageInsertSize, InsertImageFileInput, ReplaceSelectedImageFileInput, } from "./imageHostActions";
13
- export { createImageSvgAssetInliner } from "./svgImageAssetInliner";
14
- export { useImageImport } from "./useImageImport";
15
- export type { ImageImportControls } from "./useImageImport";
1
+ export { ImageImportController } from "./import/ImageImportController";
2
+ export { createImageProductController, imageProductControllerToken, } from "./controller/imageProductController";
3
+ export type { ImageInsertInput, ImageProductController, ImageProductControllerRuntimeOptions, ImageReplaceInput, } from "./controller/imageProductController";
4
+ export type { ImageShapeCrop, ImageSmudgeBrush, ImageSmudgeConfirmPayload, ImageSmudgeController, ImageSmudgeStroke, ImageSmudgeStrokePoint, } from "./smudge/imageSmudgeTypes";
5
+ export { imageAssetServiceToken, localImageAssetService, } from "./asset/imageAssetService";
6
+ export type { ImageAssetService } from "./asset/imageAssetService";
7
+ export { createImageToolbarHostBridge, ImageToolbarHostBridge, imageToolbarHostBridgeService, imageToolbarHostBridgeToken, } from "./toolbar/imageToolbarHostBridge";
8
+ export type { ImageToolbarHostBridgeHandlers } from "./toolbar/imageToolbarHostBridge";
9
+ export { cleanupUnreferencedImageBlobs, createImageObjectUrlStore, createImageStorageKey, deleteImageBlob, getAllImageBlobStorageKeys, getLocalImageAssetStorageKey, getRemoteImageAssetUrl, getReferencedImageStorageKeys, readImageBlob, readImageBlobAsDataUrl, writeImageBlob, } from "./asset/imageBlobStore";
10
+ export type { ImageBlobWriteResult, ImageObjectUrlStore, } from "./asset/imageBlobStore";
11
+ export { downloadSelectedImageOriginal, createImageToolbarActions, getDropPagePoint, getFirstImageFile, getFirstImageFileFromDataTransfer, hasImageFileItem, insertImageIntoEditor, isEditableEventTarget, replaceSelectedImageFromFile, } from "./toolbar/imageHostActions";
12
+ export type { ImageInsertSource, ImageInsertSize, ImageInsertStrategy, InsertImageInput, ReplaceSelectedImageFileInput, } from "./toolbar/imageHostActions";
13
+ export { confirmImageSmudgeSession } from "./smudge/imageSmudgeHostActions";
14
+ export type { ConfirmImageSmudgeSessionInput } from "./smudge/imageSmudgeHostActions";
15
+ export { createImageSvgAssetInliner } from "./asset/svgImageAssetInliner";
16
+ export { useImageImport } from "./import/useImageImport";
17
+ export type { ImageImportControls } from "./import/useImageImport";
@@ -0,0 +1,10 @@
1
+ import type { Editor } from "../../../_vendor/canvas-core/index";
2
+ import type { ImageObjectUrlStore } from "../asset/imageBlobStore";
3
+ import type { ImageSmudgeConfirmPayload } from "./imageSmudgeTypes";
4
+ export interface ConfirmImageSmudgeSessionInput {
5
+ editor: Editor;
6
+ imageObjectUrls: ImageObjectUrlStore;
7
+ flushSnapshot?: (editor: Editor) => Promise<void>;
8
+ replace?: boolean;
9
+ }
10
+ export declare function confirmImageSmudgeSession({ editor, imageObjectUrls, flushSnapshot, replace, }: ConfirmImageSmudgeSessionInput): Promise<ImageSmudgeConfirmPayload | null>;
@@ -0,0 +1,25 @@
1
+ import type { AssetId, ShapeId } from "../../../_vendor/canvas-core/index";
2
+ import type { ImageShapeCrop, ImageSmudgeBrush, ImageSmudgeStroke } from "../../../_vendor/plugin-image/index";
3
+ export type { ImageShapeCrop, ImageSmudgeBrush, ImageSmudgeStroke, ImageSmudgeStrokePoint, } from "../../../_vendor/plugin-image/index";
4
+ export interface ImageSmudgeConfirmPayload {
5
+ shapeId: ShapeId;
6
+ sourceAssetId: AssetId | null;
7
+ imageBlob: Blob;
8
+ maskBlob?: Blob;
9
+ width: number;
10
+ height: number;
11
+ crop: ImageShapeCrop | null;
12
+ strokes: ImageSmudgeStroke[];
13
+ }
14
+ export interface ImageSmudgeController {
15
+ start(input?: {
16
+ shapeId?: ShapeId;
17
+ brush?: Partial<ImageSmudgeBrush>;
18
+ }): boolean;
19
+ setBrush(brush: Partial<ImageSmudgeBrush>): boolean;
20
+ cancel(): void;
21
+ confirm(input?: {
22
+ replace?: boolean;
23
+ }): Promise<ImageSmudgeConfirmPayload | null>;
24
+ isActive(): boolean;
25
+ }
@@ -0,0 +1,69 @@
1
+ import { type AssetId, type CanvasAction, type Editor, type ShapeId, Vec } from "../../../_vendor/canvas-core/index";
2
+ import { type ImageAssetRecord, type ImageShapeRecord } from "../../../_vendor/plugin-image/index";
3
+ import { type ImageObjectUrlStore } from "../asset/imageBlobStore";
4
+ import type { ImageToolbarHostBridge } from "./imageToolbarHostBridge";
5
+ import { type LocalImageBlobInput } from "../asset/imageFileHelpers";
6
+ export { getDropPagePoint, getFirstImageFile, getFirstImageFileFromDataTransfer, hasImageFileItem, isEditableEventTarget, } from "../asset/imageFileHelpers";
7
+ export type ImageInsertStrategy = "auto" | "copy" | "link";
8
+ export type ImageInsertSource = {
9
+ type: "file";
10
+ file: File;
11
+ } | ({
12
+ type: "blob";
13
+ } & LocalImageBlobInput) | {
14
+ type: "url";
15
+ url: string;
16
+ name?: string;
17
+ altText?: string;
18
+ };
19
+ export interface ImageInsertSize {
20
+ w: number;
21
+ h: number;
22
+ }
23
+ export interface InsertImageInput {
24
+ editor: Editor;
25
+ imageObjectUrls: ImageObjectUrlStore;
26
+ source: ImageInsertSource;
27
+ pagePoint?: Vec;
28
+ size?: ImageInsertSize;
29
+ flushSnapshot?: (editor: Editor) => Promise<void>;
30
+ strategy?: ImageInsertStrategy;
31
+ }
32
+ export interface ReplaceSelectedImageFileInput {
33
+ editor: Editor;
34
+ file: File;
35
+ imageObjectUrls: ImageObjectUrlStore;
36
+ flushSnapshot?: (editor: Editor) => Promise<void>;
37
+ }
38
+ export declare function insertImageIntoEditor({ editor, imageObjectUrls, pagePoint, size, flushSnapshot, source, strategy, }: InsertImageInput): Promise<ShapeId | null>;
39
+ export declare function localizeRemoteImageAsset({ assetId, editor, flushSnapshot, imageObjectUrls, source, }: {
40
+ assetId: AssetId;
41
+ editor: Editor;
42
+ flushSnapshot?: (editor: Editor) => Promise<void>;
43
+ imageObjectUrls: ImageObjectUrlStore;
44
+ source: Extract<ImageInsertSource, {
45
+ type: "url";
46
+ }>;
47
+ }): Promise<void>;
48
+ export declare function replaceSelectedImageFromFile({ editor, file, imageObjectUrls, flushSnapshot, }: ReplaceSelectedImageFileInput): Promise<void>;
49
+ export declare function downloadSelectedImageOriginal({ editor, imageObjectUrls, }: {
50
+ editor: Editor;
51
+ imageObjectUrls: ImageObjectUrlStore;
52
+ }): Promise<void>;
53
+ export declare function replaceImageShapeFromBlob({ blob, editor, flushSnapshot, imageObjectUrls, name, shape, }: {
54
+ blob: Blob;
55
+ editor: Editor;
56
+ flushSnapshot?: (editor: Editor) => Promise<void>;
57
+ imageObjectUrls: ImageObjectUrlStore;
58
+ name: string;
59
+ shape: ImageShapeRecord;
60
+ }): Promise<void>;
61
+ export declare function readImageAssetSourceBlob({ asset, imageObjectUrls, }: {
62
+ asset: ImageAssetRecord;
63
+ imageObjectUrls: ImageObjectUrlStore;
64
+ }): Promise<Blob | null>;
65
+ export declare function createImageToolbarActions({ hostBridge, imageObjectUrls, }: {
66
+ hostBridge: ImageToolbarHostBridge;
67
+ imageObjectUrls: ImageObjectUrlStore;
68
+ }): readonly CanvasAction[];
69
+ export declare function isImageBlob(blob: Blob): boolean;
@@ -1,4 +1,4 @@
1
- import { type ProductServiceFactory } from "../../core";
1
+ import { type ProductServiceFactory } from "../../../core";
2
2
  export interface ImageToolbarHostBridgeHandlers {
3
3
  openInsertFilePicker(): void;
4
4
  openReplaceFilePicker(): void;
@@ -10,5 +10,5 @@ export declare class ImageToolbarHostBridge {
10
10
  openReplaceFilePicker(): void;
11
11
  }
12
12
  export declare function createImageToolbarHostBridge(): ImageToolbarHostBridge;
13
- export declare const imageToolbarHostBridgeToken: import("../../core").ProductServiceToken<ImageToolbarHostBridge>;
13
+ export declare const imageToolbarHostBridgeToken: import("../../../core").ProductServiceToken<ImageToolbarHostBridge>;
14
14
  export declare function imageToolbarHostBridgeService(): ProductServiceFactory<ImageToolbarHostBridge>;
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createKeyboardShortcutHostExtension(): CanvasKitHostExtension;
@@ -0,0 +1,6 @@
1
+ import type { Editor } from "../../_vendor/canvas-core/index";
2
+ import type { CanvasRenderPluginHostRuntime } from "../../_vendor/canvas-react/host/index";
3
+ export declare function useCanvasKitKeyboardShortcuts({ editor, pluginHostRuntime, }: {
4
+ editor: Editor;
5
+ pluginHostRuntime: CanvasRenderPluginHostRuntime;
6
+ }): void;
@@ -1,4 +1,4 @@
1
- import type { CanvasKitPersistenceControls } from "../chrome/types";
1
+ import type { CanvasKitPersistenceControls } from "../../chrome/types";
2
2
  export declare function CanvasKitPersistenceNotice({ persistence, }: {
3
3
  persistence: CanvasKitPersistenceControls;
4
4
  }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createPersistenceHostExtension(): CanvasKitHostExtension;
@@ -1,5 +1,4 @@
1
- import { type CanvasAction, type CanvasActionContext, type KeyboardShortcutInput } from "../../../_vendor/canvas-core/index";
2
- import type { ProductPluginHostRuntime } from "../../runtime/productHost";
1
+ import type { CanvasAction, CanvasActionContext, KeyboardShortcutInput } from "../../_vendor/canvas-core/index";
3
2
  export declare const SYSTEM_SELECTION_DELETE_ACTION_ID = "system.selection.delete";
4
3
  export declare const SYSTEM_SELECTION_DUPLICATE_ACTION_ID = "system.selection.duplicate";
5
4
  export declare const SYSTEM_SELECTION_GROUP_ACTION_ID = "system.selection.group";
@@ -13,14 +12,9 @@ export declare const SYSTEM_SELECTION_SEND_BACKWARD_ACTION_ID = "system.selectio
13
12
  export declare const SYSTEM_SELECTION_BRING_FORWARD_ACTION_ID = "system.selection.bring-forward";
14
13
  export declare const SYSTEM_SELECTION_BRING_TO_FRONT_ACTION_ID = "system.selection.bring-to-front";
15
14
  export declare const SYSTEM_SELECTION_SET_OPACITY_ACTION_ID = "system.selection.set-opacity";
16
- export declare const canvasActionShortcuts: readonly {
15
+ export declare const selectionActionShortcuts: readonly {
17
16
  actionId: string;
18
17
  shortcut: KeyboardShortcutInput;
19
18
  }[];
20
- export declare function runCanvasAction({ context, pluginHostRuntime, actionId, }: {
21
- context: CanvasActionContext;
22
- pluginHostRuntime: ProductPluginHostRuntime;
23
- actionId: string;
24
- }): void;
25
19
  export declare function isSingleSelectedFrameChild(context: CanvasActionContext): boolean;
26
- export declare const canvasActions: readonly CanvasAction[];
20
+ export declare const selectionActions: readonly CanvasAction[];
@@ -1,2 +1,2 @@
1
- import type { ContextMenuContribution } from "../../../_vendor/canvas-core/index";
1
+ import type { ContextMenuContribution } from "../../_vendor/canvas-core/index";
2
2
  export declare const selectionContextMenuContributions: readonly ContextMenuContribution[];
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createSelectionHostExtension(): CanvasKitHostExtension;
@@ -0,0 +1,2 @@
1
+ import type { ToolbarContribution } from "../../_vendor/canvas-core/index";
2
+ export declare const selectionToolbarContributions: readonly ToolbarContribution[];
@@ -0,0 +1,2 @@
1
+ import { type CanvasAction } from "../../_vendor/canvas-core/index";
2
+ export declare const toolActions: readonly CanvasAction[];
@@ -1,2 +1,2 @@
1
- import { type ContextMenuContribution } from "../../../_vendor/canvas-core/index";
1
+ import { type ContextMenuContribution } from "../../_vendor/canvas-core/index";
2
2
  export declare const toolContextMenuContributions: readonly ContextMenuContribution[];
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createToolHostExtension(): CanvasKitHostExtension;
@@ -0,0 +1,2 @@
1
+ import { type ToolbarContribution } from "../../_vendor/canvas-core/index";
2
+ export declare const toolToolbarContributions: readonly ToolbarContribution[];
@@ -0,0 +1,5 @@
1
+ import type { CanvasAction } from "../../_vendor/canvas-core/index";
2
+ export declare const SYSTEM_VIEW_ZOOM_IN_ACTION_ID = "system.view.zoom-in";
3
+ export declare const SYSTEM_VIEW_ZOOM_OUT_ACTION_ID = "system.view.zoom-out";
4
+ export declare const SYSTEM_VIEW_RESET_ZOOM_ACTION_ID = "system.view.reset-zoom";
5
+ export declare const viewActions: readonly CanvasAction[];
@@ -1,2 +1,2 @@
1
- import type { ContextMenuContribution } from "../../../_vendor/canvas-core/index";
1
+ import type { ContextMenuContribution } from "../../_vendor/canvas-core/index";
2
2
  export declare const viewContextMenuContributions: readonly ContextMenuContribution[];
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../../runtime/canvasKitHostContracts";
2
+ export declare function createViewHostExtension(): CanvasKitHostExtension;
@@ -0,0 +1,2 @@
1
+ import type { CanvasKitHostExtension } from "../runtime/canvasKitHostContracts";
2
+ export declare function createCanvasKitHostExtensions(): readonly CanvasKitHostExtension[];
package/index.d.ts CHANGED
@@ -1,18 +1,23 @@
1
1
  export { createCustomShapeColor, createThemeShapeColor, getThemeColorTokenName, isCustomShapeColorRef, isThemeShapeColorRef, resolveShapeColor, shapeColorToCssColor, } from "./_vendor/canvas-core/index";
2
2
  export { DEFAULT_TEXT_FONT, HOST_TEXT_FONT, createDefaultTextFontCatalog, createDefaultTextExtensionOptions, } from "./_vendor/plugin-text/index";
3
3
  export type { TextExtensionOptions, TextFontDefinition, TextFontFaceSource, TextFontSource, TextStylesheetFontSource, TextSystemFontSource, } from "./_vendor/plugin-text/index";
4
- export type { CustomShapeColorRef, ShapeColor, ShapeColorRef, ThemeColorSlot, ThemeColorTokenName, ThemeShapeColorRef, } from "./_vendor/canvas-core/index";
5
- export { CanvasKitFloatingToolbarLayer, } from "./chrome/CanvasKitFloatingToolbarLayer";
6
- export { FloatingSelectionToolbarPageSpace, } from "./chrome/FloatingSelectionToolbarPageSpace";
7
- export { useCanvasKitLayerTree, } from "./chrome/bindings/useCanvasKitLayerTree";
4
+ export type { AssetId, CustomShapeColorRef, ShapeColor, ShapeColorRef, ThemeColorSlot, ThemeColorTokenName, ThemeShapeColorRef, } from "./_vendor/canvas-core/index";
5
+ export { CanvasKitFloatingToolbarLayer, } from "./chrome/toolbar/CanvasKitFloatingToolbarLayer";
6
+ export { FloatingSelectionToolbarPageSpace, } from "./chrome/toolbar/FloatingSelectionToolbarPageSpace";
7
+ export { useCanvasKitWheelCapture, } from "./chrome/toolbar/CanvasKitWheelCapture";
8
+ export { useCanvasKitLayerTree, } from "./chrome/useCanvasKitLayerTree";
8
9
  import "./index.css";
9
10
  export { createCanvasKitController, createCanvasKitControllerWithTools, } from "./controller/canvasKitController";
10
11
  export { CanvasKitRoot } from "./react/CanvasKitRoot";
11
12
  export { defineCanvasKit } from "./product/canvasKitProduct";
12
13
  export { CANVAS_KIT_TOOL_IDS } from "./controller/canvasKitController";
13
- export type { CanvasKitController, CanvasKitControllerRuntimeContext, CanvasKitControllerOptions, CanvasKitControllerSnapshot, CanvasKitControllerWithToolsOptions, CanvasKitBaseController, CanvasKitControllerWithTools, CanvasKitFrameInput, CanvasKitShapeInput, CanvasKitTextInput, CanvasKitToolId, } from "./controller/canvasKitController";
14
+ export type { CanvasKitController, CanvasKitControllerRuntimeContext, CanvasKitControllerOptions, CanvasKitControllerSnapshot, CanvasKitControllerWithToolsOptions, CanvasKitBaseController, CanvasKitControllerWithTools, CanvasKitFrameInput, CanvasKitRectangleInput, CanvasKitShapeInput, CanvasKitTextInput, CanvasKitToolId, } from "./controller/canvasKitController";
14
15
  export type { BuiltInCanvasArrowInput as CanvasKitArrowInput } from "./builtins";
15
- export type { CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductShapeData, CanvasProductShapeUpdate, } from "./core";
16
+ export type { CanvasProductControllerChange, CanvasProductControllerChangeKey, CanvasProductControllerChangeListener, CanvasProductCreatePageInput, CanvasProductDocumentRef, CanvasProductShapeData, CanvasProductShapeUpdate, } from "./core";
16
17
  export type { CanvasKitChromeContext, CanvasKitContextMenuState, CanvasKitGridControls, CanvasKitLayerNode, CanvasKitLayerTreeSource, CanvasKitPersistenceControls, CanvasKitToolbarActionState, CanvasKitToolbarRuntime, ContextMenuCommandItem, ContextMenuItem, ContextMenuSection, EditorSelectionState, HistoryControls, PageControls, ShapeId, SvgExportControls, CanvasActionValue, CanvasActionContext, ToolbarGroup, ToolbarItem, ToolbarSurfaces, ZoomControlsState, } from "./chrome/types";
17
18
  export type { CanvasKitDocumentSeed, CanvasKitExtensionOptions, CanvasKitProduct, CanvasKitProductOptions, CanvasKitChromeRenderer, } from "./product/canvasKitProduct";
18
- export type { ExportStatus, ProductPersistenceStatus, } from "./core";
19
+ export type { CanvasKitHostExtension } from "./runtime/canvasKitHostContracts";
20
+ export type { ProductPersistenceStatus, } from "./core";
21
+ export type { ExportStatus } from "./features/export/svgExport";
22
+ export { imageProductControllerToken } from "./features/image";
23
+ export type { ImageInsertInput, ImageInsertSource, ImageInsertStrategy, ImageProductController, ImageShapeCrop, ImageSmudgeBrush, ImageSmudgeConfirmPayload, ImageSmudgeController, ImageSmudgeStroke, ImageSmudgeStrokePoint, } from "./features/image";