@nextcloud/excalidraw-common 0.18.0-4e1c0ab

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 (408) hide show
  1. package/README.md +19 -0
  2. package/dist/dev/index.js +3784 -0
  3. package/dist/dev/index.js.map +7 -0
  4. package/dist/prod/index.js +4 -0
  5. package/dist/types/common/debug.d.ts +21 -0
  6. package/dist/types/common/src/appEventBus.d.ts +27 -0
  7. package/dist/types/common/src/binary-heap.d.ts +12 -0
  8. package/dist/types/common/src/bounds.d.ts +10 -0
  9. package/dist/types/common/src/colors.d.ts +82 -0
  10. package/dist/types/common/src/constants.d.ts +355 -0
  11. package/dist/types/common/src/editorInterface.d.ts +34 -0
  12. package/dist/types/common/src/emitter.d.ts +16 -0
  13. package/dist/types/common/src/font-metadata.d.ts +46 -0
  14. package/dist/types/common/src/index.d.ts +17 -0
  15. package/dist/types/common/src/keys.d.ts +189 -0
  16. package/dist/types/common/src/points.d.ts +9 -0
  17. package/dist/types/common/src/promise-pool.d.ts +6 -0
  18. package/dist/types/common/src/queue.d.ts +9 -0
  19. package/dist/types/common/src/random.d.ts +3 -0
  20. package/dist/types/common/src/url.d.ts +7 -0
  21. package/dist/types/common/src/utility-types.d.ts +37 -0
  22. package/dist/types/common/src/utils.d.ts +279 -0
  23. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  24. package/dist/types/element/src/Scene.d.ts +82 -0
  25. package/dist/types/element/src/align.d.ts +8 -0
  26. package/dist/types/element/src/arrowheads.d.ts +3 -0
  27. package/dist/types/element/src/arrows/focus.d.ts +27 -0
  28. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  29. package/dist/types/element/src/binding.d.ts +129 -0
  30. package/dist/types/element/src/bounds.d.ts +81 -0
  31. package/dist/types/element/src/collision.d.ts +37 -0
  32. package/dist/types/element/src/comparisons.d.ts +8 -0
  33. package/dist/types/element/src/containerCache.d.ts +11 -0
  34. package/dist/types/element/src/cropElement.d.ts +19 -0
  35. package/dist/types/element/src/delta.d.ts +228 -0
  36. package/dist/types/element/src/distance.d.ts +3 -0
  37. package/dist/types/element/src/distribute.d.ts +8 -0
  38. package/dist/types/element/src/dragElements.d.ts +33 -0
  39. package/dist/types/element/src/duplicate.d.ts +63 -0
  40. package/dist/types/element/src/elbowArrow.d.ts +19 -0
  41. package/dist/types/element/src/elementLink.d.ts +13 -0
  42. package/dist/types/element/src/embeddable.d.ts +10 -0
  43. package/dist/types/element/src/flowchart.d.ts +26 -0
  44. package/dist/types/element/src/fractionalIndex.d.ts +57 -0
  45. package/dist/types/element/src/frame.d.ts +74 -0
  46. package/dist/types/element/src/groups.d.ts +34 -0
  47. package/dist/types/element/src/heading.d.ts +16 -0
  48. package/dist/types/element/src/image.d.ts +22 -0
  49. package/dist/types/element/src/index.d.ts +59 -0
  50. package/dist/types/element/src/linearElementEditor.d.ts +118 -0
  51. package/dist/types/element/src/mutateElement.d.ts +25 -0
  52. package/dist/types/element/src/newElement.d.ts +62 -0
  53. package/dist/types/element/src/positionElementsOnGrid.d.ts +2 -0
  54. package/dist/types/element/src/renderElement.d.ts +25 -0
  55. package/dist/types/element/src/resizeElements.d.ts +32 -0
  56. package/dist/types/element/src/resizeTest.d.ts +16 -0
  57. package/dist/types/element/src/selection.d.ts +38 -0
  58. package/dist/types/element/src/shape.d.ts +43 -0
  59. package/dist/types/element/src/showSelectedShapeActions.d.ts +3 -0
  60. package/dist/types/element/src/sizeHelpers.d.ts +35 -0
  61. package/dist/types/element/src/sortElements.d.ts +2 -0
  62. package/dist/types/element/src/store.d.ts +237 -0
  63. package/dist/types/element/src/textElement.d.ts +40 -0
  64. package/dist/types/element/src/textMeasurements.d.ts +39 -0
  65. package/dist/types/element/src/textWrapping.d.ts +39 -0
  66. package/dist/types/element/src/transform.d.ts +81 -0
  67. package/dist/types/element/src/transformHandles.d.ts +36 -0
  68. package/dist/types/element/src/typeChecks.d.ts +54 -0
  69. package/dist/types/element/src/types.d.ts +294 -0
  70. package/dist/types/element/src/utils.d.ts +36 -0
  71. package/dist/types/element/src/zindex.d.ts +13 -0
  72. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +485 -0
  73. package/dist/types/excalidraw/actions/actionAlign.d.ts +109 -0
  74. package/dist/types/excalidraw/actions/actionBoundText.d.ts +360 -0
  75. package/dist/types/excalidraw/actions/actionCanvas.d.ts +2059 -0
  76. package/dist/types/excalidraw/actions/actionClipboard.d.ts +399 -0
  77. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +174 -0
  78. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +521 -0
  79. package/dist/types/excalidraw/actions/actionDeselect.d.ts +159 -0
  80. package/dist/types/excalidraw/actions/actionDistribute.d.ts +34 -0
  81. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -0
  82. package/dist/types/excalidraw/actions/actionElementLink.d.ts +190 -0
  83. package/dist/types/excalidraw/actions/actionElementLock.d.ts +346 -0
  84. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +171 -0
  85. package/dist/types/excalidraw/actions/actionExport.d.ts +407 -0
  86. package/dist/types/excalidraw/actions/actionFinalize.d.ts +13 -0
  87. package/dist/types/excalidraw/actions/actionFlip.d.ts +34 -0
  88. package/dist/types/excalidraw/actions/actionFrame.d.ts +1150 -0
  89. package/dist/types/excalidraw/actions/actionGroup.d.ts +350 -0
  90. package/dist/types/excalidraw/actions/actionHistory.d.ts +6 -0
  91. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +661 -0
  92. package/dist/types/excalidraw/actions/actionLink.d.ts +175 -0
  93. package/dist/types/excalidraw/actions/actionMenu.d.ts +159 -0
  94. package/dist/types/excalidraw/actions/actionNavigate.d.ts +20 -0
  95. package/dist/types/excalidraw/actions/actionProperties.d.ts +402 -0
  96. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +170 -0
  97. package/dist/types/excalidraw/actions/actionStyles.d.ts +189 -0
  98. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -0
  99. package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +172 -0
  100. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +177 -0
  101. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +172 -0
  102. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +175 -0
  103. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +162 -0
  104. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  105. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +174 -0
  106. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +175 -0
  107. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +175 -0
  108. package/dist/types/excalidraw/actions/actionZindex.d.ts +74 -0
  109. package/dist/types/excalidraw/actions/index.d.ts +31 -0
  110. package/dist/types/excalidraw/actions/manager.d.ts +21 -0
  111. package/dist/types/excalidraw/actions/register.d.ts +5 -0
  112. package/dist/types/excalidraw/actions/shortcuts.d.ts +4 -0
  113. package/dist/types/excalidraw/actions/types.d.ts +47 -0
  114. package/dist/types/excalidraw/analytics.d.ts +1 -0
  115. package/dist/types/excalidraw/animated-trail.d.ts +39 -0
  116. package/dist/types/excalidraw/animation-frame-handler.d.ts +16 -0
  117. package/dist/types/excalidraw/appState.d.ts +103 -0
  118. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  119. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  120. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  121. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  122. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  123. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  124. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  125. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  126. package/dist/types/excalidraw/clients.d.ts +14 -0
  127. package/dist/types/excalidraw/clipboard.d.ts +104 -0
  128. package/dist/types/excalidraw/components/Actions.d.ts +47 -0
  129. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -0
  130. package/dist/types/excalidraw/components/App.d.ts +602 -0
  131. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  132. package/dist/types/excalidraw/components/Avatar.d.ts +11 -0
  133. package/dist/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -0
  134. package/dist/types/excalidraw/components/Button.d.ts +17 -0
  135. package/dist/types/excalidraw/components/ButtonIcon.d.ts +16 -0
  136. package/dist/types/excalidraw/components/ButtonSeparator.d.ts +1 -0
  137. package/dist/types/excalidraw/components/Card.d.ts +5 -0
  138. package/dist/types/excalidraw/components/CheckboxItem.d.ts +8 -0
  139. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +8 -0
  140. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +22 -0
  141. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -0
  142. package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -0
  143. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +19 -0
  144. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -0
  145. package/dist/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -0
  146. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +9 -0
  147. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -0
  148. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +20 -0
  149. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  150. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +19 -0
  151. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -0
  152. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +24 -0
  153. package/dist/types/excalidraw/components/ConfirmDialog.d.ts +10 -0
  154. package/dist/types/excalidraw/components/ContextMenu.d.ts +16 -0
  155. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  156. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +7 -0
  157. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +27 -0
  158. package/dist/types/excalidraw/components/Dialog.d.ts +13 -0
  159. package/dist/types/excalidraw/components/DialogActionButton.d.ts +10 -0
  160. package/dist/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -0
  161. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +12 -0
  162. package/dist/types/excalidraw/components/Ellipsify.d.ts +3 -0
  163. package/dist/types/excalidraw/components/ErrorDialog.d.ts +5 -0
  164. package/dist/types/excalidraw/components/EyeDropper.d.ts +27 -0
  165. package/dist/types/excalidraw/components/FilledButton.d.ts +19 -0
  166. package/dist/types/excalidraw/components/FixedSideContainer.d.ts +9 -0
  167. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -0
  168. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +22 -0
  169. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -0
  170. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +8 -0
  171. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -0
  172. package/dist/types/excalidraw/components/HandButton.d.ts +10 -0
  173. package/dist/types/excalidraw/components/HelpButton.d.ts +7 -0
  174. package/dist/types/excalidraw/components/HelpDialog.d.ts +4 -0
  175. package/dist/types/excalidraw/components/HintViewer.d.ts +11 -0
  176. package/dist/types/excalidraw/components/IconPicker.d.ts +20 -0
  177. package/dist/types/excalidraw/components/ImageExportDialog.d.ts +14 -0
  178. package/dist/types/excalidraw/components/InlineIcon.d.ts +5 -0
  179. package/dist/types/excalidraw/components/Island.d.ts +10 -0
  180. package/dist/types/excalidraw/components/JSONExportDialog.d.ts +15 -0
  181. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +10 -0
  182. package/dist/types/excalidraw/components/LayerUI.d.ts +32 -0
  183. package/dist/types/excalidraw/components/LibraryMenu.d.ts +10 -0
  184. package/dist/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -0
  185. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -0
  186. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -0
  187. package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +14 -0
  188. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +23 -0
  189. package/dist/types/excalidraw/components/LibraryUnit.d.ts +14 -0
  190. package/dist/types/excalidraw/components/LoadingMessage.d.ts +5 -0
  191. package/dist/types/excalidraw/components/LockButton.d.ts +10 -0
  192. package/dist/types/excalidraw/components/MagicButton.d.ts +10 -0
  193. package/dist/types/excalidraw/components/MobileMenu.d.ts +23 -0
  194. package/dist/types/excalidraw/components/MobileToolBar.d.ts +10 -0
  195. package/dist/types/excalidraw/components/Modal.d.ts +11 -0
  196. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  197. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  198. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  199. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +7 -0
  200. package/dist/types/excalidraw/components/PenModeButton.d.ts +12 -0
  201. package/dist/types/excalidraw/components/Popover.d.ts +16 -0
  202. package/dist/types/excalidraw/components/ProjectName.d.ts +10 -0
  203. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +16 -0
  204. package/dist/types/excalidraw/components/PublishLibrary.d.ts +16 -0
  205. package/dist/types/excalidraw/components/QuickSearch.d.ts +9 -0
  206. package/dist/types/excalidraw/components/RadioGroup.d.ts +13 -0
  207. package/dist/types/excalidraw/components/RadioSelection.d.ts +20 -0
  208. package/dist/types/excalidraw/components/Range.d.ts +14 -0
  209. package/dist/types/excalidraw/components/SVGLayer.d.ts +7 -0
  210. package/dist/types/excalidraw/components/ScrollableList.d.ts +8 -0
  211. package/dist/types/excalidraw/components/SearchMenu.d.ts +5 -0
  212. package/dist/types/excalidraw/components/Section.d.ts +6 -0
  213. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +70 -0
  214. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -0
  215. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -0
  216. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  217. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  218. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -0
  219. package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -0
  220. package/dist/types/excalidraw/components/Sidebar/common.d.ts +34 -0
  221. package/dist/types/excalidraw/components/Spinner.d.ts +8 -0
  222. package/dist/types/excalidraw/components/Stack.d.ts +15 -0
  223. package/dist/types/excalidraw/components/Stats/Angle.d.ts +11 -0
  224. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -0
  225. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +10 -0
  226. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +11 -0
  227. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +44 -0
  228. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +11 -0
  229. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -0
  230. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -0
  231. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -0
  232. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -0
  233. package/dist/types/excalidraw/components/Stats/Position.d.ts +12 -0
  234. package/dist/types/excalidraw/components/Stats/index.d.ts +35 -0
  235. package/dist/types/excalidraw/components/Stats/utils.d.ts +19 -0
  236. package/dist/types/excalidraw/components/Switch.d.ts +9 -0
  237. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
  238. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +23 -0
  239. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
  240. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +27 -0
  241. package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
  242. package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
  243. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  244. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +7 -0
  245. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
  246. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +13 -0
  247. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -0
  248. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +11 -0
  249. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +21 -0
  250. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -0
  251. package/dist/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -0
  252. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -0
  253. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -0
  254. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -0
  255. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -0
  256. package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
  257. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  258. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +9 -0
  259. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +33 -0
  260. package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
  261. package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
  262. package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
  263. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  264. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +95 -0
  265. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
  266. package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
  267. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  268. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  269. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
  270. package/dist/types/excalidraw/components/TextField.d.ts +22 -0
  271. package/dist/types/excalidraw/components/Toast.d.ts +13 -0
  272. package/dist/types/excalidraw/components/ToolButton.d.ts +49 -0
  273. package/dist/types/excalidraw/components/ToolPopover.d.ts +25 -0
  274. package/dist/types/excalidraw/components/Tooltip.d.ts +18 -0
  275. package/dist/types/excalidraw/components/Trans.d.ts +9 -0
  276. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  277. package/dist/types/excalidraw/components/UserList.d.ts +18 -0
  278. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +34 -0
  279. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -0
  280. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -0
  281. package/dist/types/excalidraw/components/canvases/index.d.ts +3 -0
  282. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +98 -0
  283. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +17 -0
  284. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  285. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +37 -0
  286. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  287. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +9 -0
  288. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -0
  289. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -0
  290. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -0
  291. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  292. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  293. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  294. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  295. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  296. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +6 -0
  297. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +5 -0
  298. package/dist/types/excalidraw/components/footer/Footer.d.ts +12 -0
  299. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -0
  300. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -0
  301. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +10 -0
  302. package/dist/types/excalidraw/components/icons.d.ts +253 -0
  303. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +81 -0
  304. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +87 -0
  305. package/dist/types/excalidraw/components/shapes.d.ts +263 -0
  306. package/dist/types/excalidraw/context/tunnels.d.ts +21 -0
  307. package/dist/types/excalidraw/context/ui-appState.d.ts +4 -0
  308. package/dist/types/excalidraw/cursor.d.ts +5 -0
  309. package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +8 -0
  310. package/dist/types/excalidraw/data/blob.d.ts +368 -0
  311. package/dist/types/excalidraw/data/encode.d.ts +55 -0
  312. package/dist/types/excalidraw/data/encryption.d.ts +9 -0
  313. package/dist/types/excalidraw/data/filesystem.d.ts +19 -0
  314. package/dist/types/excalidraw/data/image.d.ts +9 -0
  315. package/dist/types/excalidraw/data/index.d.ts +21 -0
  316. package/dist/types/excalidraw/data/json.d.ts +182 -0
  317. package/dist/types/excalidraw/data/library.d.ts +127 -0
  318. package/dist/types/excalidraw/data/resave.d.ts +10 -0
  319. package/dist/types/excalidraw/data/restore.d.ts +41 -0
  320. package/dist/types/excalidraw/data/types.d.ts +48 -0
  321. package/dist/types/excalidraw/deburr.d.ts +1 -0
  322. package/dist/types/excalidraw/editor-jotai.d.ts +56 -0
  323. package/dist/types/excalidraw/eraser/index.d.ts +12 -0
  324. package/dist/types/excalidraw/errors.d.ts +43 -0
  325. package/dist/types/excalidraw/fonts/Cascadia/index.d.ts +2 -0
  326. package/dist/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
  327. package/dist/types/excalidraw/fonts/Emoji/index.d.ts +2 -0
  328. package/dist/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +25 -0
  329. package/dist/types/excalidraw/fonts/Excalifont/index.d.ts +2 -0
  330. package/dist/types/excalidraw/fonts/Fonts.d.ts +79 -0
  331. package/dist/types/excalidraw/fonts/Helvetica/index.d.ts +2 -0
  332. package/dist/types/excalidraw/fonts/Liberation/index.d.ts +2 -0
  333. package/dist/types/excalidraw/fonts/Lilita/index.d.ts +2 -0
  334. package/dist/types/excalidraw/fonts/Nunito/index.d.ts +2 -0
  335. package/dist/types/excalidraw/fonts/Virgil/index.d.ts +2 -0
  336. package/dist/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -0
  337. package/dist/types/excalidraw/fonts/index.d.ts +1 -0
  338. package/dist/types/excalidraw/gesture.d.ts +6 -0
  339. package/dist/types/excalidraw/history.d.ts +48 -0
  340. package/dist/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -0
  341. package/dist/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -0
  342. package/dist/types/excalidraw/hooks/useCreatePortalContainer.d.ts +4 -0
  343. package/dist/types/excalidraw/hooks/useEmitter.d.ts +2 -0
  344. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -0
  345. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +21 -0
  346. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -0
  347. package/dist/types/excalidraw/hooks/useStable.d.ts +1 -0
  348. package/dist/types/excalidraw/hooks/useStableCallback.d.ts +4 -0
  349. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -0
  350. package/dist/types/excalidraw/hooks/useTransition.d.ts +2 -0
  351. package/dist/types/excalidraw/i18n.d.ts +24 -0
  352. package/dist/types/excalidraw/laser-trails.d.ts +20 -0
  353. package/dist/types/excalidraw/lasso/index.d.ts +16 -0
  354. package/dist/types/excalidraw/lasso/utils.d.ts +13 -0
  355. package/dist/types/excalidraw/mermaid.d.ts +2 -0
  356. package/dist/types/excalidraw/reactUtils.d.ts +14 -0
  357. package/dist/types/excalidraw/renderer/animation.d.ts +12 -0
  358. package/dist/types/excalidraw/renderer/helpers.d.ts +16 -0
  359. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +14 -0
  360. package/dist/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -0
  361. package/dist/types/excalidraw/renderer/renderSnaps.d.ts +2 -0
  362. package/dist/types/excalidraw/renderer/roundRect.d.ts +11 -0
  363. package/dist/types/excalidraw/renderer/staticScene.d.ts +14 -0
  364. package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +5 -0
  365. package/dist/types/excalidraw/scene/Renderer.d.ts +30 -0
  366. package/dist/types/excalidraw/scene/export.d.ts +36 -0
  367. package/dist/types/excalidraw/scene/index.d.ts +4 -0
  368. package/dist/types/excalidraw/scene/normalize.d.ts +4 -0
  369. package/dist/types/excalidraw/scene/scroll.d.ts +18 -0
  370. package/dist/types/excalidraw/scene/scrollbars.d.ts +11 -0
  371. package/dist/types/excalidraw/scene/types.d.ts +137 -0
  372. package/dist/types/excalidraw/scene/zoom.d.ts +12 -0
  373. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  374. package/dist/types/excalidraw/snapping.d.ts +111 -0
  375. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -0
  376. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -0
  377. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -0
  378. package/dist/types/excalidraw/subset/subset-main.d.ts +12 -0
  379. package/dist/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -0
  380. package/dist/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -0
  381. package/dist/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -0
  382. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -0
  383. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -0
  384. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  385. package/dist/types/excalidraw/types.d.ts +795 -0
  386. package/dist/types/excalidraw/workers.d.ts +36 -0
  387. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +28 -0
  388. package/dist/types/math/src/angle.d.ts +19 -0
  389. package/dist/types/math/src/constants.d.ts +3 -0
  390. package/dist/types/math/src/curve.d.ts +74 -0
  391. package/dist/types/math/src/ellipse.d.ts +44 -0
  392. package/dist/types/math/src/index.d.ts +13 -0
  393. package/dist/types/math/src/line.d.ts +17 -0
  394. package/dist/types/math/src/point.d.ts +127 -0
  395. package/dist/types/math/src/polygon.d.ts +6 -0
  396. package/dist/types/math/src/range.d.ts +42 -0
  397. package/dist/types/math/src/rectangle.d.ts +5 -0
  398. package/dist/types/math/src/segment.d.ts +40 -0
  399. package/dist/types/math/src/triangle.d.ts +11 -0
  400. package/dist/types/math/src/types.d.ts +130 -0
  401. package/dist/types/math/src/utils.d.ts +7 -0
  402. package/dist/types/math/src/vector.d.ts +94 -0
  403. package/dist/types/utils/src/bbox.d.ts +9 -0
  404. package/dist/types/utils/src/export.d.ts +35 -0
  405. package/dist/types/utils/src/index.d.ts +4 -0
  406. package/dist/types/utils/src/shape.d.ts +58 -0
  407. package/dist/types/utils/src/withinBounds.d.ts +19 -0
  408. package/package.json +65 -0
