@zsviczian/excalidraw 0.18.0-30 → 0.18.0-30-printFrame-test-1

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 (385) hide show
  1. package/dist/excalidraw.development.js +103 -158
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/package.json +1 -1
  4. package/types/common/src/binary-heap.d.ts +12 -12
  5. package/types/common/src/colors.d.ts +62 -62
  6. package/types/common/src/constants.d.ts +354 -354
  7. package/types/common/src/emitter.d.ts +16 -16
  8. package/types/common/src/font-metadata.d.ts +48 -48
  9. package/types/common/src/index.d.ts +12 -12
  10. package/types/common/src/keys.d.ts +189 -189
  11. package/types/common/src/points.d.ts +9 -9
  12. package/types/common/src/promise-pool.d.ts +6 -6
  13. package/types/common/src/queue.d.ts +9 -9
  14. package/types/common/src/random.d.ts +4 -4
  15. package/types/common/src/url.d.ts +7 -7
  16. package/types/common/src/utility-types.d.ts +37 -37
  17. package/types/common/src/utils.d.ts +267 -267
  18. package/types/element/src/Scene.d.ts +76 -76
  19. package/types/element/src/align.d.ts +8 -8
  20. package/types/element/src/binding.d.ts +111 -111
  21. package/types/element/src/bounds.d.ts +89 -89
  22. package/types/element/src/collision.d.ts +32 -32
  23. package/types/element/src/comparisons.d.ts +8 -8
  24. package/types/element/src/containerCache.d.ts +11 -11
  25. package/types/element/src/cropElement.d.ts +19 -19
  26. package/types/element/src/delta.d.ts +225 -225
  27. package/types/element/src/distance.d.ts +3 -3
  28. package/types/element/src/distribute.d.ts +7 -7
  29. package/types/element/src/dragElements.d.ts +33 -33
  30. package/types/element/src/duplicate.d.ts +63 -63
  31. package/types/element/src/easingFunctions.d.ts +6 -6
  32. package/types/element/src/elbowArrow.d.ts +17 -17
  33. package/types/element/src/elementLink.d.ts +13 -13
  34. package/types/element/src/embeddable.d.ts +10 -10
  35. package/types/element/src/flowchart.d.ts +26 -26
  36. package/types/element/src/fractionalIndex.d.ts +57 -57
  37. package/types/element/src/frame.d.ts +70 -70
  38. package/types/element/src/groups.d.ts +34 -34
  39. package/types/element/src/heading.d.ts +15 -15
  40. package/types/element/src/image.d.ts +32 -32
  41. package/types/element/src/index.d.ts +57 -57
  42. package/types/element/src/linearElementEditor.d.ts +116 -116
  43. package/types/element/src/mutateElement.d.ts +21 -21
  44. package/types/element/src/newElement.d.ts +63 -63
  45. package/types/element/src/renderElement.d.ts +28 -28
  46. package/types/element/src/resizeElements.d.ts +39 -39
  47. package/types/element/src/resizeTest.d.ts +15 -15
  48. package/types/element/src/selection.d.ts +38 -38
  49. package/types/element/src/shape.d.ts +42 -42
  50. package/types/element/src/showSelectedShapeActions.d.ts +3 -3
  51. package/types/element/src/sizeHelpers.d.ts +35 -35
  52. package/types/element/src/sortElements.d.ts +2 -2
  53. package/types/element/src/store.d.ts +232 -232
  54. package/types/element/src/textElement.d.ts +40 -40
  55. package/types/element/src/textMeasurements.d.ts +41 -41
  56. package/types/element/src/textWrapping.d.ts +13 -13
  57. package/types/element/src/transformHandles.d.ts +55 -55
  58. package/types/element/src/typeChecks.d.ts +57 -57
  59. package/types/element/src/types.d.ts +301 -298
  60. package/types/element/src/utils.d.ts +31 -31
  61. package/types/element/src/zindex.d.ts +7 -7
  62. package/types/excalidraw/actions/actionAddToLibrary.d.ts +632 -632
  63. package/types/excalidraw/actions/actionAlign.d.ts +109 -109
  64. package/types/excalidraw/actions/actionBoundText.d.ts +458 -458
  65. package/types/excalidraw/actions/actionCanvas.d.ts +3293 -3293
  66. package/types/excalidraw/actions/actionClipboard.d.ts +1382 -1382
  67. package/types/excalidraw/actions/actionCropEditor.d.ts +223 -223
  68. package/types/excalidraw/actions/actionDeleteSelected.d.ts +672 -672
  69. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  70. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -17
  71. package/types/excalidraw/actions/actionElementLink.d.ts +245 -245
  72. package/types/excalidraw/actions/actionElementLock.d.ts +444 -444
  73. package/types/excalidraw/actions/actionEmbeddable.d.ts +220 -220
  74. package/types/excalidraw/actions/actionExport.d.ts +1962 -1962
  75. package/types/excalidraw/actions/actionFinalize.d.ts +670 -670
  76. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  77. package/types/excalidraw/actions/actionFrame.d.ts +1391 -1388
  78. package/types/excalidraw/actions/actionGroup.d.ts +456 -456
  79. package/types/excalidraw/actions/actionHistory.d.ts +6 -6
  80. package/types/excalidraw/actions/actionLinearEditor.d.ts +754 -751
  81. package/types/excalidraw/actions/actionLink.d.ts +224 -224
  82. package/types/excalidraw/actions/actionMenu.d.ts +652 -652
  83. package/types/excalidraw/actions/actionNavigate.d.ts +432 -432
  84. package/types/excalidraw/actions/actionProperties.d.ts +3299 -3299
  85. package/types/excalidraw/actions/actionSelectAll.d.ts +223 -223
  86. package/types/excalidraw/actions/actionStyles.d.ts +237 -237
  87. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  88. package/types/excalidraw/actions/actionToggleGridMode.d.ts +226 -226
  89. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +224 -224
  90. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +217 -217
  91. package/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -19
  92. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -223
  93. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -224
  94. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -224
  95. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  96. package/types/excalidraw/actions/index.d.ts +28 -28
  97. package/types/excalidraw/actions/manager.d.ts +21 -21
  98. package/types/excalidraw/actions/register.d.ts +5 -5
  99. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  100. package/types/excalidraw/actions/types.d.ts +47 -47
  101. package/types/excalidraw/analytics.d.ts +1 -1
  102. package/types/excalidraw/animated-trail.d.ts +39 -39
  103. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  104. package/types/excalidraw/appState.d.ts +99 -99
  105. package/types/excalidraw/charts.d.ts +27 -27
  106. package/types/excalidraw/clients.d.ts +14 -14
  107. package/types/excalidraw/clipboard.d.ts +66 -66
  108. package/types/excalidraw/components/Actions.d.ts +31 -31
  109. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  110. package/types/excalidraw/components/App.d.ts +565 -565
  111. package/types/excalidraw/components/Avatar.d.ts +11 -11
  112. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  113. package/types/excalidraw/components/Button.d.ts +17 -17
  114. package/types/excalidraw/components/ButtonIcon.d.ts +16 -16
  115. package/types/excalidraw/components/ButtonIconCycle.d.ts +11 -11
  116. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  117. package/types/excalidraw/components/Card.d.ts +6 -6
  118. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  119. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +10 -10
  120. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +23 -23
  121. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  122. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -7
  123. package/types/excalidraw/components/ColorPicker/Picker.d.ts +17 -17
  124. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -9
  125. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  126. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  127. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  128. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  129. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  130. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  131. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  132. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  133. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  134. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  135. package/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -23
  136. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  137. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  138. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  139. package/types/excalidraw/components/Dialog.d.ts +13 -13
  140. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  141. package/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -7
  142. package/types/excalidraw/components/ElementLinkDialog.d.ts +12 -12
  143. package/types/excalidraw/components/Ellipsify.d.ts +3 -3
  144. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  145. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  146. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  147. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  148. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  149. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  150. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  151. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -26
  152. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  153. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  154. package/types/excalidraw/components/HandButton.d.ts +10 -10
  155. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  156. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  157. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  158. package/types/excalidraw/components/IconPicker.d.ts +15 -15
  159. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  160. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  161. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  162. package/types/excalidraw/components/Island.d.ts +10 -10
  163. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  164. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  165. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  166. package/types/excalidraw/components/LibraryMenu.d.ts +10 -10
  167. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  168. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  169. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  170. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  171. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  172. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  173. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  174. package/types/excalidraw/components/LockButton.d.ts +10 -10
  175. package/types/excalidraw/components/MagicButton.d.ts +10 -10
  176. package/types/excalidraw/components/MobileMenu.d.ts +25 -25
  177. package/types/excalidraw/components/Modal.d.ts +14 -14
  178. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  179. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  180. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  181. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  182. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  183. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  184. package/types/excalidraw/components/Popover.d.ts +15 -15
  185. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  186. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  187. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  188. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  189. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  190. package/types/excalidraw/components/RadioSelection.d.ts +20 -20
  191. package/types/excalidraw/components/Range.d.ts +8 -8
  192. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  193. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  194. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  195. package/types/excalidraw/components/Section.d.ts +6 -6
  196. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  197. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  198. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  199. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  200. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  201. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  202. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  203. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  204. package/types/excalidraw/components/Sidebar/common.d.ts +34 -34
  205. package/types/excalidraw/components/Spinner.d.ts +8 -8
  206. package/types/excalidraw/components/Stack.d.ts +15 -15
  207. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  208. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  209. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  210. package/types/excalidraw/components/Stats/Collapsible.d.ts +10 -10
  211. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  212. package/types/excalidraw/components/Stats/DragInput.d.ts +44 -44
  213. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  214. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  215. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  216. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  217. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  218. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  219. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  220. package/types/excalidraw/components/Stats/utils.d.ts +19 -19
  221. package/types/excalidraw/components/Switch.d.ts +9 -9
  222. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  223. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  224. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  225. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  226. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  227. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  228. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  229. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  230. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  231. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  232. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  233. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  234. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +9 -9
  235. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  236. package/types/excalidraw/components/TextField.d.ts +21 -21
  237. package/types/excalidraw/components/Toast.d.ts +9 -9
  238. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  239. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  240. package/types/excalidraw/components/Trans.d.ts +9 -9
  241. package/types/excalidraw/components/UnlockPopup.d.ts +8 -8
  242. package/types/excalidraw/components/UserList.d.ts +18 -18
  243. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +30 -30
  244. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  245. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  246. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  247. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  248. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  249. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  250. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +46 -46
  251. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -8
  252. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  253. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  254. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -16
  255. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  256. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  257. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  258. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  259. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  260. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  261. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  262. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -19
  263. package/types/excalidraw/components/hyperlink/helpers.d.ts +10 -10
  264. package/types/excalidraw/components/icons.d.ts +227 -227
  265. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  266. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  267. package/types/excalidraw/components/main-menu/MainMenu.d.ts +83 -83
  268. package/types/excalidraw/components/shapes.d.ts +62 -62
  269. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +60 -60
  270. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  271. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  272. package/types/excalidraw/context/tunnels.d.ts +21 -21
  273. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  274. package/types/excalidraw/cursor.d.ts +6 -6
  275. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  276. package/types/excalidraw/data/ai/types.d.ts +242 -242
  277. package/types/excalidraw/data/blob.d.ts +53 -53
  278. package/types/excalidraw/data/encode.d.ts +55 -55
  279. package/types/excalidraw/data/encryption.d.ts +9 -9
  280. package/types/excalidraw/data/filesystem.d.ts +21 -21
  281. package/types/excalidraw/data/image.d.ts +9 -9
  282. package/types/excalidraw/data/index.d.ts +22 -22
  283. package/types/excalidraw/data/json.d.ts +16 -16
  284. package/types/excalidraw/data/library.d.ts +112 -112
  285. package/types/excalidraw/data/reconcile.d.ts +7 -7
  286. package/types/excalidraw/data/resave.d.ts +5 -5
  287. package/types/excalidraw/data/restore.d.ts +21 -21
  288. package/types/excalidraw/data/transform.d.ts +81 -81
  289. package/types/excalidraw/data/types.d.ts +45 -45
  290. package/types/excalidraw/deburr.d.ts +1 -1
  291. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  292. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  293. package/types/excalidraw/editor-jotai.d.ts +56 -56
  294. package/types/excalidraw/entry.d.ts +1 -1
  295. package/types/excalidraw/env.d.cts +1 -1
  296. package/types/excalidraw/env.d.ts +1 -1
  297. package/types/excalidraw/eraser/index.d.ts +12 -12
  298. package/types/excalidraw/errors.d.ts +29 -29
  299. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  300. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  301. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  302. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  303. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  304. package/types/excalidraw/fonts/Fonts.d.ts +90 -90
  305. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  306. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  307. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  308. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  309. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  310. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  311. package/types/excalidraw/fonts/index.d.ts +1 -1
  312. package/types/excalidraw/gesture.d.ts +6 -6
  313. package/types/excalidraw/history.d.ts +48 -48
  314. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  315. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  316. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  317. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  318. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  319. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  320. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  321. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  322. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  323. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  324. package/types/excalidraw/i18n.d.ts +24 -24
  325. package/types/excalidraw/index-node.d.ts +1 -1
  326. package/types/excalidraw/index.d.ts +61 -61
  327. package/types/excalidraw/laser-trails.d.ts +20 -20
  328. package/types/excalidraw/lasso/index.d.ts +16 -16
  329. package/types/excalidraw/lasso/utils.d.ts +13 -13
  330. package/types/excalidraw/main.d.ts +2 -2
  331. package/types/excalidraw/mermaid.d.ts +2 -2
  332. package/types/excalidraw/obsidianUtils.d.ts +40 -40
  333. package/types/excalidraw/polyfill.d.ts +2 -2
  334. package/types/excalidraw/publicPath.d.ts +1 -1
  335. package/types/excalidraw/reactUtils.d.ts +14 -14
  336. package/types/excalidraw/renderer/helpers.d.ts +18 -18
  337. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  338. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  339. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  340. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  341. package/types/excalidraw/renderer/staticScene.d.ts +14 -14
  342. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  343. package/types/excalidraw/scene/Renderer.d.ts +27 -27
  344. package/types/excalidraw/scene/export.d.ts +37 -37
  345. package/types/excalidraw/scene/index.d.ts +4 -4
  346. package/types/excalidraw/scene/normalize.d.ts +4 -4
  347. package/types/excalidraw/scene/scroll.d.ts +23 -23
  348. package/types/excalidraw/scene/scrollbars.d.ts +11 -11
  349. package/types/excalidraw/scene/types.d.ts +122 -122
  350. package/types/excalidraw/scene/zoom.d.ts +12 -12
  351. package/types/excalidraw/snapping.d.ts +111 -111
  352. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  353. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  354. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  355. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  356. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  357. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  358. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  359. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  360. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  361. package/types/excalidraw/types.d.ts +778 -778
  362. package/types/excalidraw/webpack.dev.config.d.ts +114 -114
  363. package/types/excalidraw/webpack.prod.config.d.ts +128 -128
  364. package/types/excalidraw/workers.d.ts +36 -36
  365. package/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -24
  366. package/types/math/src/angle.d.ts +19 -19
  367. package/types/math/src/constants.d.ts +3 -3
  368. package/types/math/src/curve.d.ts +74 -74
  369. package/types/math/src/ellipse.d.ts +44 -44
  370. package/types/math/src/index.d.ts +13 -13
  371. package/types/math/src/line.d.ts +17 -17
  372. package/types/math/src/point.d.ts +122 -122
  373. package/types/math/src/polygon.d.ts +6 -6
  374. package/types/math/src/range.d.ts +44 -44
  375. package/types/math/src/rectangle.d.ts +5 -5
  376. package/types/math/src/segment.d.ts +39 -39
  377. package/types/math/src/triangle.d.ts +11 -11
  378. package/types/math/src/types.d.ts +106 -106
  379. package/types/math/src/utils.d.ts +7 -7
  380. package/types/math/src/vector.d.ts +94 -94
  381. package/types/utils/src/bbox.d.ts +9 -9
  382. package/types/utils/src/export.d.ts +35 -35
  383. package/types/utils/src/index.d.ts +4 -4
  384. package/types/utils/src/shape.d.ts +58 -58
  385. package/types/utils/src/withinBounds.d.ts +19 -19
