@zsviczian/excalidraw 0.17.1-obsidian-42 → 0.17.1-obsidian-44

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