@@ -0,0 +1,2059 @@
1
+ import { type SceneBounds } from "@nextcloud/excalidraw-element";
2
+ import type { ExcalidrawElement } from "@nextcloud/excalidraw-element/types";
3
+ import type { AppState, Offsets } from "../types";
4
+ export declare const actionChangeViewBackgroundColor: import("./types").Action<Partial<AppState>> & {
5
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
6
+ };
7
+ export declare const actionClearCanvas: {
8
+ name: "clearCanvas";
9
+ label: string;
10
+ icon: import("react/jsx-runtime").JSX.Element;
11
+ trackEvent: {
12
+ category: "canvas";
13
+ };
14
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
15
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
16
+ elements: import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[];
17
+ appState: {
18
+ files: {};
19
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
20
+ penMode: boolean;
21
+ penDetected: boolean;
22
+ exportBackground: boolean;
23
+ exportEmbedScene: boolean;
24
+ gridSize: number;
25
+ gridStep: number;
26
+ gridModeEnabled: boolean;
27
+ stats: {
28
+ open: boolean;
29
+ panels: number;
30
+ };
31
+ activeTool: {
32
+ lastActiveTool: import("../types").ActiveTool | null;
33
+ locked: boolean;
34
+ fromSelection: boolean;
35
+ } & import("../types").ActiveTool;
36
+ viewModeEnabled: boolean;
37
+ zenModeEnabled: boolean;
38
+ objectsSnapModeEnabled: boolean;
39
+ name: string | null;
40
+ currentItemArrowType: "sharp" | "round" | "elbow";
41
+ contextMenu: {
42
+ items: import("../components/ContextMenu").ContextMenuItems;
43
+ top: number;
44
+ left: number;
45
+ } | null;
46
+ showWelcomeScreen: boolean;
47
+ isLoading: boolean;
48
+ errorMessage: React.ReactNode;
49
+ activeEmbeddable: {
50
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
51
+ state: "hover" | "active";
52
+ } | null;
53
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
54
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
55
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
56
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
57
+ isBindingEnabled: boolean;
58
+ bindingPreference: "enabled" | "disabled";
59
+ isMidpointSnappingEnabled: boolean;
60
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
61
+ suggestedBinding: {
62
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
63
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
64
+ } | null;
65
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
66
+ frameRendering: {
67
+ enabled: boolean;
68
+ name: boolean;
69
+ outline: boolean;
70
+ clip: boolean;
71
+ };
72
+ editingFrame: string | null;
73
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
74
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
75
+ preferredSelectionTool: {
76
+ type: "selection" | "lasso";
77
+ initialized: boolean;
78
+ };
79
+ exportWithDarkMode: boolean;
80
+ exportScale: number;
81
+ currentItemStrokeColor: string;
82
+ currentItemBackgroundColor: string;
83
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
84
+ currentItemStrokeWidth: number;
85
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
86
+ currentItemRoughness: number;
87
+ currentItemOpacity: number;
88
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
89
+ currentItemFontSize: number;
90
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
91
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
92
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
93
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
94
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
95
+ viewBackgroundColor: string;
96
+ scrollX: number;
97
+ scrollY: number;
98
+ cursorButton: "up" | "down";
99
+ scrolledOutside: boolean;
100
+ isResizing: boolean;
101
+ isRotating: boolean;
102
+ zoom: import("../types").Zoom;
103
+ openMenu: "canvas" | null;
104
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
105
+ openSidebar: {
106
+ name: import("../types").SidebarName;
107
+ tab?: import("../types").SidebarTabName;
108
+ } | null;
109
+ openDialog: null | {
110
+ name: "imageExport" | "help" | "jsonExport";
111
+ } | {
112
+ name: "ttd";
113
+ tab: "text-to-diagram" | "mermaid";
114
+ } | {
115
+ name: "commandPalette";
116
+ } | {
117
+ name: "settings";
118
+ } | {
119
+ name: "elementLinkSelector";
120
+ sourceElementId: ExcalidrawElement["id"];
121
+ } | {
122
+ name: "charts";
123
+ data: import("../charts").Spreadsheet;
124
+ rawText: string;
125
+ };
126
+ defaultSidebarDockedPreference: boolean;
127
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
128
+ selectedElementIds: Readonly<{
129
+ [id: string]: true;
130
+ }>;
131
+ hoveredElementIds: Readonly<{
132
+ [id: string]: true;
133
+ }>;
134
+ previousSelectedElementIds: {
135
+ [id: string]: true;
136
+ };
137
+ selectedElementsAreBeingDragged: boolean;
138
+ shouldCacheIgnoreZoom: boolean;
139
+ toast: {
140
+ message: React.ReactNode;
141
+ closable?: boolean;
142
+ duration?: number;
143
+ } | null;
144
+ selectedGroupIds: {
145
+ [groupId: string]: boolean;
146
+ };
147
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
148
+ fileHandle: FileSystemFileHandle | null;
149
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
150
+ showHyperlinkPopup: false | "info" | "editor";
151
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
152
+ snapLines: readonly import("../snapping").SnapLine[];
153
+ originSnapOffset: {
154
+ x: number;
155
+ y: number;
156
+ } | null;
157
+ userToFollow: import("../types").UserToFollow | null;
158
+ followedBy: Set<import("../types").SocketId>;
159
+ isCropping: boolean;
160
+ croppingElementId: ExcalidrawElement["id"] | null;
161
+ searchMatches: Readonly<{
162
+ focusedId: ExcalidrawElement["id"] | null;
163
+ matches: readonly import("../types").SearchMatch[];
164
+ }> | null;
165
+ activeLockedId: string | null;
166
+ lockedMultiSelections: {
167
+ [groupId: string]: true;
168
+ };
169
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
170
+ };
171
+ captureUpdate: "IMMEDIATELY";
172
+ };
173
+ } & {
174
+ keyTest?: undefined;
175
+ };
176
+ export declare const actionZoomIn: {
177
+ name: "zoomIn";
178
+ label: string;
179
+ viewMode: true;
180
+ icon: import("react/jsx-runtime").JSX.Element;
181
+ trackEvent: {
182
+ category: "canvas";
183
+ };
184
+ perform: (_elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
185
+ appState: {
186
+ userToFollow: null;
187
+ scrollX: number;
188
+ scrollY: number;
189
+ zoom: {
190
+ value: import("../types").NormalizedZoomValue;
191
+ };
192
+ contextMenu: {
193
+ items: import("../components/ContextMenu").ContextMenuItems;
194
+ top: number;
195
+ left: number;
196
+ } | null;
197
+ showWelcomeScreen: boolean;
198
+ isLoading: boolean;
199
+ errorMessage: React.ReactNode;
200
+ activeEmbeddable: {
201
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
202
+ state: "hover" | "active";
203
+ } | null;
204
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
205
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
206
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
207
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
208
+ isBindingEnabled: boolean;
209
+ bindingPreference: "enabled" | "disabled";
210
+ isMidpointSnappingEnabled: boolean;
211
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
212
+ suggestedBinding: {
213
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
214
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
215
+ } | null;
216
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
217
+ frameRendering: {
218
+ enabled: boolean;
219
+ name: boolean;
220
+ outline: boolean;
221
+ clip: boolean;
222
+ };
223
+ editingFrame: string | null;
224
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
225
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
226
+ activeTool: {
227
+ lastActiveTool: import("../types").ActiveTool | null;
228
+ locked: boolean;
229
+ fromSelection: boolean;
230
+ } & import("../types").ActiveTool;
231
+ preferredSelectionTool: {
232
+ type: "selection" | "lasso";
233
+ initialized: boolean;
234
+ };
235
+ penMode: boolean;
236
+ penDetected: boolean;
237
+ exportBackground: boolean;
238
+ exportEmbedScene: boolean;
239
+ exportWithDarkMode: boolean;
240
+ exportScale: number;
241
+ currentItemStrokeColor: string;
242
+ currentItemBackgroundColor: string;
243
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
244
+ currentItemStrokeWidth: number;
245
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
246
+ currentItemRoughness: number;
247
+ currentItemOpacity: number;
248
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
249
+ currentItemFontSize: number;
250
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
251
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
252
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
253
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
254
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
255
+ currentItemArrowType: "sharp" | "round" | "elbow";
256
+ viewBackgroundColor: string;
257
+ cursorButton: "up" | "down";
258
+ scrolledOutside: boolean;
259
+ name: string | null;
260
+ isResizing: boolean;
261
+ isRotating: boolean;
262
+ openMenu: "canvas" | null;
263
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
264
+ openSidebar: {
265
+ name: import("../types").SidebarName;
266
+ tab?: import("../types").SidebarTabName;
267
+ } | null;
268
+ openDialog: null | {
269
+ name: "imageExport" | "help" | "jsonExport";
270
+ } | {
271
+ name: "ttd";
272
+ tab: "text-to-diagram" | "mermaid";
273
+ } | {
274
+ name: "commandPalette";
275
+ } | {
276
+ name: "settings";
277
+ } | {
278
+ name: "elementLinkSelector";
279
+ sourceElementId: ExcalidrawElement["id"];
280
+ } | {
281
+ name: "charts";
282
+ data: import("../charts").Spreadsheet;
283
+ rawText: string;
284
+ };
285
+ defaultSidebarDockedPreference: boolean;
286
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
287
+ selectedElementIds: Readonly<{
288
+ [id: string]: true;
289
+ }>;
290
+ hoveredElementIds: Readonly<{
291
+ [id: string]: true;
292
+ }>;
293
+ previousSelectedElementIds: {
294
+ [id: string]: true;
295
+ };
296
+ selectedElementsAreBeingDragged: boolean;
297
+ shouldCacheIgnoreZoom: boolean;
298
+ toast: {
299
+ message: React.ReactNode;
300
+ closable?: boolean;
301
+ duration?: number;
302
+ } | null;
303
+ zenModeEnabled: boolean;
304
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
305
+ gridSize: number;
306
+ gridStep: number;
307
+ gridModeEnabled: boolean;
308
+ viewModeEnabled: boolean;
309
+ selectedGroupIds: {
310
+ [groupId: string]: boolean;
311
+ };
312
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
313
+ width: number;
314
+ height: number;
315
+ offsetTop: number;
316
+ offsetLeft: number;
317
+ fileHandle: FileSystemFileHandle | null;
318
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
319
+ stats: {
320
+ open: boolean;
321
+ panels: number;
322
+ };
323
+ showHyperlinkPopup: false | "info" | "editor";
324
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
325
+ snapLines: readonly import("../snapping").SnapLine[];
326
+ originSnapOffset: {
327
+ x: number;
328
+ y: number;
329
+ } | null;
330
+ objectsSnapModeEnabled: boolean;
331
+ followedBy: Set<import("../types").SocketId>;
332
+ isCropping: boolean;
333
+ croppingElementId: ExcalidrawElement["id"] | null;
334
+ searchMatches: Readonly<{
335
+ focusedId: ExcalidrawElement["id"] | null;
336
+ matches: readonly import("../types").SearchMatch[];
337
+ }> | null;
338
+ activeLockedId: string | null;
339
+ lockedMultiSelections: {
340
+ [groupId: string]: true;
341
+ };
342
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
343
+ };
344
+ captureUpdate: "EVENTUALLY";
345
+ };
346
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
347
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
348
+ } & {
349
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
350
+ };
351
+ export declare const actionZoomOut: {
352
+ name: "zoomOut";
353
+ label: string;
354
+ icon: import("react/jsx-runtime").JSX.Element;
355
+ viewMode: true;
356
+ trackEvent: {
357
+ category: "canvas";
358
+ };
359
+ perform: (_elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
360
+ appState: {
361
+ userToFollow: null;
362
+ scrollX: number;
363
+ scrollY: number;
364
+ zoom: {
365
+ value: import("../types").NormalizedZoomValue;
366
+ };
367
+ contextMenu: {
368
+ items: import("../components/ContextMenu").ContextMenuItems;
369
+ top: number;
370
+ left: number;
371
+ } | null;
372
+ showWelcomeScreen: boolean;
373
+ isLoading: boolean;
374
+ errorMessage: React.ReactNode;
375
+ activeEmbeddable: {
376
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
377
+ state: "hover" | "active";
378
+ } | null;
379
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
380
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
381
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
382
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
383
+ isBindingEnabled: boolean;
384
+ bindingPreference: "enabled" | "disabled";
385
+ isMidpointSnappingEnabled: boolean;
386
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
387
+ suggestedBinding: {
388
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
389
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
390
+ } | null;
391
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
392
+ frameRendering: {
393
+ enabled: boolean;
394
+ name: boolean;
395
+ outline: boolean;
396
+ clip: boolean;
397
+ };
398
+ editingFrame: string | null;
399
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
400
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
401
+ activeTool: {
402
+ lastActiveTool: import("../types").ActiveTool | null;
403
+ locked: boolean;
404
+ fromSelection: boolean;
405
+ } & import("../types").ActiveTool;
406
+ preferredSelectionTool: {
407
+ type: "selection" | "lasso";
408
+ initialized: boolean;
409
+ };
410
+ penMode: boolean;
411
+ penDetected: boolean;
412
+ exportBackground: boolean;
413
+ exportEmbedScene: boolean;
414
+ exportWithDarkMode: boolean;
415
+ exportScale: number;
416
+ currentItemStrokeColor: string;
417
+ currentItemBackgroundColor: string;
418
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
419
+ currentItemStrokeWidth: number;
420
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
421
+ currentItemRoughness: number;
422
+ currentItemOpacity: number;
423
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
424
+ currentItemFontSize: number;
425
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
426
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
427
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
428
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
429
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
430
+ currentItemArrowType: "sharp" | "round" | "elbow";
431
+ viewBackgroundColor: string;
432
+ cursorButton: "up" | "down";
433
+ scrolledOutside: boolean;
434
+ name: string | null;
435
+ isResizing: boolean;
436
+ isRotating: boolean;
437
+ openMenu: "canvas" | null;
438
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
439
+ openSidebar: {
440
+ name: import("../types").SidebarName;
441
+ tab?: import("../types").SidebarTabName;
442
+ } | null;
443
+ openDialog: null | {
444
+ name: "imageExport" | "help" | "jsonExport";
445
+ } | {
446
+ name: "ttd";
447
+ tab: "text-to-diagram" | "mermaid";
448
+ } | {
449
+ name: "commandPalette";
450
+ } | {
451
+ name: "settings";
452
+ } | {
453
+ name: "elementLinkSelector";
454
+ sourceElementId: ExcalidrawElement["id"];
455
+ } | {
456
+ name: "charts";
457
+ data: import("../charts").Spreadsheet;
458
+ rawText: string;
459
+ };
460
+ defaultSidebarDockedPreference: boolean;
461
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
462
+ selectedElementIds: Readonly<{
463
+ [id: string]: true;
464
+ }>;
465
+ hoveredElementIds: Readonly<{
466
+ [id: string]: true;
467
+ }>;
468
+ previousSelectedElementIds: {
469
+ [id: string]: true;
470
+ };
471
+ selectedElementsAreBeingDragged: boolean;
472
+ shouldCacheIgnoreZoom: boolean;
473
+ toast: {
474
+ message: React.ReactNode;
475
+ closable?: boolean;
476
+ duration?: number;
477
+ } | null;
478
+ zenModeEnabled: boolean;
479
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
480
+ gridSize: number;
481
+ gridStep: number;
482
+ gridModeEnabled: boolean;
483
+ viewModeEnabled: boolean;
484
+ selectedGroupIds: {
485
+ [groupId: string]: boolean;
486
+ };
487
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
488
+ width: number;
489
+ height: number;
490
+ offsetTop: number;
491
+ offsetLeft: number;
492
+ fileHandle: FileSystemFileHandle | null;
493
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
494
+ stats: {
495
+ open: boolean;
496
+ panels: number;
497
+ };
498
+ showHyperlinkPopup: false | "info" | "editor";
499
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
500
+ snapLines: readonly import("../snapping").SnapLine[];
501
+ originSnapOffset: {
502
+ x: number;
503
+ y: number;
504
+ } | null;
505
+ objectsSnapModeEnabled: boolean;
506
+ followedBy: Set<import("../types").SocketId>;
507
+ isCropping: boolean;
508
+ croppingElementId: ExcalidrawElement["id"] | null;
509
+ searchMatches: Readonly<{
510
+ focusedId: ExcalidrawElement["id"] | null;
511
+ matches: readonly import("../types").SearchMatch[];
512
+ }> | null;
513
+ activeLockedId: string | null;
514
+ lockedMultiSelections: {
515
+ [groupId: string]: true;
516
+ };
517
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
518
+ };
519
+ captureUpdate: "EVENTUALLY";
520
+ };
521
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
522
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
523
+ } & {
524
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
525
+ };
526
+ export declare const actionResetZoom: {
527
+ name: "resetZoom";
528
+ label: string;
529
+ icon: import("react/jsx-runtime").JSX.Element;
530
+ viewMode: true;
531
+ trackEvent: {
532
+ category: "canvas";
533
+ };
534
+ perform: (_elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
535
+ appState: {
536
+ userToFollow: null;
537
+ scrollX: number;
538
+ scrollY: number;
539
+ zoom: {
540
+ value: import("../types").NormalizedZoomValue;
541
+ };
542
+ contextMenu: {
543
+ items: import("../components/ContextMenu").ContextMenuItems;
544
+ top: number;
545
+ left: number;
546
+ } | null;
547
+ showWelcomeScreen: boolean;
548
+ isLoading: boolean;
549
+ errorMessage: React.ReactNode;
550
+ activeEmbeddable: {
551
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
552
+ state: "hover" | "active";
553
+ } | null;
554
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
555
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
556
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
557
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
558
+ isBindingEnabled: boolean;
559
+ bindingPreference: "enabled" | "disabled";
560
+ isMidpointSnappingEnabled: boolean;
561
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
562
+ suggestedBinding: {
563
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
564
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
565
+ } | null;
566
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
567
+ frameRendering: {
568
+ enabled: boolean;
569
+ name: boolean;
570
+ outline: boolean;
571
+ clip: boolean;
572
+ };
573
+ editingFrame: string | null;
574
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
575
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
576
+ activeTool: {
577
+ lastActiveTool: import("../types").ActiveTool | null;
578
+ locked: boolean;
579
+ fromSelection: boolean;
580
+ } & import("../types").ActiveTool;
581
+ preferredSelectionTool: {
582
+ type: "selection" | "lasso";
583
+ initialized: boolean;
584
+ };
585
+ penMode: boolean;
586
+ penDetected: boolean;
587
+ exportBackground: boolean;
588
+ exportEmbedScene: boolean;
589
+ exportWithDarkMode: boolean;
590
+ exportScale: number;
591
+ currentItemStrokeColor: string;
592
+ currentItemBackgroundColor: string;
593
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
594
+ currentItemStrokeWidth: number;
595
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
596
+ currentItemRoughness: number;
597
+ currentItemOpacity: number;
598
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
599
+ currentItemFontSize: number;
600
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
601
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
602
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
603
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
604
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
605
+ currentItemArrowType: "sharp" | "round" | "elbow";
606
+ viewBackgroundColor: string;
607
+ cursorButton: "up" | "down";
608
+ scrolledOutside: boolean;
609
+ name: string | null;
610
+ isResizing: boolean;
611
+ isRotating: boolean;
612
+ openMenu: "canvas" | null;
613
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
614
+ openSidebar: {
615
+ name: import("../types").SidebarName;
616
+ tab?: import("../types").SidebarTabName;
617
+ } | null;
618
+ openDialog: null | {
619
+ name: "imageExport" | "help" | "jsonExport";
620
+ } | {
621
+ name: "ttd";
622
+ tab: "text-to-diagram" | "mermaid";
623
+ } | {
624
+ name: "commandPalette";
625
+ } | {
626
+ name: "settings";
627
+ } | {
628
+ name: "elementLinkSelector";
629
+ sourceElementId: ExcalidrawElement["id"];
630
+ } | {
631
+ name: "charts";
632
+ data: import("../charts").Spreadsheet;
633
+ rawText: string;
634
+ };
635
+ defaultSidebarDockedPreference: boolean;
636
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
637
+ selectedElementIds: Readonly<{
638
+ [id: string]: true;
639
+ }>;
640
+ hoveredElementIds: Readonly<{
641
+ [id: string]: true;
642
+ }>;
643
+ previousSelectedElementIds: {
644
+ [id: string]: true;
645
+ };
646
+ selectedElementsAreBeingDragged: boolean;
647
+ shouldCacheIgnoreZoom: boolean;
648
+ toast: {
649
+ message: React.ReactNode;
650
+ closable?: boolean;
651
+ duration?: number;
652
+ } | null;
653
+ zenModeEnabled: boolean;
654
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
655
+ gridSize: number;
656
+ gridStep: number;
657
+ gridModeEnabled: boolean;
658
+ viewModeEnabled: boolean;
659
+ selectedGroupIds: {
660
+ [groupId: string]: boolean;
661
+ };
662
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
663
+ width: number;
664
+ height: number;
665
+ offsetTop: number;
666
+ offsetLeft: number;
667
+ fileHandle: FileSystemFileHandle | null;
668
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
669
+ stats: {
670
+ open: boolean;
671
+ panels: number;
672
+ };
673
+ showHyperlinkPopup: false | "info" | "editor";
674
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
675
+ snapLines: readonly import("../snapping").SnapLine[];
676
+ originSnapOffset: {
677
+ x: number;
678
+ y: number;
679
+ } | null;
680
+ objectsSnapModeEnabled: boolean;
681
+ followedBy: Set<import("../types").SocketId>;
682
+ isCropping: boolean;
683
+ croppingElementId: ExcalidrawElement["id"] | null;
684
+ searchMatches: Readonly<{
685
+ focusedId: ExcalidrawElement["id"] | null;
686
+ matches: readonly import("../types").SearchMatch[];
687
+ }> | null;
688
+ activeLockedId: string | null;
689
+ lockedMultiSelections: {
690
+ [groupId: string]: true;
691
+ };
692
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
693
+ };
694
+ captureUpdate: "EVENTUALLY";
695
+ };
696
+ PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
697
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
698
+ } & {
699
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
700
+ };
701
+ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
702
+ bounds: SceneBounds;
703
+ canvasOffsets?: Offsets;
704
+ appState: Readonly<AppState>;
705
+ /** whether to fit content to viewport (beyond >100%) */
706
+ fitToViewport: boolean;
707
+ /** zoom content to cover X of the viewport, when fitToViewport=true */
708
+ viewportZoomFactor?: number;
709
+ minZoom?: number;
710
+ maxZoom?: number;
711
+ }) => {
712
+ appState: {
713
+ scrollX: number;
714
+ scrollY: number;
715
+ zoom: {
716
+ value: import("../types").NormalizedZoomValue;
717
+ };
718
+ contextMenu: {
719
+ items: import("../components/ContextMenu").ContextMenuItems;
720
+ top: number;
721
+ left: number;
722
+ } | null;
723
+ showWelcomeScreen: boolean;
724
+ isLoading: boolean;
725
+ errorMessage: React.ReactNode;
726
+ activeEmbeddable: {
727
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
728
+ state: "hover" | "active";
729
+ } | null;
730
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
731
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
732
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
733
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
734
+ isBindingEnabled: boolean;
735
+ bindingPreference: "enabled" | "disabled";
736
+ isMidpointSnappingEnabled: boolean;
737
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
738
+ suggestedBinding: {
739
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
740
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
741
+ } | null;
742
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
743
+ frameRendering: {
744
+ enabled: boolean;
745
+ name: boolean;
746
+ outline: boolean;
747
+ clip: boolean;
748
+ };
749
+ editingFrame: string | null;
750
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
751
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
752
+ activeTool: {
753
+ lastActiveTool: import("../types").ActiveTool | null;
754
+ locked: boolean;
755
+ fromSelection: boolean;
756
+ } & import("../types").ActiveTool;
757
+ preferredSelectionTool: {
758
+ type: "selection" | "lasso";
759
+ initialized: boolean;
760
+ };
761
+ penMode: boolean;
762
+ penDetected: boolean;
763
+ exportBackground: boolean;
764
+ exportEmbedScene: boolean;
765
+ exportWithDarkMode: boolean;
766
+ exportScale: number;
767
+ currentItemStrokeColor: string;
768
+ currentItemBackgroundColor: string;
769
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
770
+ currentItemStrokeWidth: number;
771
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
772
+ currentItemRoughness: number;
773
+ currentItemOpacity: number;
774
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
775
+ currentItemFontSize: number;
776
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
777
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
778
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
779
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
780
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
781
+ currentItemArrowType: "sharp" | "round" | "elbow";
782
+ viewBackgroundColor: string;
783
+ cursorButton: "up" | "down";
784
+ scrolledOutside: boolean;
785
+ name: string | null;
786
+ isResizing: boolean;
787
+ isRotating: boolean;
788
+ openMenu: "canvas" | null;
789
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
790
+ openSidebar: {
791
+ name: import("../types").SidebarName;
792
+ tab?: import("../types").SidebarTabName;
793
+ } | null;
794
+ openDialog: null | {
795
+ name: "imageExport" | "help" | "jsonExport";
796
+ } | {
797
+ name: "ttd";
798
+ tab: "text-to-diagram" | "mermaid";
799
+ } | {
800
+ name: "commandPalette";
801
+ } | {
802
+ name: "settings";
803
+ } | {
804
+ name: "elementLinkSelector";
805
+ sourceElementId: ExcalidrawElement["id"];
806
+ } | {
807
+ name: "charts";
808
+ data: import("../charts").Spreadsheet;
809
+ rawText: string;
810
+ };
811
+ defaultSidebarDockedPreference: boolean;
812
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
813
+ selectedElementIds: Readonly<{
814
+ [id: string]: true;
815
+ }>;
816
+ hoveredElementIds: Readonly<{
817
+ [id: string]: true;
818
+ }>;
819
+ previousSelectedElementIds: {
820
+ [id: string]: true;
821
+ };
822
+ selectedElementsAreBeingDragged: boolean;
823
+ shouldCacheIgnoreZoom: boolean;
824
+ toast: {
825
+ message: React.ReactNode;
826
+ closable?: boolean;
827
+ duration?: number;
828
+ } | null;
829
+ zenModeEnabled: boolean;
830
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
831
+ gridSize: number;
832
+ gridStep: number;
833
+ gridModeEnabled: boolean;
834
+ viewModeEnabled: boolean;
835
+ selectedGroupIds: {
836
+ [groupId: string]: boolean;
837
+ };
838
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
839
+ width: number;
840
+ height: number;
841
+ offsetTop: number;
842
+ offsetLeft: number;
843
+ fileHandle: FileSystemFileHandle | null;
844
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
845
+ stats: {
846
+ open: boolean;
847
+ panels: number;
848
+ };
849
+ showHyperlinkPopup: false | "info" | "editor";
850
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
851
+ snapLines: readonly import("../snapping").SnapLine[];
852
+ originSnapOffset: {
853
+ x: number;
854
+ y: number;
855
+ } | null;
856
+ objectsSnapModeEnabled: boolean;
857
+ userToFollow: import("../types").UserToFollow | null;
858
+ followedBy: Set<import("../types").SocketId>;
859
+ isCropping: boolean;
860
+ croppingElementId: ExcalidrawElement["id"] | null;
861
+ searchMatches: Readonly<{
862
+ focusedId: ExcalidrawElement["id"] | null;
863
+ matches: readonly import("../types").SearchMatch[];
864
+ }> | null;
865
+ activeLockedId: string | null;
866
+ lockedMultiSelections: {
867
+ [groupId: string]: true;
868
+ };
869
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
870
+ };
871
+ captureUpdate: "EVENTUALLY";
872
+ };
873
+ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitToViewport, viewportZoomFactor, minZoom, maxZoom, }: {
874
+ canvasOffsets?: Offsets;
875
+ targetElements: readonly ExcalidrawElement[];
876
+ appState: Readonly<AppState>;
877
+ /** whether to fit content to viewport (beyond >100%) */
878
+ fitToViewport: boolean;
879
+ /** zoom content to cover X of the viewport, when fitToViewport=true */
880
+ viewportZoomFactor?: number;
881
+ minZoom?: number;
882
+ maxZoom?: number;
883
+ }) => {
884
+ appState: {
885
+ scrollX: number;
886
+ scrollY: number;
887
+ zoom: {
888
+ value: import("../types").NormalizedZoomValue;
889
+ };
890
+ contextMenu: {
891
+ items: import("../components/ContextMenu").ContextMenuItems;
892
+ top: number;
893
+ left: number;
894
+ } | null;
895
+ showWelcomeScreen: boolean;
896
+ isLoading: boolean;
897
+ errorMessage: React.ReactNode;
898
+ activeEmbeddable: {
899
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
900
+ state: "hover" | "active";
901
+ } | null;
902
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
903
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
904
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
905
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
906
+ isBindingEnabled: boolean;
907
+ bindingPreference: "enabled" | "disabled";
908
+ isMidpointSnappingEnabled: boolean;
909
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
910
+ suggestedBinding: {
911
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
912
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
913
+ } | null;
914
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
915
+ frameRendering: {
916
+ enabled: boolean;
917
+ name: boolean;
918
+ outline: boolean;
919
+ clip: boolean;
920
+ };
921
+ editingFrame: string | null;
922
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
923
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
924
+ activeTool: {
925
+ lastActiveTool: import("../types").ActiveTool | null;
926
+ locked: boolean;
927
+ fromSelection: boolean;
928
+ } & import("../types").ActiveTool;
929
+ preferredSelectionTool: {
930
+ type: "selection" | "lasso";
931
+ initialized: boolean;
932
+ };
933
+ penMode: boolean;
934
+ penDetected: boolean;
935
+ exportBackground: boolean;
936
+ exportEmbedScene: boolean;
937
+ exportWithDarkMode: boolean;
938
+ exportScale: number;
939
+ currentItemStrokeColor: string;
940
+ currentItemBackgroundColor: string;
941
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
942
+ currentItemStrokeWidth: number;
943
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
944
+ currentItemRoughness: number;
945
+ currentItemOpacity: number;
946
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
947
+ currentItemFontSize: number;
948
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
949
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
950
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
951
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
952
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
953
+ currentItemArrowType: "sharp" | "round" | "elbow";
954
+ viewBackgroundColor: string;
955
+ cursorButton: "up" | "down";
956
+ scrolledOutside: boolean;
957
+ name: string | null;
958
+ isResizing: boolean;
959
+ isRotating: boolean;
960
+ openMenu: "canvas" | null;
961
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
962
+ openSidebar: {
963
+ name: import("../types").SidebarName;
964
+ tab?: import("../types").SidebarTabName;
965
+ } | null;
966
+ openDialog: null | {
967
+ name: "imageExport" | "help" | "jsonExport";
968
+ } | {
969
+ name: "ttd";
970
+ tab: "text-to-diagram" | "mermaid";
971
+ } | {
972
+ name: "commandPalette";
973
+ } | {
974
+ name: "settings";
975
+ } | {
976
+ name: "elementLinkSelector";
977
+ sourceElementId: ExcalidrawElement["id"];
978
+ } | {
979
+ name: "charts";
980
+ data: import("../charts").Spreadsheet;
981
+ rawText: string;
982
+ };
983
+ defaultSidebarDockedPreference: boolean;
984
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
985
+ selectedElementIds: Readonly<{
986
+ [id: string]: true;
987
+ }>;
988
+ hoveredElementIds: Readonly<{
989
+ [id: string]: true;
990
+ }>;
991
+ previousSelectedElementIds: {
992
+ [id: string]: true;
993
+ };
994
+ selectedElementsAreBeingDragged: boolean;
995
+ shouldCacheIgnoreZoom: boolean;
996
+ toast: {
997
+ message: React.ReactNode;
998
+ closable?: boolean;
999
+ duration?: number;
1000
+ } | null;
1001
+ zenModeEnabled: boolean;
1002
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1003
+ gridSize: number;
1004
+ gridStep: number;
1005
+ gridModeEnabled: boolean;
1006
+ viewModeEnabled: boolean;
1007
+ selectedGroupIds: {
1008
+ [groupId: string]: boolean;
1009
+ };
1010
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1011
+ width: number;
1012
+ height: number;
1013
+ offsetTop: number;
1014
+ offsetLeft: number;
1015
+ fileHandle: FileSystemFileHandle | null;
1016
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1017
+ stats: {
1018
+ open: boolean;
1019
+ panels: number;
1020
+ };
1021
+ showHyperlinkPopup: false | "info" | "editor";
1022
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1023
+ snapLines: readonly import("../snapping").SnapLine[];
1024
+ originSnapOffset: {
1025
+ x: number;
1026
+ y: number;
1027
+ } | null;
1028
+ objectsSnapModeEnabled: boolean;
1029
+ userToFollow: import("../types").UserToFollow | null;
1030
+ followedBy: Set<import("../types").SocketId>;
1031
+ isCropping: boolean;
1032
+ croppingElementId: ExcalidrawElement["id"] | null;
1033
+ searchMatches: Readonly<{
1034
+ focusedId: ExcalidrawElement["id"] | null;
1035
+ matches: readonly import("../types").SearchMatch[];
1036
+ }> | null;
1037
+ activeLockedId: string | null;
1038
+ lockedMultiSelections: {
1039
+ [groupId: string]: true;
1040
+ };
1041
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1042
+ };
1043
+ captureUpdate: "EVENTUALLY";
1044
+ };
1045
+ export declare const actionZoomToFitSelectionInViewport: {
1046
+ name: "zoomToFitSelectionInViewport";
1047
+ label: string;
1048
+ icon: import("react/jsx-runtime").JSX.Element;
1049
+ trackEvent: {
1050
+ category: "canvas";
1051
+ };
1052
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1053
+ appState: {
1054
+ scrollX: number;
1055
+ scrollY: number;
1056
+ zoom: {
1057
+ value: import("../types").NormalizedZoomValue;
1058
+ };
1059
+ contextMenu: {
1060
+ items: import("../components/ContextMenu").ContextMenuItems;
1061
+ top: number;
1062
+ left: number;
1063
+ } | null;
1064
+ showWelcomeScreen: boolean;
1065
+ isLoading: boolean;
1066
+ errorMessage: React.ReactNode;
1067
+ activeEmbeddable: {
1068
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
1069
+ state: "hover" | "active";
1070
+ } | null;
1071
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1072
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1073
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1074
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1075
+ isBindingEnabled: boolean;
1076
+ bindingPreference: "enabled" | "disabled";
1077
+ isMidpointSnappingEnabled: boolean;
1078
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1079
+ suggestedBinding: {
1080
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1081
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1082
+ } | null;
1083
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1084
+ frameRendering: {
1085
+ enabled: boolean;
1086
+ name: boolean;
1087
+ outline: boolean;
1088
+ clip: boolean;
1089
+ };
1090
+ editingFrame: string | null;
1091
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1092
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1093
+ activeTool: {
1094
+ lastActiveTool: import("../types").ActiveTool | null;
1095
+ locked: boolean;
1096
+ fromSelection: boolean;
1097
+ } & import("../types").ActiveTool;
1098
+ preferredSelectionTool: {
1099
+ type: "selection" | "lasso";
1100
+ initialized: boolean;
1101
+ };
1102
+ penMode: boolean;
1103
+ penDetected: boolean;
1104
+ exportBackground: boolean;
1105
+ exportEmbedScene: boolean;
1106
+ exportWithDarkMode: boolean;
1107
+ exportScale: number;
1108
+ currentItemStrokeColor: string;
1109
+ currentItemBackgroundColor: string;
1110
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1111
+ currentItemStrokeWidth: number;
1112
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1113
+ currentItemRoughness: number;
1114
+ currentItemOpacity: number;
1115
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1116
+ currentItemFontSize: number;
1117
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1118
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1119
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1120
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1121
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1122
+ currentItemArrowType: "sharp" | "round" | "elbow";
1123
+ viewBackgroundColor: string;
1124
+ cursorButton: "up" | "down";
1125
+ scrolledOutside: boolean;
1126
+ name: string | null;
1127
+ isResizing: boolean;
1128
+ isRotating: boolean;
1129
+ openMenu: "canvas" | null;
1130
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1131
+ openSidebar: {
1132
+ name: import("../types").SidebarName;
1133
+ tab?: import("../types").SidebarTabName;
1134
+ } | null;
1135
+ openDialog: null | {
1136
+ name: "imageExport" | "help" | "jsonExport";
1137
+ } | {
1138
+ name: "ttd";
1139
+ tab: "text-to-diagram" | "mermaid";
1140
+ } | {
1141
+ name: "commandPalette";
1142
+ } | {
1143
+ name: "settings";
1144
+ } | {
1145
+ name: "elementLinkSelector";
1146
+ sourceElementId: ExcalidrawElement["id"];
1147
+ } | {
1148
+ name: "charts";
1149
+ data: import("../charts").Spreadsheet;
1150
+ rawText: string;
1151
+ };
1152
+ defaultSidebarDockedPreference: boolean;
1153
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
1154
+ selectedElementIds: Readonly<{
1155
+ [id: string]: true;
1156
+ }>;
1157
+ hoveredElementIds: Readonly<{
1158
+ [id: string]: true;
1159
+ }>;
1160
+ previousSelectedElementIds: {
1161
+ [id: string]: true;
1162
+ };
1163
+ selectedElementsAreBeingDragged: boolean;
1164
+ shouldCacheIgnoreZoom: boolean;
1165
+ toast: {
1166
+ message: React.ReactNode;
1167
+ closable?: boolean;
1168
+ duration?: number;
1169
+ } | null;
1170
+ zenModeEnabled: boolean;
1171
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1172
+ gridSize: number;
1173
+ gridStep: number;
1174
+ gridModeEnabled: boolean;
1175
+ viewModeEnabled: boolean;
1176
+ selectedGroupIds: {
1177
+ [groupId: string]: boolean;
1178
+ };
1179
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1180
+ width: number;
1181
+ height: number;
1182
+ offsetTop: number;
1183
+ offsetLeft: number;
1184
+ fileHandle: FileSystemFileHandle | null;
1185
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1186
+ stats: {
1187
+ open: boolean;
1188
+ panels: number;
1189
+ };
1190
+ showHyperlinkPopup: false | "info" | "editor";
1191
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1192
+ snapLines: readonly import("../snapping").SnapLine[];
1193
+ originSnapOffset: {
1194
+ x: number;
1195
+ y: number;
1196
+ } | null;
1197
+ objectsSnapModeEnabled: boolean;
1198
+ userToFollow: import("../types").UserToFollow | null;
1199
+ followedBy: Set<import("../types").SocketId>;
1200
+ isCropping: boolean;
1201
+ croppingElementId: ExcalidrawElement["id"] | null;
1202
+ searchMatches: Readonly<{
1203
+ focusedId: ExcalidrawElement["id"] | null;
1204
+ matches: readonly import("../types").SearchMatch[];
1205
+ }> | null;
1206
+ activeLockedId: string | null;
1207
+ lockedMultiSelections: {
1208
+ [groupId: string]: true;
1209
+ };
1210
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1211
+ };
1212
+ captureUpdate: "EVENTUALLY";
1213
+ };
1214
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1215
+ } & {
1216
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1217
+ };
1218
+ export declare const actionZoomToFitSelection: {
1219
+ name: "zoomToFitSelection";
1220
+ label: string;
1221
+ icon: import("react/jsx-runtime").JSX.Element;
1222
+ trackEvent: {
1223
+ category: "canvas";
1224
+ };
1225
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1226
+ appState: {
1227
+ scrollX: number;
1228
+ scrollY: number;
1229
+ zoom: {
1230
+ value: import("../types").NormalizedZoomValue;
1231
+ };
1232
+ contextMenu: {
1233
+ items: import("../components/ContextMenu").ContextMenuItems;
1234
+ top: number;
1235
+ left: number;
1236
+ } | null;
1237
+ showWelcomeScreen: boolean;
1238
+ isLoading: boolean;
1239
+ errorMessage: React.ReactNode;
1240
+ activeEmbeddable: {
1241
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
1242
+ state: "hover" | "active";
1243
+ } | null;
1244
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1245
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1246
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1247
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1248
+ isBindingEnabled: boolean;
1249
+ bindingPreference: "enabled" | "disabled";
1250
+ isMidpointSnappingEnabled: boolean;
1251
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1252
+ suggestedBinding: {
1253
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1254
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1255
+ } | null;
1256
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1257
+ frameRendering: {
1258
+ enabled: boolean;
1259
+ name: boolean;
1260
+ outline: boolean;
1261
+ clip: boolean;
1262
+ };
1263
+ editingFrame: string | null;
1264
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1265
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1266
+ activeTool: {
1267
+ lastActiveTool: import("../types").ActiveTool | null;
1268
+ locked: boolean;
1269
+ fromSelection: boolean;
1270
+ } & import("../types").ActiveTool;
1271
+ preferredSelectionTool: {
1272
+ type: "selection" | "lasso";
1273
+ initialized: boolean;
1274
+ };
1275
+ penMode: boolean;
1276
+ penDetected: boolean;
1277
+ exportBackground: boolean;
1278
+ exportEmbedScene: boolean;
1279
+ exportWithDarkMode: boolean;
1280
+ exportScale: number;
1281
+ currentItemStrokeColor: string;
1282
+ currentItemBackgroundColor: string;
1283
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1284
+ currentItemStrokeWidth: number;
1285
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1286
+ currentItemRoughness: number;
1287
+ currentItemOpacity: number;
1288
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1289
+ currentItemFontSize: number;
1290
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1291
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1292
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1293
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1294
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1295
+ currentItemArrowType: "sharp" | "round" | "elbow";
1296
+ viewBackgroundColor: string;
1297
+ cursorButton: "up" | "down";
1298
+ scrolledOutside: boolean;
1299
+ name: string | null;
1300
+ isResizing: boolean;
1301
+ isRotating: boolean;
1302
+ openMenu: "canvas" | null;
1303
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1304
+ openSidebar: {
1305
+ name: import("../types").SidebarName;
1306
+ tab?: import("../types").SidebarTabName;
1307
+ } | null;
1308
+ openDialog: null | {
1309
+ name: "imageExport" | "help" | "jsonExport";
1310
+ } | {
1311
+ name: "ttd";
1312
+ tab: "text-to-diagram" | "mermaid";
1313
+ } | {
1314
+ name: "commandPalette";
1315
+ } | {
1316
+ name: "settings";
1317
+ } | {
1318
+ name: "elementLinkSelector";
1319
+ sourceElementId: ExcalidrawElement["id"];
1320
+ } | {
1321
+ name: "charts";
1322
+ data: import("../charts").Spreadsheet;
1323
+ rawText: string;
1324
+ };
1325
+ defaultSidebarDockedPreference: boolean;
1326
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
1327
+ selectedElementIds: Readonly<{
1328
+ [id: string]: true;
1329
+ }>;
1330
+ hoveredElementIds: Readonly<{
1331
+ [id: string]: true;
1332
+ }>;
1333
+ previousSelectedElementIds: {
1334
+ [id: string]: true;
1335
+ };
1336
+ selectedElementsAreBeingDragged: boolean;
1337
+ shouldCacheIgnoreZoom: boolean;
1338
+ toast: {
1339
+ message: React.ReactNode;
1340
+ closable?: boolean;
1341
+ duration?: number;
1342
+ } | null;
1343
+ zenModeEnabled: boolean;
1344
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1345
+ gridSize: number;
1346
+ gridStep: number;
1347
+ gridModeEnabled: boolean;
1348
+ viewModeEnabled: boolean;
1349
+ selectedGroupIds: {
1350
+ [groupId: string]: boolean;
1351
+ };
1352
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1353
+ width: number;
1354
+ height: number;
1355
+ offsetTop: number;
1356
+ offsetLeft: number;
1357
+ fileHandle: FileSystemFileHandle | null;
1358
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1359
+ stats: {
1360
+ open: boolean;
1361
+ panels: number;
1362
+ };
1363
+ showHyperlinkPopup: false | "info" | "editor";
1364
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1365
+ snapLines: readonly import("../snapping").SnapLine[];
1366
+ originSnapOffset: {
1367
+ x: number;
1368
+ y: number;
1369
+ } | null;
1370
+ objectsSnapModeEnabled: boolean;
1371
+ userToFollow: import("../types").UserToFollow | null;
1372
+ followedBy: Set<import("../types").SocketId>;
1373
+ isCropping: boolean;
1374
+ croppingElementId: ExcalidrawElement["id"] | null;
1375
+ searchMatches: Readonly<{
1376
+ focusedId: ExcalidrawElement["id"] | null;
1377
+ matches: readonly import("../types").SearchMatch[];
1378
+ }> | null;
1379
+ activeLockedId: string | null;
1380
+ lockedMultiSelections: {
1381
+ [groupId: string]: true;
1382
+ };
1383
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1384
+ };
1385
+ captureUpdate: "EVENTUALLY";
1386
+ };
1387
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1388
+ } & {
1389
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1390
+ };
1391
+ export declare const actionZoomToFit: {
1392
+ name: "zoomToFit";
1393
+ label: string;
1394
+ icon: import("react/jsx-runtime").JSX.Element;
1395
+ viewMode: true;
1396
+ trackEvent: {
1397
+ category: "canvas";
1398
+ };
1399
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1400
+ appState: {
1401
+ scrollX: number;
1402
+ scrollY: number;
1403
+ zoom: {
1404
+ value: import("../types").NormalizedZoomValue;
1405
+ };
1406
+ contextMenu: {
1407
+ items: import("../components/ContextMenu").ContextMenuItems;
1408
+ top: number;
1409
+ left: number;
1410
+ } | null;
1411
+ showWelcomeScreen: boolean;
1412
+ isLoading: boolean;
1413
+ errorMessage: React.ReactNode;
1414
+ activeEmbeddable: {
1415
+ element: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement;
1416
+ state: "hover" | "active";
1417
+ } | null;
1418
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1419
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1420
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1421
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1422
+ isBindingEnabled: boolean;
1423
+ bindingPreference: "enabled" | "disabled";
1424
+ isMidpointSnappingEnabled: boolean;
1425
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1426
+ suggestedBinding: {
1427
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1428
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1429
+ } | null;
1430
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1431
+ frameRendering: {
1432
+ enabled: boolean;
1433
+ name: boolean;
1434
+ outline: boolean;
1435
+ clip: boolean;
1436
+ };
1437
+ editingFrame: string | null;
1438
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1439
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1440
+ activeTool: {
1441
+ lastActiveTool: import("../types").ActiveTool | null;
1442
+ locked: boolean;
1443
+ fromSelection: boolean;
1444
+ } & import("../types").ActiveTool;
1445
+ preferredSelectionTool: {
1446
+ type: "selection" | "lasso";
1447
+ initialized: boolean;
1448
+ };
1449
+ penMode: boolean;
1450
+ penDetected: boolean;
1451
+ exportBackground: boolean;
1452
+ exportEmbedScene: boolean;
1453
+ exportWithDarkMode: boolean;
1454
+ exportScale: number;
1455
+ currentItemStrokeColor: string;
1456
+ currentItemBackgroundColor: string;
1457
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1458
+ currentItemStrokeWidth: number;
1459
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1460
+ currentItemRoughness: number;
1461
+ currentItemOpacity: number;
1462
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1463
+ currentItemFontSize: number;
1464
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1465
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1466
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1467
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1468
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1469
+ currentItemArrowType: "sharp" | "round" | "elbow";
1470
+ viewBackgroundColor: string;
1471
+ cursorButton: "up" | "down";
1472
+ scrolledOutside: boolean;
1473
+ name: string | null;
1474
+ isResizing: boolean;
1475
+ isRotating: boolean;
1476
+ openMenu: "canvas" | null;
1477
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1478
+ openSidebar: {
1479
+ name: import("../types").SidebarName;
1480
+ tab?: import("../types").SidebarTabName;
1481
+ } | null;
1482
+ openDialog: null | {
1483
+ name: "imageExport" | "help" | "jsonExport";
1484
+ } | {
1485
+ name: "ttd";
1486
+ tab: "text-to-diagram" | "mermaid";
1487
+ } | {
1488
+ name: "commandPalette";
1489
+ } | {
1490
+ name: "settings";
1491
+ } | {
1492
+ name: "elementLinkSelector";
1493
+ sourceElementId: ExcalidrawElement["id"];
1494
+ } | {
1495
+ name: "charts";
1496
+ data: import("../charts").Spreadsheet;
1497
+ rawText: string;
1498
+ };
1499
+ defaultSidebarDockedPreference: boolean;
1500
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
1501
+ selectedElementIds: Readonly<{
1502
+ [id: string]: true;
1503
+ }>;
1504
+ hoveredElementIds: Readonly<{
1505
+ [id: string]: true;
1506
+ }>;
1507
+ previousSelectedElementIds: {
1508
+ [id: string]: true;
1509
+ };
1510
+ selectedElementsAreBeingDragged: boolean;
1511
+ shouldCacheIgnoreZoom: boolean;
1512
+ toast: {
1513
+ message: React.ReactNode;
1514
+ closable?: boolean;
1515
+ duration?: number;
1516
+ } | null;
1517
+ zenModeEnabled: boolean;
1518
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1519
+ gridSize: number;
1520
+ gridStep: number;
1521
+ gridModeEnabled: boolean;
1522
+ viewModeEnabled: boolean;
1523
+ selectedGroupIds: {
1524
+ [groupId: string]: boolean;
1525
+ };
1526
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1527
+ width: number;
1528
+ height: number;
1529
+ offsetTop: number;
1530
+ offsetLeft: number;
1531
+ fileHandle: FileSystemFileHandle | null;
1532
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1533
+ stats: {
1534
+ open: boolean;
1535
+ panels: number;
1536
+ };
1537
+ showHyperlinkPopup: false | "info" | "editor";
1538
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1539
+ snapLines: readonly import("../snapping").SnapLine[];
1540
+ originSnapOffset: {
1541
+ x: number;
1542
+ y: number;
1543
+ } | null;
1544
+ objectsSnapModeEnabled: boolean;
1545
+ userToFollow: import("../types").UserToFollow | null;
1546
+ followedBy: Set<import("../types").SocketId>;
1547
+ isCropping: boolean;
1548
+ croppingElementId: ExcalidrawElement["id"] | null;
1549
+ searchMatches: Readonly<{
1550
+ focusedId: ExcalidrawElement["id"] | null;
1551
+ matches: readonly import("../types").SearchMatch[];
1552
+ }> | null;
1553
+ activeLockedId: string | null;
1554
+ lockedMultiSelections: {
1555
+ [groupId: string]: true;
1556
+ };
1557
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1558
+ };
1559
+ captureUpdate: "EVENTUALLY";
1560
+ };
1561
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1562
+ } & {
1563
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1564
+ };
1565
+ export declare const actionToggleTheme: import("./types").Action<import("@nextcloud/excalidraw-element/types").Theme> & {
1566
+ keyTest?: ((event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
1567
+ };
1568
+ export declare const actionToggleEraserTool: {
1569
+ name: "toggleEraserTool";
1570
+ label: string;
1571
+ trackEvent: {
1572
+ category: "toolbar";
1573
+ };
1574
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1575
+ appState: {
1576
+ selectedElementIds: {};
1577
+ selectedGroupIds: {};
1578
+ activeEmbeddable: null;
1579
+ activeTool: {
1580
+ lastActiveTool: import("../types").ActiveTool | null;
1581
+ locked: boolean;
1582
+ fromSelection: boolean;
1583
+ } & import("../types").ActiveTool;
1584
+ contextMenu: {
1585
+ items: import("../components/ContextMenu").ContextMenuItems;
1586
+ top: number;
1587
+ left: number;
1588
+ } | null;
1589
+ showWelcomeScreen: boolean;
1590
+ isLoading: boolean;
1591
+ errorMessage: React.ReactNode;
1592
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1593
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1594
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1595
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1596
+ isBindingEnabled: boolean;
1597
+ bindingPreference: "enabled" | "disabled";
1598
+ isMidpointSnappingEnabled: boolean;
1599
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1600
+ suggestedBinding: {
1601
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1602
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1603
+ } | null;
1604
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1605
+ frameRendering: {
1606
+ enabled: boolean;
1607
+ name: boolean;
1608
+ outline: boolean;
1609
+ clip: boolean;
1610
+ };
1611
+ editingFrame: string | null;
1612
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1613
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1614
+ preferredSelectionTool: {
1615
+ type: "selection" | "lasso";
1616
+ initialized: boolean;
1617
+ };
1618
+ penMode: boolean;
1619
+ penDetected: boolean;
1620
+ exportBackground: boolean;
1621
+ exportEmbedScene: boolean;
1622
+ exportWithDarkMode: boolean;
1623
+ exportScale: number;
1624
+ currentItemStrokeColor: string;
1625
+ currentItemBackgroundColor: string;
1626
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1627
+ currentItemStrokeWidth: number;
1628
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1629
+ currentItemRoughness: number;
1630
+ currentItemOpacity: number;
1631
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1632
+ currentItemFontSize: number;
1633
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1634
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1635
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1636
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1637
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1638
+ currentItemArrowType: "sharp" | "round" | "elbow";
1639
+ viewBackgroundColor: string;
1640
+ scrollX: number;
1641
+ scrollY: number;
1642
+ cursorButton: "up" | "down";
1643
+ scrolledOutside: boolean;
1644
+ name: string | null;
1645
+ isResizing: boolean;
1646
+ isRotating: boolean;
1647
+ zoom: import("../types").Zoom;
1648
+ openMenu: "canvas" | null;
1649
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1650
+ openSidebar: {
1651
+ name: import("../types").SidebarName;
1652
+ tab?: import("../types").SidebarTabName;
1653
+ } | null;
1654
+ openDialog: null | {
1655
+ name: "imageExport" | "help" | "jsonExport";
1656
+ } | {
1657
+ name: "ttd";
1658
+ tab: "text-to-diagram" | "mermaid";
1659
+ } | {
1660
+ name: "commandPalette";
1661
+ } | {
1662
+ name: "settings";
1663
+ } | {
1664
+ name: "elementLinkSelector";
1665
+ sourceElementId: ExcalidrawElement["id"];
1666
+ } | {
1667
+ name: "charts";
1668
+ data: import("../charts").Spreadsheet;
1669
+ rawText: string;
1670
+ };
1671
+ defaultSidebarDockedPreference: boolean;
1672
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
1673
+ hoveredElementIds: Readonly<{
1674
+ [id: string]: true;
1675
+ }>;
1676
+ previousSelectedElementIds: {
1677
+ [id: string]: true;
1678
+ };
1679
+ selectedElementsAreBeingDragged: boolean;
1680
+ shouldCacheIgnoreZoom: boolean;
1681
+ toast: {
1682
+ message: React.ReactNode;
1683
+ closable?: boolean;
1684
+ duration?: number;
1685
+ } | null;
1686
+ zenModeEnabled: boolean;
1687
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1688
+ gridSize: number;
1689
+ gridStep: number;
1690
+ gridModeEnabled: boolean;
1691
+ viewModeEnabled: boolean;
1692
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1693
+ width: number;
1694
+ height: number;
1695
+ offsetTop: number;
1696
+ offsetLeft: number;
1697
+ fileHandle: FileSystemFileHandle | null;
1698
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1699
+ stats: {
1700
+ open: boolean;
1701
+ panels: number;
1702
+ };
1703
+ showHyperlinkPopup: false | "info" | "editor";
1704
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1705
+ snapLines: readonly import("../snapping").SnapLine[];
1706
+ originSnapOffset: {
1707
+ x: number;
1708
+ y: number;
1709
+ } | null;
1710
+ objectsSnapModeEnabled: boolean;
1711
+ userToFollow: import("../types").UserToFollow | null;
1712
+ followedBy: Set<import("../types").SocketId>;
1713
+ isCropping: boolean;
1714
+ croppingElementId: ExcalidrawElement["id"] | null;
1715
+ searchMatches: Readonly<{
1716
+ focusedId: ExcalidrawElement["id"] | null;
1717
+ matches: readonly import("../types").SearchMatch[];
1718
+ }> | null;
1719
+ activeLockedId: string | null;
1720
+ lockedMultiSelections: {
1721
+ [groupId: string]: true;
1722
+ };
1723
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1724
+ };
1725
+ captureUpdate: "IMMEDIATELY";
1726
+ };
1727
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1728
+ } & {
1729
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1730
+ };
1731
+ export declare const actionToggleLassoTool: {
1732
+ name: "toggleLassoTool";
1733
+ label: string;
1734
+ icon: import("react/jsx-runtime").JSX.Element;
1735
+ trackEvent: {
1736
+ category: "toolbar";
1737
+ };
1738
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
1739
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1740
+ appState: {
1741
+ selectedElementIds: {};
1742
+ selectedGroupIds: {};
1743
+ activeEmbeddable: null;
1744
+ activeTool: {
1745
+ lastActiveTool: import("../types").ActiveTool | null;
1746
+ locked: boolean;
1747
+ fromSelection: boolean;
1748
+ } & import("../types").ActiveTool;
1749
+ contextMenu: {
1750
+ items: import("../components/ContextMenu").ContextMenuItems;
1751
+ top: number;
1752
+ left: number;
1753
+ } | null;
1754
+ showWelcomeScreen: boolean;
1755
+ isLoading: boolean;
1756
+ errorMessage: React.ReactNode;
1757
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1758
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1759
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1760
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1761
+ isBindingEnabled: boolean;
1762
+ bindingPreference: "enabled" | "disabled";
1763
+ isMidpointSnappingEnabled: boolean;
1764
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1765
+ suggestedBinding: {
1766
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1767
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1768
+ } | null;
1769
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1770
+ frameRendering: {
1771
+ enabled: boolean;
1772
+ name: boolean;
1773
+ outline: boolean;
1774
+ clip: boolean;
1775
+ };
1776
+ editingFrame: string | null;
1777
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1778
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1779
+ preferredSelectionTool: {
1780
+ type: "selection" | "lasso";
1781
+ initialized: boolean;
1782
+ };
1783
+ penMode: boolean;
1784
+ penDetected: boolean;
1785
+ exportBackground: boolean;
1786
+ exportEmbedScene: boolean;
1787
+ exportWithDarkMode: boolean;
1788
+ exportScale: number;
1789
+ currentItemStrokeColor: string;
1790
+ currentItemBackgroundColor: string;
1791
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1792
+ currentItemStrokeWidth: number;
1793
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1794
+ currentItemRoughness: number;
1795
+ currentItemOpacity: number;
1796
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1797
+ currentItemFontSize: number;
1798
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1799
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1800
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1801
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1802
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1803
+ currentItemArrowType: "sharp" | "round" | "elbow";
1804
+ viewBackgroundColor: string;
1805
+ scrollX: number;
1806
+ scrollY: number;
1807
+ cursorButton: "up" | "down";
1808
+ scrolledOutside: boolean;
1809
+ name: string | null;
1810
+ isResizing: boolean;
1811
+ isRotating: boolean;
1812
+ zoom: import("../types").Zoom;
1813
+ openMenu: "canvas" | null;
1814
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1815
+ openSidebar: {
1816
+ name: import("../types").SidebarName;
1817
+ tab?: import("../types").SidebarTabName;
1818
+ } | null;
1819
+ openDialog: null | {
1820
+ name: "imageExport" | "help" | "jsonExport";
1821
+ } | {
1822
+ name: "ttd";
1823
+ tab: "text-to-diagram" | "mermaid";
1824
+ } | {
1825
+ name: "commandPalette";
1826
+ } | {
1827
+ name: "settings";
1828
+ } | {
1829
+ name: "elementLinkSelector";
1830
+ sourceElementId: ExcalidrawElement["id"];
1831
+ } | {
1832
+ name: "charts";
1833
+ data: import("../charts").Spreadsheet;
1834
+ rawText: string;
1835
+ };
1836
+ defaultSidebarDockedPreference: boolean;
1837
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
1838
+ hoveredElementIds: Readonly<{
1839
+ [id: string]: true;
1840
+ }>;
1841
+ previousSelectedElementIds: {
1842
+ [id: string]: true;
1843
+ };
1844
+ selectedElementsAreBeingDragged: boolean;
1845
+ shouldCacheIgnoreZoom: boolean;
1846
+ toast: {
1847
+ message: React.ReactNode;
1848
+ closable?: boolean;
1849
+ duration?: number;
1850
+ } | null;
1851
+ zenModeEnabled: boolean;
1852
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
1853
+ gridSize: number;
1854
+ gridStep: number;
1855
+ gridModeEnabled: boolean;
1856
+ viewModeEnabled: boolean;
1857
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
1858
+ width: number;
1859
+ height: number;
1860
+ offsetTop: number;
1861
+ offsetLeft: number;
1862
+ fileHandle: FileSystemFileHandle | null;
1863
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
1864
+ stats: {
1865
+ open: boolean;
1866
+ panels: number;
1867
+ };
1868
+ showHyperlinkPopup: false | "info" | "editor";
1869
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
1870
+ snapLines: readonly import("../snapping").SnapLine[];
1871
+ originSnapOffset: {
1872
+ x: number;
1873
+ y: number;
1874
+ } | null;
1875
+ objectsSnapModeEnabled: boolean;
1876
+ userToFollow: import("../types").UserToFollow | null;
1877
+ followedBy: Set<import("../types").SocketId>;
1878
+ isCropping: boolean;
1879
+ croppingElementId: ExcalidrawElement["id"] | null;
1880
+ searchMatches: Readonly<{
1881
+ focusedId: ExcalidrawElement["id"] | null;
1882
+ matches: readonly import("../types").SearchMatch[];
1883
+ }> | null;
1884
+ activeLockedId: string | null;
1885
+ lockedMultiSelections: {
1886
+ [groupId: string]: true;
1887
+ };
1888
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
1889
+ };
1890
+ captureUpdate: "NEVER";
1891
+ };
1892
+ } & {
1893
+ keyTest?: undefined;
1894
+ };
1895
+ export declare const actionToggleHandTool: {
1896
+ name: "toggleHandTool";
1897
+ label: string;
1898
+ trackEvent: {
1899
+ category: "toolbar";
1900
+ };
1901
+ icon: import("react/jsx-runtime").JSX.Element;
1902
+ viewMode: false;
1903
+ perform: (elements: readonly import("@nextcloud/excalidraw-element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: unknown, app: import("../types").AppClassProperties) => {
1904
+ appState: {
1905
+ selectedElementIds: {};
1906
+ selectedGroupIds: {};
1907
+ activeEmbeddable: null;
1908
+ activeTool: {
1909
+ lastActiveTool: import("../types").ActiveTool | null;
1910
+ locked: boolean;
1911
+ fromSelection: boolean;
1912
+ } & import("../types").ActiveTool;
1913
+ contextMenu: {
1914
+ items: import("../components/ContextMenu").ContextMenuItems;
1915
+ top: number;
1916
+ left: number;
1917
+ } | null;
1918
+ showWelcomeScreen: boolean;
1919
+ isLoading: boolean;
1920
+ errorMessage: React.ReactNode;
1921
+ newElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawNonSelectionElement> | null;
1922
+ resizingElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1923
+ multiElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawLinearElement> | null;
1924
+ selectionElement: import("@nextcloud/excalidraw-element/types").NonDeletedExcalidrawElement | null;
1925
+ isBindingEnabled: boolean;
1926
+ bindingPreference: "enabled" | "disabled";
1927
+ isMidpointSnappingEnabled: boolean;
1928
+ startBoundElement: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement> | null;
1929
+ suggestedBinding: {
1930
+ element: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawBindableElement>;
1931
+ midPoint?: import("@nextcloud/excalidraw-math").GlobalPoint;
1932
+ } | null;
1933
+ frameToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<import("@nextcloud/excalidraw-element/types").ExcalidrawFrameLikeElement> | null;
1934
+ frameRendering: {
1935
+ enabled: boolean;
1936
+ name: boolean;
1937
+ outline: boolean;
1938
+ clip: boolean;
1939
+ };
1940
+ editingFrame: string | null;
1941
+ elementsToHighlight: import("@nextcloud/excalidraw-element/types").NonDeleted<ExcalidrawElement>[] | null;
1942
+ editingTextElement: import("@nextcloud/excalidraw-element/types").ExcalidrawTextElement | null;
1943
+ preferredSelectionTool: {
1944
+ type: "selection" | "lasso";
1945
+ initialized: boolean;
1946
+ };
1947
+ penMode: boolean;
1948
+ penDetected: boolean;
1949
+ exportBackground: boolean;
1950
+ exportEmbedScene: boolean;
1951
+ exportWithDarkMode: boolean;
1952
+ exportScale: number;
1953
+ currentItemStrokeColor: string;
1954
+ currentItemBackgroundColor: string;
1955
+ currentItemFillStyle: ExcalidrawElement["fillStyle"];
1956
+ currentItemStrokeWidth: number;
1957
+ currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
1958
+ currentItemRoughness: number;
1959
+ currentItemOpacity: number;
1960
+ currentItemFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues;
1961
+ currentItemFontSize: number;
1962
+ currentItemTextAlign: import("@nextcloud/excalidraw-element/types").TextAlign;
1963
+ currentItemStartArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1964
+ currentItemEndArrowhead: import("@nextcloud/excalidraw-element/types").Arrowhead | null;
1965
+ currentHoveredFontFamily: import("@nextcloud/excalidraw-element/types").FontFamilyValues | null;
1966
+ currentItemRoundness: import("@nextcloud/excalidraw-element/types").StrokeRoundness;
1967
+ currentItemArrowType: "sharp" | "round" | "elbow";
1968
+ viewBackgroundColor: string;
1969
+ scrollX: number;
1970
+ scrollY: number;
1971
+ cursorButton: "up" | "down";
1972
+ scrolledOutside: boolean;
1973
+ name: string | null;
1974
+ isResizing: boolean;
1975
+ isRotating: boolean;
1976
+ zoom: import("../types").Zoom;
1977
+ openMenu: "canvas" | null;
1978
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
1979
+ openSidebar: {
1980
+ name: import("../types").SidebarName;
1981
+ tab?: import("../types").SidebarTabName;
1982
+ } | null;
1983
+ openDialog: null | {
1984
+ name: "imageExport" | "help" | "jsonExport";
1985
+ } | {
1986
+ name: "ttd";
1987
+ tab: "text-to-diagram" | "mermaid";
1988
+ } | {
1989
+ name: "commandPalette";
1990
+ } | {
1991
+ name: "settings";
1992
+ } | {
1993
+ name: "elementLinkSelector";
1994
+ sourceElementId: ExcalidrawElement["id"];
1995
+ } | {
1996
+ name: "charts";
1997
+ data: import("../charts").Spreadsheet;
1998
+ rawText: string;
1999
+ };
2000
+ defaultSidebarDockedPreference: boolean;
2001
+ lastPointerDownWith: import("@nextcloud/excalidraw-element/types").PointerType;
2002
+ hoveredElementIds: Readonly<{
2003
+ [id: string]: true;
2004
+ }>;
2005
+ previousSelectedElementIds: {
2006
+ [id: string]: true;
2007
+ };
2008
+ selectedElementsAreBeingDragged: boolean;
2009
+ shouldCacheIgnoreZoom: boolean;
2010
+ toast: {
2011
+ message: React.ReactNode;
2012
+ closable?: boolean;
2013
+ duration?: number;
2014
+ } | null;
2015
+ zenModeEnabled: boolean;
2016
+ theme: import("@nextcloud/excalidraw-element/types").Theme;
2017
+ gridSize: number;
2018
+ gridStep: number;
2019
+ gridModeEnabled: boolean;
2020
+ viewModeEnabled: boolean;
2021
+ editingGroupId: import("@nextcloud/excalidraw-element/types").GroupId | null;
2022
+ width: number;
2023
+ height: number;
2024
+ offsetTop: number;
2025
+ offsetLeft: number;
2026
+ fileHandle: FileSystemFileHandle | null;
2027
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
2028
+ stats: {
2029
+ open: boolean;
2030
+ panels: number;
2031
+ };
2032
+ showHyperlinkPopup: false | "info" | "editor";
2033
+ selectedLinearElement: import("@nextcloud/excalidraw-element").LinearElementEditor | null;
2034
+ snapLines: readonly import("../snapping").SnapLine[];
2035
+ originSnapOffset: {
2036
+ x: number;
2037
+ y: number;
2038
+ } | null;
2039
+ objectsSnapModeEnabled: boolean;
2040
+ userToFollow: import("../types").UserToFollow | null;
2041
+ followedBy: Set<import("../types").SocketId>;
2042
+ isCropping: boolean;
2043
+ croppingElementId: ExcalidrawElement["id"] | null;
2044
+ searchMatches: Readonly<{
2045
+ focusedId: ExcalidrawElement["id"] | null;
2046
+ matches: readonly import("../types").SearchMatch[];
2047
+ }> | null;
2048
+ activeLockedId: string | null;
2049
+ lockedMultiSelections: {
2050
+ [groupId: string]: true;
2051
+ };
2052
+ bindMode: import("@nextcloud/excalidraw-element/types").BindMode;
2053
+ };
2054
+ captureUpdate: "IMMEDIATELY";
2055
+ };
2056
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
2057
+ } & {
2058
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
2059
+ };