@@ -1,298 +1,301 @@
1
- import type { LocalPoint, Radians } from "@excalidraw/math";
2
- import type { FONT_FAMILY, ROUNDNESS, TEXT_ALIGN, THEME, VERTICAL_ALIGN } from "@excalidraw/common";
3
- import type { MakeBrand, MarkNonNullable, Merge, ValueOf } from "@excalidraw/common/utility-types";
4
- export type ChartType = "bar" | "line";
5
- export type FillStyle = "hachure" | "cross-hatch" | "solid" | "zigzag";
6
- export type FontFamilyKeys = keyof typeof FONT_FAMILY;
7
- export type FontFamilyValues = typeof FONT_FAMILY[FontFamilyKeys];
8
- export type Theme = typeof THEME[keyof typeof THEME];
9
- export type FontString = string & {
10
- _brand: "fontString";
11
- };
12
- export type GroupId = string;
13
- export type PointerType = "mouse" | "pen" | "touch";
14
- export type StrokeRoundness = "round" | "sharp";
15
- export type RoundnessType = ValueOf<typeof ROUNDNESS>;
16
- export type StrokeStyle = "solid" | "dashed" | "dotted";
17
- export type TextAlign = typeof TEXT_ALIGN[keyof typeof TEXT_ALIGN];
18
- type VerticalAlignKeys = keyof typeof VERTICAL_ALIGN;
19
- export type VerticalAlign = typeof VERTICAL_ALIGN[VerticalAlignKeys];
20
- export type FractionalIndex = string & {
21
- _brand: "franctionalIndex";
22
- };
23
- export type BoundElement = Readonly<{
24
- id: ExcalidrawLinearElement["id"];
25
- type: "arrow" | "text";
26
- }>;
27
- type _ExcalidrawElementBase = Readonly<{
28
- id: string;
29
- x: number;
30
- y: number;
31
- strokeColor: string;
32
- backgroundColor: string;
33
- fillStyle: FillStyle;
34
- strokeWidth: number;
35
- strokeStyle: StrokeStyle;
36
- roundness: null | {
37
- type: RoundnessType;
38
- value?: number;
39
- };
40
- roughness: number;
41
- opacity: number;
42
- width: number;
43
- height: number;
44
- angle: Radians;
45
- /** Random integer used to seed shape generation so that the roughjs shape
46
- doesn't differ across renders. */
47
- seed: number;
48
- /** Integer that is sequentially incremented on each change. Used to reconcile
49
- elements during collaboration or when saving to server. */
50
- version: number;
51
- /** Random integer that is regenerated on each change.
52
- Used for deterministic reconciliation of updates during collaboration,
53
- in case the versions (see above) are identical. */
54
- versionNonce: number;
55
- /** String in a fractional form defined by https://github.com/rocicorp/fractional-indexing.
56
- Used for ordering in multiplayer scenarios, such as during reconciliation or undo / redo.
57
- Always kept in sync with the array order by `syncMovedIndices` and `syncInvalidIndices`.
58
- Could be null, i.e. for new elements which were not yet assigned to the scene. */
59
- index: FractionalIndex | null;
60
- isDeleted: boolean;
61
- /** List of groups the element belongs to.
62
- Ordered from deepest to shallowest. */
63
- groupIds: readonly GroupId[];
64
- frameId: string | null;
65
- /** other elements that are bound to this element */
66
- boundElements: readonly BoundElement[] | null;
67
- /** epoch (ms) timestamp of last element update */
68
- updated: number;
69
- link: string | null;
70
- locked: boolean;
71
- customData?: Record<string, any>;
72
- }>;
73
- export type ExcalidrawSelectionElement = _ExcalidrawElementBase & {
74
- type: "selection";
75
- };
76
- export type ExcalidrawRectangleElement = _ExcalidrawElementBase & {
77
- type: "rectangle";
78
- };
79
- export type ExcalidrawDiamondElement = _ExcalidrawElementBase & {
80
- type: "diamond";
81
- };
82
- export type ExcalidrawEllipseElement = _ExcalidrawElementBase & {
83
- type: "ellipse";
84
- };
85
- export type ExcalidrawEmbeddableElement = _ExcalidrawElementBase & Readonly<{
86
- type: "embeddable";
87
- scale: [number, number];
88
- }>;
89
- export type MagicGenerationData = {
90
- status: "pending";
91
- } | {
92
- status: "done";
93
- html: string;
94
- } | {
95
- status: "error";
96
- message?: string;
97
- code: "ERR_GENERATION_INTERRUPTED" | string;
98
- };
99
- export type ExcalidrawIframeElement = _ExcalidrawElementBase & Readonly<{
100
- type: "iframe";
101
- customData?: {
102
- generationData?: MagicGenerationData;
103
- };
104
- scale: [number, number];
105
- }>;
106
- export type ExcalidrawIframeLikeElement = ExcalidrawIframeElement | ExcalidrawEmbeddableElement;
107
- export type IframeData = ({
108
- intrinsicSize: {
109
- w: number;
110
- h: number;
111
- };
112
- error?: Error;
113
- sandbox?: {
114
- allowSameOrigin?: boolean;
115
- };
116
- } & ({
117
- type: "video" | "generic";
118
- link: string;
119
- } | {
120
- type: "document";
121
- srcdoc: (theme: Theme) => string;
122
- }));
123
- export type ImageCrop = {
124
- x: number;
125
- y: number;
126
- width: number;
127
- height: number;
128
- naturalWidth: number;
129
- naturalHeight: number;
130
- };
131
- export type ExcalidrawImageElement = _ExcalidrawElementBase & Readonly<{
132
- type: "image";
133
- fileId: FileId | null;
134
- /** whether respective file is persisted */
135
- status: "pending" | "saved" | "error";
136
- /** X and Y scale factors <-1, 1>, used for image axis flipping */
137
- scale: [number, number];
138
- /** whether an element is cropped */
139
- crop: ImageCrop | null;
140
- }>;
141
- export type InitializedExcalidrawImageElement = MarkNonNullable<ExcalidrawImageElement, "fileId">;
142
- export type ExcalidrawFrameElement = _ExcalidrawElementBase & {
143
- type: "frame";
144
- name: string | null;
145
- };
146
- export type ExcalidrawMagicFrameElement = _ExcalidrawElementBase & {
147
- type: "magicframe";
148
- name: string | null;
149
- };
150
- export type ExcalidrawFrameLikeElement = ExcalidrawFrameElement | ExcalidrawMagicFrameElement;
151
- /**
152
- * These are elements that don't have any additional properties.
153
- */
154
- export type ExcalidrawGenericElement = ExcalidrawSelectionElement | ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
155
- export type ExcalidrawFlowchartNodeElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
156
- export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement | ExcalidrawSelectionElement;
157
- /**
158
- * ExcalidrawElement should be JSON serializable and (eventually) contain
159
- * no computed data. The list of all ExcalidrawElements should be shareable
160
- * between peers and contain no state local to the peer.
161
- */
162
- export type ExcalidrawElement = ExcalidrawGenericElement | ExcalidrawTextElement | ExcalidrawLinearElement | ExcalidrawArrowElement | ExcalidrawFreeDrawElement | ExcalidrawImageElement | ExcalidrawFrameElement | ExcalidrawMagicFrameElement | ExcalidrawIframeElement | ExcalidrawEmbeddableElement;
163
- export type ExcalidrawNonSelectionElement = Exclude<ExcalidrawElement, ExcalidrawSelectionElement>;
164
- export type Ordered<TElement extends ExcalidrawElement> = TElement & {
165
- index: FractionalIndex;
166
- };
167
- export type OrderedExcalidrawElement = Ordered<ExcalidrawElement>;
168
- export type NonDeleted<TElement extends ExcalidrawElement> = TElement & {
169
- isDeleted: boolean;
170
- };
171
- export type NonDeletedExcalidrawElement = NonDeleted<ExcalidrawElement>;
172
- export type ExcalidrawTextElement = _ExcalidrawElementBase & Readonly<{
173
- type: "text";
174
- fontSize: number;
175
- fontFamily: FontFamilyValues;
176
- text: string;
177
- rawText: string;
178
- textAlign: TextAlign;
179
- verticalAlign: VerticalAlign;
180
- containerId: ExcalidrawGenericElement["id"] | null;
181
- originalText: string;
182
- /**
183
- * If `true` the width will fit the text. If `false`, the text will
184
- * wrap to fit the width.
185
- *
186
- * @default true
187
- */
188
- autoResize: boolean;
189
- /**
190
- * Unitless line height (aligned to W3C). To get line height in px, multiply
191
- * with font size (using `getLineHeightInPx` helper).
192
- */
193
- lineHeight: number & {
194
- _brand: "unitlessLineHeight";
195
- };
196
- }>;
197
- export type ExcalidrawBindableElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement | ExcalidrawTextElement | ExcalidrawImageElement | ExcalidrawIframeElement | ExcalidrawEmbeddableElement | ExcalidrawFrameElement | ExcalidrawMagicFrameElement;
198
- export type ExcalidrawTextContainer = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement | ExcalidrawArrowElement;
199
- export type ExcalidrawTextElementWithContainer = {
200
- containerId: ExcalidrawTextContainer["id"];
201
- } & ExcalidrawTextElement;
202
- export type FixedPoint = [number, number];
203
- export type PointBinding = {
204
- elementId: ExcalidrawBindableElement["id"];
205
- focus: number;
206
- gap: number;
207
- };
208
- export type FixedPointBinding = Merge<PointBinding, {
209
- fixedPoint: FixedPoint;
210
- }>;
211
- type Index = number;
212
- export type PointsPositionUpdates = Map<Index, {
213
- point: LocalPoint;
214
- isDragging?: boolean;
215
- }>;
216
- export type Arrowhead = "arrow" | "bar" | "dot" | "circle" | "circle_outline" | "triangle" | "triangle_outline" | "diamond" | "diamond_outline" | "crowfoot_one" | "crowfoot_many" | "crowfoot_one_or_many";
217
- export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
218
- type: "line" | "arrow";
219
- points: readonly LocalPoint[];
220
- lastCommittedPoint: LocalPoint | null;
221
- startBinding: PointBinding | null;
222
- endBinding: PointBinding | null;
223
- startArrowhead: Arrowhead | null;
224
- endArrowhead: Arrowhead | null;
225
- }>;
226
- export type ExcalidrawLineElement = ExcalidrawLinearElement & Readonly<{
227
- type: "line";
228
- polygon: boolean;
229
- }>;
230
- export type FixedSegment = {
231
- start: LocalPoint;
232
- end: LocalPoint;
233
- index: Index;
234
- };
235
- export type ExcalidrawArrowElement = ExcalidrawLinearElement & Readonly<{
236
- type: "arrow";
237
- elbowed: boolean;
238
- }>;
239
- export type ExcalidrawElbowArrowElement = Merge<ExcalidrawArrowElement, {
240
- elbowed: true;
241
- startBinding: FixedPointBinding | null;
242
- endBinding: FixedPointBinding | null;
243
- fixedSegments: readonly FixedSegment[] | null;
244
- /**
245
- * Marks that the 3rd point should be used as the 2nd point of the arrow in
246
- * order to temporarily hide the first segment of the arrow without losing
247
- * the data from the points array. It allows creating the expected arrow
248
- * path when the arrow with fixed segments is bound on a horizontal side and
249
- * moved to a vertical and vica versa.
250
- */
251
- startIsSpecial: boolean | null;
252
- /**
253
- * Marks that the 3rd point backwards from the end should be used as the 2nd
254
- * point of the arrow in order to temporarily hide the last segment of the
255
- * arrow without losing the data from the points array. It allows creating
256
- * the expected arrow path when the arrow with fixed segments is bound on a
257
- * horizontal side and moved to a vertical and vica versa.
258
- */
259
- endIsSpecial: boolean | null;
260
- }>;
261
- export type ExcalidrawFreeDrawElement = _ExcalidrawElementBase & Readonly<{
262
- type: "freedraw";
263
- points: readonly LocalPoint[];
264
- pressures: readonly number[];
265
- simulatePressure: boolean;
266
- lastCommittedPoint: LocalPoint | null;
267
- }>;
268
- export type FileId = string & {
269
- _brand: "FileId";
270
- };
271
- export type ExcalidrawElementType = ExcalidrawElement["type"];
272
- /**
273
- * Map of excalidraw elements.
274
- * Unspecified whether deleted or non-deleted.
275
- * Can be a subset of Scene elements.
276
- */
277
- export type ElementsMap = Map<ExcalidrawElement["id"], ExcalidrawElement>;
278
- /**
279
- * Map of non-deleted elements.
280
- * Can be a subset of Scene elements.
281
- */
282
- export type NonDeletedElementsMap = Map<ExcalidrawElement["id"], NonDeletedExcalidrawElement> & MakeBrand<"NonDeletedElementsMap">;
283
- /**
284
- * Map of all excalidraw Scene elements, including deleted.
285
- * Not a subset. Use this type when you need access to current Scene elements.
286
- */
287
- export type SceneElementsMap = Map<ExcalidrawElement["id"], Ordered<ExcalidrawElement>> & MakeBrand<"SceneElementsMap">;
288
- /**
289
- * Map of all non-deleted Scene elements.
290
- * Not a subset. Use this type when you need access to current Scene elements.
291
- */
292
- export type NonDeletedSceneElementsMap = Map<ExcalidrawElement["id"], Ordered<NonDeletedExcalidrawElement>> & MakeBrand<"NonDeletedSceneElementsMap">;
293
- export type ElementsMapOrArray = readonly ExcalidrawElement[] | Readonly<ElementsMap>;
294
- export type ExcalidrawLinearElementSubType = "line" | "sharpArrow" | "curvedArrow" | "elbowArrow";
295
- export type ConvertibleGenericTypes = "rectangle" | "diamond" | "ellipse";
296
- export type ConvertibleLinearTypes = ExcalidrawLinearElementSubType;
297
- export type ConvertibleTypes = ConvertibleGenericTypes | ConvertibleLinearTypes;
298
- export {};
1
+ import type { LocalPoint, Radians } from "@excalidraw/math";
2
+ import type { FONT_FAMILY, ROUNDNESS, TEXT_ALIGN, THEME, VERTICAL_ALIGN } from "@excalidraw/common";
3
+ import type { MakeBrand, MarkNonNullable, Merge, ValueOf } from "@excalidraw/common/utility-types";
4
+ export type ChartType = "bar" | "line";
5
+ export type FillStyle = "hachure" | "cross-hatch" | "solid" | "zigzag";
6
+ export type FontFamilyKeys = keyof typeof FONT_FAMILY;
7
+ export type FontFamilyValues = typeof FONT_FAMILY[FontFamilyKeys];
8
+ export type Theme = typeof THEME[keyof typeof THEME];
9
+ export type FontString = string & {
10
+ _brand: "fontString";
11
+ };
12
+ export type GroupId = string;
13
+ export type PointerType = "mouse" | "pen" | "touch";
14
+ export type StrokeRoundness = "round" | "sharp";
15
+ export type RoundnessType = ValueOf<typeof ROUNDNESS>;
16
+ export type StrokeStyle = "solid" | "dashed" | "dotted";
17
+ export type TextAlign = typeof TEXT_ALIGN[keyof typeof TEXT_ALIGN];
18
+ type VerticalAlignKeys = keyof typeof VERTICAL_ALIGN;
19
+ export type VerticalAlign = typeof VERTICAL_ALIGN[VerticalAlignKeys];
20
+ export type FractionalIndex = string & {
21
+ _brand: "franctionalIndex";
22
+ };
23
+ export type BoundElement = Readonly<{
24
+ id: ExcalidrawLinearElement["id"];
25
+ type: "arrow" | "text";
26
+ }>;
27
+ type _ExcalidrawElementBase = Readonly<{
28
+ id: string;
29
+ x: number;
30
+ y: number;
31
+ strokeColor: string;
32
+ backgroundColor: string;
33
+ fillStyle: FillStyle;
34
+ strokeWidth: number;
35
+ strokeStyle: StrokeStyle;
36
+ roundness: null | {
37
+ type: RoundnessType;
38
+ value?: number;
39
+ };
40
+ roughness: number;
41
+ opacity: number;
42
+ width: number;
43
+ height: number;
44
+ angle: Radians;
45
+ /** Random integer used to seed shape generation so that the roughjs shape
46
+ doesn't differ across renders. */
47
+ seed: number;
48
+ /** Integer that is sequentially incremented on each change. Used to reconcile
49
+ elements during collaboration or when saving to server. */
50
+ version: number;
51
+ /** Random integer that is regenerated on each change.
52
+ Used for deterministic reconciliation of updates during collaboration,
53
+ in case the versions (see above) are identical. */
54
+ versionNonce: number;
55
+ /** String in a fractional form defined by https://github.com/rocicorp/fractional-indexing.
56
+ Used for ordering in multiplayer scenarios, such as during reconciliation or undo / redo.
57
+ Always kept in sync with the array order by `syncMovedIndices` and `syncInvalidIndices`.
58
+ Could be null, i.e. for new elements which were not yet assigned to the scene. */
59
+ index: FractionalIndex | null;
60
+ isDeleted: boolean;
61
+ /** List of groups the element belongs to.
62
+ Ordered from deepest to shallowest. */
63
+ groupIds: readonly GroupId[];
64
+ frameId: string | null;
65
+ /** other elements that are bound to this element */
66
+ boundElements: readonly BoundElement[] | null;
67
+ /** epoch (ms) timestamp of last element update */
68
+ updated: number;
69
+ link: string | null;
70
+ locked: boolean;
71
+ customData?: Record<string, any>;
72
+ }>;
73
+ export type ExcalidrawSelectionElement = _ExcalidrawElementBase & {
74
+ type: "selection";
75
+ };
76
+ export type ExcalidrawRectangleElement = _ExcalidrawElementBase & {
77
+ type: "rectangle";
78
+ };
79
+ export type ExcalidrawDiamondElement = _ExcalidrawElementBase & {
80
+ type: "diamond";
81
+ };
82
+ export type ExcalidrawEllipseElement = _ExcalidrawElementBase & {
83
+ type: "ellipse";
84
+ };
85
+ export type ExcalidrawEmbeddableElement = _ExcalidrawElementBase & Readonly<{
86
+ type: "embeddable";
87
+ scale: [number, number];
88
+ }>;
89
+ export type MagicGenerationData = {
90
+ status: "pending";
91
+ } | {
92
+ status: "done";
93
+ html: string;
94
+ } | {
95
+ status: "error";
96
+ message?: string;
97
+ code: "ERR_GENERATION_INTERRUPTED" | string;
98
+ };
99
+ export type ExcalidrawIframeElement = _ExcalidrawElementBase & Readonly<{
100
+ type: "iframe";
101
+ customData?: {
102
+ generationData?: MagicGenerationData;
103
+ };
104
+ scale: [number, number];
105
+ }>;
106
+ export type ExcalidrawIframeLikeElement = ExcalidrawIframeElement | ExcalidrawEmbeddableElement;
107
+ export type IframeData = ({
108
+ intrinsicSize: {
109
+ w: number;
110
+ h: number;
111
+ };
112
+ error?: Error;
113
+ sandbox?: {
114
+ allowSameOrigin?: boolean;
115
+ };
116
+ } & ({
117
+ type: "video" | "generic";
118
+ link: string;
119
+ } | {
120
+ type: "document";
121
+ srcdoc: (theme: Theme) => string;
122
+ }));
123
+ export type ImageCrop = {
124
+ x: number;
125
+ y: number;
126
+ width: number;
127
+ height: number;
128
+ naturalWidth: number;
129
+ naturalHeight: number;
130
+ };
131
+ export type ExcalidrawImageElement = _ExcalidrawElementBase & Readonly<{
132
+ type: "image";
133
+ fileId: FileId | null;
134
+ /** whether respective file is persisted */
135
+ status: "pending" | "saved" | "error";
136
+ /** X and Y scale factors <-1, 1>, used for image axis flipping */
137
+ scale: [number, number];
138
+ /** whether an element is cropped */
139
+ crop: ImageCrop | null;
140
+ }>;
141
+ export type InitializedExcalidrawImageElement = MarkNonNullable<ExcalidrawImageElement, "fileId">;
142
+ export type ExcalidrawFrameElement = _ExcalidrawElementBase & {
143
+ type: "frame";
144
+ name: string | null;
145
+ customData?: {
146
+ printFrame?: boolean;
147
+ };
148
+ };
149
+ export type ExcalidrawMagicFrameElement = _ExcalidrawElementBase & {
150
+ type: "magicframe";
151
+ name: string | null;
152
+ };
153
+ export type ExcalidrawFrameLikeElement = ExcalidrawFrameElement | ExcalidrawMagicFrameElement;
154
+ /**
155
+ * These are elements that don't have any additional properties.
156
+ */
157
+ export type ExcalidrawGenericElement = ExcalidrawSelectionElement | ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
158
+ export type ExcalidrawFlowchartNodeElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
159
+ export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement | ExcalidrawSelectionElement;
160
+ /**
161
+ * ExcalidrawElement should be JSON serializable and (eventually) contain
162
+ * no computed data. The list of all ExcalidrawElements should be shareable
163
+ * between peers and contain no state local to the peer.
164
+ */
165
+ export type ExcalidrawElement = ExcalidrawGenericElement | ExcalidrawTextElement | ExcalidrawLinearElement | ExcalidrawArrowElement | ExcalidrawFreeDrawElement | ExcalidrawImageElement | ExcalidrawFrameElement | ExcalidrawMagicFrameElement | ExcalidrawIframeElement | ExcalidrawEmbeddableElement;
166
+ export type ExcalidrawNonSelectionElement = Exclude<ExcalidrawElement, ExcalidrawSelectionElement>;
167
+ export type Ordered<TElement extends ExcalidrawElement> = TElement & {
168
+ index: FractionalIndex;
169
+ };
170
+ export type OrderedExcalidrawElement = Ordered<ExcalidrawElement>;
171
+ export type NonDeleted<TElement extends ExcalidrawElement> = TElement & {
172
+ isDeleted: boolean;
173
+ };
174
+ export type NonDeletedExcalidrawElement = NonDeleted<ExcalidrawElement>;
175
+ export type ExcalidrawTextElement = _ExcalidrawElementBase & Readonly<{
176
+ type: "text";
177
+ fontSize: number;
178
+ fontFamily: FontFamilyValues;
179
+ text: string;
180
+ rawText: string;
181
+ textAlign: TextAlign;
182
+ verticalAlign: VerticalAlign;
183
+ containerId: ExcalidrawGenericElement["id"] | null;
184
+ originalText: string;
185
+ /**
186
+ * If `true` the width will fit the text. If `false`, the text will
187
+ * wrap to fit the width.
188
+ *
189
+ * @default true
190
+ */
191
+ autoResize: boolean;
192
+ /**
193
+ * Unitless line height (aligned to W3C). To get line height in px, multiply
194
+ * with font size (using `getLineHeightInPx` helper).
195
+ */
196
+ lineHeight: number & {
197
+ _brand: "unitlessLineHeight";
198
+ };
199
+ }>;
200
+ export type ExcalidrawBindableElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement | ExcalidrawTextElement | ExcalidrawImageElement | ExcalidrawIframeElement | ExcalidrawEmbeddableElement | ExcalidrawFrameElement | ExcalidrawMagicFrameElement;
201
+ export type ExcalidrawTextContainer = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement | ExcalidrawArrowElement;
202
+ export type ExcalidrawTextElementWithContainer = {
203
+ containerId: ExcalidrawTextContainer["id"];
204
+ } & ExcalidrawTextElement;
205
+ export type FixedPoint = [number, number];
206
+ export type PointBinding = {
207
+ elementId: ExcalidrawBindableElement["id"];
208
+ focus: number;
209
+ gap: number;
210
+ };
211
+ export type FixedPointBinding = Merge<PointBinding, {
212
+ fixedPoint: FixedPoint;
213
+ }>;
214
+ type Index = number;
215
+ export type PointsPositionUpdates = Map<Index, {
216
+ point: LocalPoint;
217
+ isDragging?: boolean;
218
+ }>;
219
+ export type Arrowhead = "arrow" | "bar" | "dot" | "circle" | "circle_outline" | "triangle" | "triangle_outline" | "diamond" | "diamond_outline" | "crowfoot_one" | "crowfoot_many" | "crowfoot_one_or_many";
220
+ export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
221
+ type: "line" | "arrow";
222
+ points: readonly LocalPoint[];
223
+ lastCommittedPoint: LocalPoint | null;
224
+ startBinding: PointBinding | null;
225
+ endBinding: PointBinding | null;
226
+ startArrowhead: Arrowhead | null;
227
+ endArrowhead: Arrowhead | null;
228
+ }>;
229
+ export type ExcalidrawLineElement = ExcalidrawLinearElement & Readonly<{
230
+ type: "line";
231
+ polygon: boolean;
232
+ }>;
233
+ export type FixedSegment = {
234
+ start: LocalPoint;
235
+ end: LocalPoint;
236
+ index: Index;
237
+ };
238
+ export type ExcalidrawArrowElement = ExcalidrawLinearElement & Readonly<{
239
+ type: "arrow";
240
+ elbowed: boolean;
241
+ }>;
242
+ export type ExcalidrawElbowArrowElement = Merge<ExcalidrawArrowElement, {
243
+ elbowed: true;
244
+ startBinding: FixedPointBinding | null;
245
+ endBinding: FixedPointBinding | null;
246
+ fixedSegments: readonly FixedSegment[] | null;
247
+ /**
248
+ * Marks that the 3rd point should be used as the 2nd point of the arrow in
249
+ * order to temporarily hide the first segment of the arrow without losing
250
+ * the data from the points array. It allows creating the expected arrow
251
+ * path when the arrow with fixed segments is bound on a horizontal side and
252
+ * moved to a vertical and vica versa.
253
+ */
254
+ startIsSpecial: boolean | null;
255
+ /**
256
+ * Marks that the 3rd point backwards from the end should be used as the 2nd
257
+ * point of the arrow in order to temporarily hide the last segment of the
258
+ * arrow without losing the data from the points array. It allows creating
259
+ * the expected arrow path when the arrow with fixed segments is bound on a
260
+ * horizontal side and moved to a vertical and vica versa.
261
+ */
262
+ endIsSpecial: boolean | null;
263
+ }>;
264
+ export type ExcalidrawFreeDrawElement = _ExcalidrawElementBase & Readonly<{
265
+ type: "freedraw";
266
+ points: readonly LocalPoint[];
267
+ pressures: readonly number[];
268
+ simulatePressure: boolean;
269
+ lastCommittedPoint: LocalPoint | null;
270
+ }>;
271
+ export type FileId = string & {
272
+ _brand: "FileId";
273
+ };
274
+ export type ExcalidrawElementType = ExcalidrawElement["type"];
275
+ /**
276
+ * Map of excalidraw elements.
277
+ * Unspecified whether deleted or non-deleted.
278
+ * Can be a subset of Scene elements.
279
+ */
280
+ export type ElementsMap = Map<ExcalidrawElement["id"], ExcalidrawElement>;
281
+ /**
282
+ * Map of non-deleted elements.
283
+ * Can be a subset of Scene elements.
284
+ */
285
+ export type NonDeletedElementsMap = Map<ExcalidrawElement["id"], NonDeletedExcalidrawElement> & MakeBrand<"NonDeletedElementsMap">;
286
+ /**
287
+ * Map of all excalidraw Scene elements, including deleted.
288
+ * Not a subset. Use this type when you need access to current Scene elements.
289
+ */
290
+ export type SceneElementsMap = Map<ExcalidrawElement["id"], Ordered<ExcalidrawElement>> & MakeBrand<"SceneElementsMap">;
291
+ /**
292
+ * Map of all non-deleted Scene elements.
293
+ * Not a subset. Use this type when you need access to current Scene elements.
294
+ */
295
+ export type NonDeletedSceneElementsMap = Map<ExcalidrawElement["id"], Ordered<NonDeletedExcalidrawElement>> & MakeBrand<"NonDeletedSceneElementsMap">;
296
+ export type ElementsMapOrArray = readonly ExcalidrawElement[] | Readonly<ElementsMap>;
297
+ export type ExcalidrawLinearElementSubType = "line" | "sharpArrow" | "curvedArrow" | "elbowArrow";
298
+ export type ConvertibleGenericTypes = "rectangle" | "diamond" | "ellipse";
299
+ export type ConvertibleLinearTypes = ExcalidrawLinearElementSubType;
300
+ export type ConvertibleTypes = ConvertibleGenericTypes | ConvertibleLinearTypes;
301
+ export {};