@excalidraw/excalidraw 0.18.0-d92384b77-3 → 0.18.0-f0063e113

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