@excalidraw/element 0.18.0-51ad895 → 0.18.0-6135548

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 (196) hide show
  1. package/dist/dev/index.js +1065 -175
  2. package/dist/dev/index.js.map +4 -4
  3. package/dist/prod/index.js +17 -17
  4. package/dist/types/common/src/bounds.d.ts +10 -0
  5. package/dist/types/common/src/colors.d.ts +59 -39
  6. package/dist/types/common/src/constants.d.ts +13 -11
  7. package/dist/types/common/src/editorInterface.d.ts +1 -1
  8. package/dist/types/common/src/font-metadata.d.ts +1 -3
  9. package/dist/types/common/src/index.d.ts +1 -1
  10. package/dist/types/common/src/keys.d.ts +1 -1
  11. package/dist/types/common/src/utility-types.d.ts +0 -1
  12. package/dist/types/common/src/utils.d.ts +43 -34
  13. package/dist/types/element/src/Scene.d.ts +3 -3
  14. package/dist/types/element/src/binding.d.ts +6 -4
  15. package/dist/types/element/src/bounds.d.ts +2 -10
  16. package/dist/types/element/src/collision.d.ts +2 -2
  17. package/dist/types/element/src/comparisons.d.ts +7 -7
  18. package/dist/types/element/src/dragElements.d.ts +3 -3
  19. package/dist/types/element/src/duplicate.d.ts +3 -3
  20. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  21. package/dist/types/element/src/frame.d.ts +5 -1
  22. package/dist/types/element/src/heading.d.ts +2 -1
  23. package/dist/types/element/src/image.d.ts +1 -11
  24. package/dist/types/element/src/index.d.ts +1 -0
  25. package/dist/types/element/src/linearElementEditor.d.ts +1 -2
  26. package/dist/types/element/src/mutateElement.d.ts +3 -1
  27. package/dist/types/element/src/newElement.d.ts +6 -6
  28. package/dist/types/element/src/renderElement.d.ts +0 -6
  29. package/dist/types/element/src/resizeElements.d.ts +10 -10
  30. package/dist/types/element/src/resizeTest.d.ts +1 -1
  31. package/dist/types/element/src/selection.d.ts +3 -7
  32. package/dist/types/element/src/shape.d.ts +8 -7
  33. package/dist/types/element/src/textMeasurements.d.ts +1 -3
  34. package/dist/types/{excalidraw/data → element/src}/transform.d.ts +3 -3
  35. package/dist/types/element/src/transformHandles.d.ts +3 -23
  36. package/dist/types/element/src/typeChecks.d.ts +2 -4
  37. package/dist/types/element/src/utils.d.ts +3 -1
  38. package/dist/types/{common → element}/src/visualdebug.d.ts +20 -2
  39. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +62 -126
  40. package/dist/types/excalidraw/actions/actionAlign.d.ts +0 -1
  41. package/dist/types/excalidraw/actions/actionBoundText.d.ts +44 -87
  42. package/dist/types/excalidraw/actions/actionCanvas.d.ts +263 -510
  43. package/dist/types/excalidraw/actions/actionClipboard.d.ts +44 -87
  44. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +21 -43
  45. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +74 -142
  46. package/dist/types/excalidraw/actions/actionDistribute.d.ts +0 -1
  47. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +0 -1
  48. package/dist/types/excalidraw/actions/actionElementLink.d.ts +18 -40
  49. package/dist/types/excalidraw/actions/actionElementLock.d.ts +45 -88
  50. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +22 -44
  51. package/dist/types/excalidraw/actions/actionExport.d.ts +85 -170
  52. package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -2
  53. package/dist/types/excalidraw/actions/actionFlip.d.ts +0 -1
  54. package/dist/types/excalidraw/actions/actionFrame.d.ts +181 -302
  55. package/dist/types/excalidraw/actions/actionGroup.d.ts +48 -99
  56. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +122 -180
  57. package/dist/types/excalidraw/actions/actionLink.d.ts +22 -44
  58. package/dist/types/excalidraw/actions/actionMenu.d.ts +17 -39
  59. package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -17
  60. package/dist/types/excalidraw/actions/actionProperties.d.ts +59 -102
  61. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +24 -50
  62. package/dist/types/excalidraw/actions/actionStyles.d.ts +20 -42
  63. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +22 -44
  64. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +22 -44
  65. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -38
  66. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +22 -44
  67. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +22 -44
  68. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +22 -44
  69. package/dist/types/excalidraw/actions/actionZindex.d.ts +0 -1
  70. package/dist/types/excalidraw/actions/manager.d.ts +1 -1
  71. package/dist/types/excalidraw/actions/register.d.ts +2 -2
  72. package/dist/types/excalidraw/appState.d.ts +3 -3
  73. package/dist/types/excalidraw/clipboard.d.ts +7 -31
  74. package/dist/types/excalidraw/components/Actions.d.ts +1 -1
  75. package/dist/types/excalidraw/components/App.d.ts +33 -41
  76. package/dist/types/excalidraw/components/Card.d.ts +1 -3
  77. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -4
  78. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +0 -1
  79. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +0 -1
  80. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +0 -1
  81. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +0 -1
  82. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  83. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
  84. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
  85. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
  86. package/dist/types/excalidraw/components/Ellipsify.d.ts +1 -2
  87. package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
  88. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -1
  89. package/dist/types/excalidraw/components/EyeDropper.d.ts +0 -1
  90. package/dist/types/excalidraw/components/FilledButton.d.ts +1 -0
  91. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
  92. package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
  93. package/dist/types/excalidraw/components/InlineIcon.d.ts +2 -2
  94. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  95. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
  96. package/dist/types/excalidraw/components/LibraryUnit.d.ts +2 -3
  97. package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
  98. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -1
  99. package/dist/types/excalidraw/components/Modal.d.ts +0 -1
  100. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
  101. package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
  102. package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
  103. package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
  104. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +15 -21
  105. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
  106. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
  107. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
  108. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
  109. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
  110. package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
  111. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
  112. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
  113. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +0 -1
  114. package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
  115. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
  116. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +27 -0
  117. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
  118. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +26 -0
  119. package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
  120. package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
  121. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +3 -2
  122. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
  123. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +4 -25
  124. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +2 -2
  125. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +13 -9
  126. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
  127. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
  128. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
  129. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -1
  130. package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
  131. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +8 -0
  132. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +16 -16
  133. package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
  134. package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
  135. package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
  136. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +91 -0
  137. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
  138. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +24 -0
  139. package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
  140. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
  141. package/dist/types/excalidraw/components/Toast.d.ts +3 -3
  142. package/dist/types/excalidraw/components/Trans.d.ts +2 -2
  143. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +30 -33
  144. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +5 -5
  145. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
  146. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +12 -19
  147. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +5 -4
  148. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +0 -1
  149. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
  150. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
  151. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
  152. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  153. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
  154. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -1
  155. package/dist/types/excalidraw/components/icons.d.ts +16 -12
  156. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +2 -13
  157. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +2 -2
  158. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +26 -29
  159. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +6 -6
  160. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +15 -16
  161. package/dist/types/excalidraw/data/blob.d.ts +321 -3
  162. package/dist/types/excalidraw/data/encode.d.ts +4 -4
  163. package/dist/types/excalidraw/data/encryption.d.ts +5 -5
  164. package/dist/types/excalidraw/data/filesystem.d.ts +2 -2
  165. package/dist/types/excalidraw/data/index.d.ts +3 -3
  166. package/dist/types/excalidraw/data/json.d.ts +159 -2
  167. package/dist/types/excalidraw/data/library.d.ts +24 -9
  168. package/dist/types/excalidraw/data/restore.d.ts +25 -10
  169. package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
  170. package/dist/types/excalidraw/errors.d.ts +14 -0
  171. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +1 -2
  172. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
  173. package/dist/types/excalidraw/i18n.d.ts +2 -2
  174. package/dist/types/excalidraw/index.d.ts +4 -4
  175. package/dist/types/excalidraw/renderer/helpers.d.ts +6 -4
  176. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +8 -6
  177. package/dist/types/excalidraw/scene/Renderer.d.ts +5 -2
  178. package/dist/types/excalidraw/scene/export.d.ts +2 -2
  179. package/dist/types/excalidraw/scene/scroll.d.ts +1 -6
  180. package/dist/types/excalidraw/scene/types.d.ts +7 -2
  181. package/dist/types/excalidraw/snapping.d.ts +5 -5
  182. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
  183. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
  184. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
  185. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
  186. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
  187. package/dist/types/excalidraw/types.d.ts +1 -2
  188. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +2 -2
  189. package/dist/types/math/src/polygon.d.ts +2 -2
  190. package/dist/types/math/src/range.d.ts +1 -3
  191. package/dist/types/math/src/segment.d.ts +3 -3
  192. package/dist/types/utils/src/bbox.d.ts +1 -1
  193. package/dist/types/utils/src/export.d.ts +5 -5
  194. package/dist/types/utils/src/shape.d.ts +6 -6
  195. package/dist/types/utils/src/withinBounds.d.ts +2 -2
  196. package/package.json +9 -3
@@ -0,0 +1,15 @@
1
+ import type { SavedChat } from "../types";
2
+ interface ChatHistoryMenuProps {
3
+ isOpen: boolean;
4
+ onToggle: () => void;
5
+ onClose: () => void;
6
+ onNewChat: () => void;
7
+ onRestoreChat: (chat: SavedChat) => void;
8
+ onDeleteChat: (chatId: string, event: React.MouseEvent) => void;
9
+ savedChats: SavedChat[];
10
+ activeSessionId: string;
11
+ disabled?: boolean;
12
+ isNewChatBtnVisible?: boolean;
13
+ }
14
+ export declare const ChatHistoryMenu: ({ isOpen, onToggle, onClose, onNewChat, onRestoreChat, onDeleteChat, isNewChatBtnVisible, savedChats, activeSessionId, disabled, }: ChatHistoryMenuProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,27 @@
1
+ import type { TChat, TTTDDialog } from "../types";
2
+ export declare const ChatInterface: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, rateLimits, placeholder, onAbort, onMermaidTabClick, onAiRepairClick, onDeleteMessage, onInsertMessage, onRetry, renderWarning, }: {
3
+ chatId: string;
4
+ messages: TChat.ChatMessage[];
5
+ currentPrompt: string;
6
+ onPromptChange: (prompt: string) => void;
7
+ onGenerate: TTTDDialog.OnGenerate;
8
+ isGenerating: boolean;
9
+ rateLimits?: {
10
+ rateLimit: number;
11
+ rateLimitRemaining: number;
12
+ } | null;
13
+ onViewAsMermaid?: () => void;
14
+ generatedResponse?: string | null;
15
+ placeholder: {
16
+ title: string;
17
+ description: string;
18
+ hint: string;
19
+ };
20
+ onAbort?: () => void;
21
+ onMermaidTabClick?: (message: TChat.ChatMessage) => void;
22
+ onAiRepairClick?: (message: TChat.ChatMessage) => void;
23
+ onDeleteMessage?: (messageId: string) => void;
24
+ onInsertMessage?: (message: TChat.ChatMessage) => void;
25
+ onRetry?: (message: TChat.ChatMessage) => void;
26
+ renderWarning?: TTTDDialog.renderWarning;
27
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import type { TChat, TTTDDialog } from "../types";
3
+ export declare const ChatMessage: React.FC<{
4
+ message: TChat.ChatMessage;
5
+ onMermaidTabClick?: (message: TChat.ChatMessage) => void;
6
+ onAiRepairClick?: (message: TChat.ChatMessage) => void;
7
+ onDeleteMessage?: (messageId: string) => void;
8
+ onInsertMessage?: (message: TChat.ChatMessage) => void;
9
+ onRetry?: (message: TChat.ChatMessage) => void;
10
+ rateLimitRemaining?: number;
11
+ isLastMessage?: boolean;
12
+ renderWarning?: TTTDDialog.renderWarning;
13
+ allowFixingParseError?: boolean;
14
+ }>;
@@ -0,0 +1,26 @@
1
+ import type { SavedChat, TChat, TTTDDialog } from "../types";
2
+ export declare const TTDChatPanel: ({ chatId, messages, currentPrompt, onPromptChange, onGenerate, isGenerating, generatedResponse, isMenuOpen, onMenuToggle, onMenuClose, onNewChat, onRestoreChat, onDeleteChat, savedChats, activeSessionId, onAbort, onMermaidTabClick, onAiRepairClick, onDeleteMessage, onInsertMessage, onRetry, onViewAsMermaid, renderWarning, }: {
3
+ chatId: string;
4
+ messages: TChat.ChatMessage[];
5
+ currentPrompt: string;
6
+ onPromptChange: (prompt: string) => void;
7
+ onGenerate: TTTDDialog.OnGenerate;
8
+ isGenerating: boolean;
9
+ generatedResponse: string | null | undefined;
10
+ isMenuOpen: boolean;
11
+ onMenuToggle: () => void;
12
+ onMenuClose: () => void;
13
+ onNewChat: () => void;
14
+ onRestoreChat: (chat: SavedChat) => void;
15
+ onDeleteChat: (chatId: string, event: React.MouseEvent) => void;
16
+ savedChats: SavedChat[];
17
+ activeSessionId: string;
18
+ onAbort: () => void;
19
+ onMermaidTabClick: (message: TChat.ChatMessage) => void;
20
+ onAiRepairClick: (message: TChat.ChatMessage) => void;
21
+ onDeleteMessage: (messageId: string) => void;
22
+ onInsertMessage: (message: TChat.ChatMessage) => void;
23
+ onRetry?: (message: TChat.ChatMessage) => void;
24
+ onViewAsMermaid: () => void;
25
+ renderWarning?: TTTDDialog.renderWarning;
26
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { ChatInterface } from "./ChatInterface";
2
+ export { ChatMessage } from "./ChatMessage";
3
+ export { useChatAgent } from "./useChatAgent";
@@ -0,0 +1,8 @@
1
+ export declare const useChatAgent: () => {
2
+ addUserMessage: (content: string) => void;
3
+ addAssistantMessage: () => void;
4
+ setAssistantError: (errorMessage: string, errorType?: "parse" | "network" | "other", errorDetails?: Error | unknown) => void;
5
+ chatHistory: import("../types").TChat.ChatHistory;
6
+ setChatHistory: (args_0: import("../types").TChat.ChatHistory | ((prev: import("../types").TChat.ChatHistory) => import("../types").TChat.ChatHistory)) => void;
7
+ setLastRetryAttempt: () => void;
8
+ };
@@ -1,6 +1,7 @@
1
1
  import "./MermaidToExcalidraw.scss";
2
- import type { MermaidToExcalidrawLibProps } from "./common";
3
- declare const MermaidToExcalidraw: ({ mermaidToExcalidrawLib, }: {
2
+ import type { MermaidToExcalidrawLibProps } from "./types";
3
+ declare const MermaidToExcalidraw: ({ mermaidToExcalidrawLib, isActive, }: {
4
4
  mermaidToExcalidrawLib: MermaidToExcalidrawLibProps;
5
+ isActive?: boolean;
5
6
  }) => import("react/jsx-runtime").JSX.Element;
6
7
  export default MermaidToExcalidraw;
@@ -0,0 +1,13 @@
1
+ import type { RateLimits, TChat } from "./types";
2
+ export declare const rateLimitsAtom: import("jotai/vanilla/atom").PrimitiveAtom<RateLimits | null> & {
3
+ init: RateLimits | null;
4
+ };
5
+ export declare const showPreviewAtom: import("jotai/vanilla/atom").PrimitiveAtom<boolean> & {
6
+ init: boolean;
7
+ };
8
+ export declare const errorAtom: import("jotai/vanilla/atom").PrimitiveAtom<Error | null> & {
9
+ init: Error | null;
10
+ };
11
+ export declare const chatHistoryAtom: import("jotai/vanilla/atom").PrimitiveAtom<TChat.ChatHistory> & {
12
+ init: TChat.ChatHistory;
13
+ };
@@ -1,30 +1,9 @@
1
- /// <reference types="react" />
2
1
  import "./TTDDialog.scss";
3
- type OnTestSubmitRetValue = {
4
- rateLimit?: number | null;
5
- rateLimitRemaining?: number | null;
6
- } & ({
7
- generatedResponse: string | undefined;
8
- error?: null | undefined;
9
- } | {
10
- error: Error;
11
- generatedResponse?: null | undefined;
12
- });
2
+ import type { TTDPersistenceAdapter, TTTDDialog } from "./types";
13
3
  export declare const TTDDialog: (props: {
14
- onTextSubmit(value: string): Promise<OnTestSubmitRetValue>;
4
+ onTextSubmit: TTTDDialog.onTextSubmit;
5
+ renderWarning?: TTTDDialog.renderWarning;
6
+ persistenceAdapter: TTDPersistenceAdapter;
15
7
  } | {
16
8
  __fallback: true;
17
9
  }) => import("react/jsx-runtime").JSX.Element | null;
18
- /**
19
- * Text to diagram (TTD) dialog
20
- */
21
- export declare const TTDDialogBase: import("react").FC<({
22
- tab: "text-to-diagram" | "mermaid";
23
- } & ({
24
- onTextSubmit(value: string): Promise<OnTestSubmitRetValue>;
25
- } | {
26
- __fallback: true;
27
- })) & {
28
- __fallback?: boolean | undefined;
29
- }>;
30
- export {};
@@ -1,8 +1,8 @@
1
- /// <reference types="react" />
2
1
  interface TTDDialogOutputProps {
3
2
  error: Error | null;
4
3
  canvasRef: React.RefObject<HTMLDivElement | null>;
5
4
  loaded: boolean;
5
+ hideErrorDetails?: boolean;
6
6
  }
7
- export declare const TTDDialogOutput: ({ error, canvasRef, loaded, }: TTDDialogOutputProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const TTDDialogOutput: ({ error, canvasRef, loaded, hideErrorDetails, }: TTDDialogOutputProps) => import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -1,17 +1,21 @@
1
1
  import type { ReactNode } from "react";
2
- interface TTDDialogPanelProps {
2
+ export type TTDPanelAction = {
3
3
  label: string;
4
+ action?: () => void;
5
+ icon?: ReactNode;
6
+ variant: "button" | "link" | "rateLimit";
7
+ disabled?: boolean;
8
+ className?: string;
9
+ };
10
+ interface TTDDialogPanelProps {
11
+ label?: string | ReactNode;
4
12
  children: ReactNode;
5
- panelAction?: {
6
- label: string;
7
- action: () => void;
8
- icon?: ReactNode;
9
- };
10
- panelActionDisabled?: boolean;
13
+ panelActions?: TTDPanelAction[];
11
14
  onTextSubmitInProgess?: boolean;
12
15
  renderTopRight?: () => ReactNode;
13
16
  renderSubmitShortcut?: () => ReactNode;
14
- renderBottomRight?: () => ReactNode;
17
+ className?: string;
18
+ panelActionJustifyContent?: "flex-start" | "flex-end" | "center" | "space-between" | "space-around" | "space-evenly";
15
19
  }
16
- export declare const TTDDialogPanel: ({ label, children, panelAction, panelActionDisabled, onTextSubmitInProgess, renderTopRight, renderSubmitShortcut, renderBottomRight, }: TTDDialogPanelProps) => import("react/jsx-runtime").JSX.Element;
20
+ export declare const TTDDialogPanel: ({ label, children, panelActions, onTextSubmitInProgess, renderTopRight, renderSubmitShortcut, className, panelActionJustifyContent, }: TTDDialogPanelProps) => import("react/jsx-runtime").JSX.Element;
17
21
  export {};
@@ -1,8 +1,7 @@
1
- /// <reference types="react" />
2
1
  export declare const TTDDialogTab: {
3
2
  ({ tab, children, ...rest }: {
4
3
  tab: string;
5
4
  children: React.ReactNode;
6
- } & import("react").HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
5
+ } & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
7
6
  displayName: string;
8
7
  };
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
1
  export declare const TTDDialogTabTrigger: {
3
2
  ({ children, tab, onSelect, ...rest }: {
4
3
  children: React.ReactNode;
5
4
  tab: string;
6
5
  onSelect?: React.ReactEventHandler<HTMLButtonElement> | undefined;
7
- } & Omit<import("react").HTMLAttributes<HTMLButtonElement>, "onSelect">): import("react/jsx-runtime").JSX.Element;
6
+ } & Omit<React.HTMLAttributes<HTMLButtonElement>, "onSelect">): import("react/jsx-runtime").JSX.Element;
8
7
  displayName: string;
9
8
  };
@@ -1,7 +1,6 @@
1
- /// <reference types="react" />
2
1
  export declare const TTDDialogTabTriggers: {
3
2
  ({ children, ...rest }: {
4
3
  children: React.ReactNode;
5
- } & import("react").HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
4
+ } & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
6
5
  displayName: string;
7
6
  };
@@ -2,7 +2,7 @@ import type { JSX, ReactNode } from "react";
2
2
  export declare const TTDDialogTrigger: {
3
3
  ({ children, icon, }: {
4
4
  children?: ReactNode;
5
- icon?: JSX.Element | undefined;
5
+ icon?: JSX.Element;
6
6
  }): import("react/jsx-runtime").JSX.Element;
7
7
  displayName: string;
8
8
  };
@@ -0,0 +1,9 @@
1
+ interface TTDPreviewPanelProps {
2
+ canvasRef: React.RefObject<HTMLDivElement | null>;
3
+ error: Error | null;
4
+ loaded: boolean;
5
+ onInsert: () => void;
6
+ hideErrorDetails?: boolean;
7
+ }
8
+ export declare const TTDPreviewPanel: ({ canvasRef, error, loaded, onInsert, hideErrorDetails, }: TTDPreviewPanelProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { MermaidToExcalidrawLibProps, TTDPersistenceAdapter, TTTDDialog } from "./types";
2
+ export declare const TextToDiagram: ({ mermaidToExcalidrawLib, onTextSubmit, renderWarning, persistenceAdapter, }: {
3
+ mermaidToExcalidrawLib: MermaidToExcalidrawLibProps;
4
+ onTextSubmit(props: TTTDDialog.OnTextSubmitProps): Promise<TTTDDialog.OnTextSubmitRetValue>;
5
+ renderWarning?: TTTDDialog.renderWarning;
6
+ persistenceAdapter: TTDPersistenceAdapter;
7
+ }) => import("react/jsx-runtime").JSX.Element;
8
+ export default TextToDiagram;
@@ -1,15 +1,11 @@
1
- /// <reference types="react" />
2
- import type { MermaidConfig } from "@excalidraw/mermaid-to-excalidraw";
3
- import type { MermaidToExcalidrawResult } from "@excalidraw/mermaid-to-excalidraw/dist/interfaces";
4
- import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
1
+ import type { NonDeletedExcalidrawElement, Theme } from "@excalidraw/element/types";
2
+ import type { MermaidToExcalidrawLibProps } from "./types";
5
3
  import type { AppClassProperties, BinaryFiles } from "../../types";
6
- export interface MermaidToExcalidrawLibProps {
7
- loaded: boolean;
8
- api: Promise<{
9
- parseMermaidToExcalidraw: (definition: string, config?: MermaidConfig) => Promise<MermaidToExcalidrawResult>;
10
- }>;
11
- }
12
- interface ConvertMermaidToExcalidrawFormatProps {
4
+ export declare const resetPreview: ({ canvasRef, setError, }: {
5
+ canvasRef: React.RefObject<HTMLDivElement | null>;
6
+ setError: (error: Error | null) => void;
7
+ }) => void;
8
+ export declare const convertMermaidToExcalidraw: ({ canvasRef, mermaidToExcalidrawLib, mermaidDefinition, setError, data, theme, }: {
13
9
  canvasRef: React.RefObject<HTMLDivElement | null>;
14
10
  mermaidToExcalidrawLib: MermaidToExcalidrawLibProps;
15
11
  mermaidDefinition: string;
@@ -18,8 +14,13 @@ interface ConvertMermaidToExcalidrawFormatProps {
18
14
  elements: readonly NonDeletedExcalidrawElement[];
19
15
  files: BinaryFiles | null;
20
16
  }>;
21
- }
22
- export declare const convertMermaidToExcalidraw: ({ canvasRef, mermaidToExcalidrawLib, mermaidDefinition, setError, data, }: ConvertMermaidToExcalidrawFormatProps) => Promise<void>;
17
+ theme: Theme;
18
+ }) => Promise<{
19
+ success: true;
20
+ } | {
21
+ success: false;
22
+ error?: Error;
23
+ }>;
23
24
  export declare const saveMermaidDataToStorage: (mermaidDefinition: string) => void;
24
25
  export declare const insertToEditor: ({ app, data, text, shouldSaveMermaidDataToStorage, }: {
25
26
  app: AppClassProperties;
@@ -27,7 +28,6 @@ export declare const insertToEditor: ({ app, data, text, shouldSaveMermaidDataTo
27
28
  elements: readonly NonDeletedExcalidrawElement[];
28
29
  files: BinaryFiles | null;
29
30
  }>;
30
- text?: string | undefined;
31
- shouldSaveMermaidDataToStorage?: boolean | undefined;
31
+ text?: string;
32
+ shouldSaveMermaidDataToStorage?: boolean;
32
33
  }) => void;
33
- export {};
@@ -0,0 +1,13 @@
1
+ import type { SavedChat, TTDPersistenceAdapter } from "../types";
2
+ interface UseChatManagementProps {
3
+ persistenceAdapter: TTDPersistenceAdapter;
4
+ }
5
+ export declare const useChatManagement: ({ persistenceAdapter, }: UseChatManagementProps) => {
6
+ isMenuOpen: boolean;
7
+ onRestoreChat: (chat: SavedChat) => void;
8
+ handleDeleteChat: (chatId: string, event: React.MouseEvent) => Promise<void>;
9
+ handleNewChat: () => Promise<void>;
10
+ handleMenuToggle: () => void;
11
+ handleMenuClose: () => void;
12
+ };
13
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { BinaryFiles } from "../../../types";
3
+ import type { MermaidToExcalidrawLibProps } from "../types";
4
+ interface UseMermaidRendererProps {
5
+ mermaidToExcalidrawLib: MermaidToExcalidrawLibProps;
6
+ canvasRef: React.RefObject<HTMLDivElement | null>;
7
+ }
8
+ export declare const useMermaidRenderer: ({ mermaidToExcalidrawLib, canvasRef, }: UseMermaidRendererProps) => {
9
+ data: import("react").RefObject<{
10
+ elements: readonly NonDeletedExcalidrawElement[];
11
+ files: BinaryFiles | null;
12
+ }>;
13
+ };
14
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { TTTDDialog } from "../types";
2
+ export declare const useTextGeneration: ({ onTextSubmit, }: {
3
+ onTextSubmit: (props: TTTDDialog.OnTextSubmitProps) => Promise<TTTDDialog.OnTextSubmitRetValue>;
4
+ }) => {
5
+ onGenerate: TTTDDialog.OnGenerate;
6
+ handleAbort: () => void;
7
+ };
@@ -0,0 +1,91 @@
1
+ import type { RequestError } from "@excalidraw/excalidraw/errors";
2
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { MermaidConfig } from "@excalidraw/mermaid-to-excalidraw";
4
+ import type { MermaidToExcalidrawResult } from "@excalidraw/mermaid-to-excalidraw/dist/interfaces";
5
+ import type { BinaryFiles } from "../../types";
6
+ export type LLMMessage = {
7
+ role: "user" | "assistant";
8
+ content: string;
9
+ };
10
+ export type MermaidData = {
11
+ elements: readonly NonDeletedExcalidrawElement[];
12
+ files: BinaryFiles | null;
13
+ };
14
+ export interface RateLimits {
15
+ rateLimit: number;
16
+ rateLimitRemaining: number;
17
+ }
18
+ export declare namespace TChat {
19
+ type ChatMessage = {
20
+ id: string;
21
+ timestamp: Date;
22
+ isGenerating?: boolean;
23
+ error?: string;
24
+ errorDetails?: string;
25
+ errorType?: "parse" | "network" | "other";
26
+ lastAttemptAt?: number;
27
+ type: "user" | "assistant" | "warning";
28
+ warningType?: /* daily rate limit */ "messageLimitExceeded" | /* general 429 */ "rateLimitExceeded";
29
+ content?: string;
30
+ };
31
+ type ChatHistory = {
32
+ id: string;
33
+ messages: ChatMessage[];
34
+ currentPrompt: string;
35
+ };
36
+ }
37
+ export interface SavedChat {
38
+ id: string;
39
+ title: string;
40
+ messages: TChat.ChatMessage[];
41
+ currentPrompt: string;
42
+ timestamp: number;
43
+ }
44
+ export type SavedChats = SavedChat[];
45
+ /**
46
+ * Interface for TTD chat persistence. Preferably should be stable
47
+ * (e.g. static class/singleton)
48
+ */
49
+ export interface TTDPersistenceAdapter {
50
+ /**
51
+ * Load saved chats from storage.
52
+ */
53
+ loadChats(): Promise<SavedChats>;
54
+ /**
55
+ * Save chats to storage.
56
+ */
57
+ saveChats(chats: SavedChats): Promise<void>;
58
+ }
59
+ export interface MermaidToExcalidrawLibProps {
60
+ loaded: boolean;
61
+ api: Promise<{
62
+ parseMermaidToExcalidraw: (definition: string, config?: MermaidConfig) => Promise<MermaidToExcalidrawResult>;
63
+ }>;
64
+ }
65
+ export declare namespace TTTDDialog {
66
+ type OnGenerate = (opts: {
67
+ prompt: string;
68
+ isRepairFlow?: boolean;
69
+ }) => Promise<void>;
70
+ type OnTextSubmitProps = {
71
+ messages: LLMMessage[];
72
+ onChunk?: (chunk: string) => void;
73
+ onStreamCreated?: () => void;
74
+ signal?: AbortSignal;
75
+ };
76
+ type OnTextSubmitRetValue = {
77
+ rateLimit?: number | null;
78
+ rateLimitRemaining?: number | null;
79
+ } & ({
80
+ generatedResponse: string;
81
+ error: null;
82
+ } | {
83
+ error: RequestError;
84
+ generatedResponse?: null;
85
+ });
86
+ type onTextSubmit = (props: OnTextSubmitProps) => Promise<OnTextSubmitRetValue>;
87
+ /**
88
+ * return undefined to use default rendering
89
+ */
90
+ type renderWarning = (chatMessage: TChat.ChatMessage) => React.ReactNode | undefined;
91
+ }
@@ -0,0 +1,22 @@
1
+ import type { SavedChat, SavedChats, TTDPersistenceAdapter } from "./types";
2
+ interface UseTTDChatStorageProps {
3
+ persistenceAdapter: TTDPersistenceAdapter;
4
+ }
5
+ interface UseTTDChatStorageReturn {
6
+ savedChats: SavedChats;
7
+ saveCurrentChat: () => Promise<void>;
8
+ deleteChat: (chatId: string) => Promise<SavedChats>;
9
+ restoreChat: (chat: SavedChat) => SavedChat;
10
+ createNewChatId: () => Promise<string>;
11
+ }
12
+ export declare const savedChatsAtom: import("jotai/vanilla/atom").PrimitiveAtom<SavedChats> & {
13
+ init: SavedChats;
14
+ };
15
+ export declare const isLoadingChatsAtom: import("jotai/vanilla/atom").PrimitiveAtom<boolean> & {
16
+ init: boolean;
17
+ };
18
+ export declare const chatsLoadedAtom: import("jotai/vanilla/atom").PrimitiveAtom<boolean> & {
19
+ init: boolean;
20
+ };
21
+ export declare const useTTDChatStorage: ({ persistenceAdapter, }: UseTTDChatStorageProps) => UseTTDChatStorageReturn;
22
+ export {};
@@ -0,0 +1,24 @@
1
+ import type { LLMMessage, TTTDDialog } from "@excalidraw/excalidraw/components/TTDDialog/types";
2
+ interface StreamingOptions {
3
+ url: string;
4
+ messages: readonly LLMMessage[];
5
+ onChunk?: (chunk: string) => void;
6
+ extractRateLimits?: boolean;
7
+ signal?: AbortSignal;
8
+ onStreamCreated?: () => void;
9
+ }
10
+ export type StreamChunk = {
11
+ type: "content";
12
+ delta: string;
13
+ } | {
14
+ type: "done";
15
+ finishReason: "stop" | "length" | "content_filter" | "tool_calls" | null;
16
+ } | {
17
+ type: "error";
18
+ error: {
19
+ message: string;
20
+ status?: number;
21
+ };
22
+ };
23
+ export declare function TTDStreamFetch(options: StreamingOptions): Promise<TTTDDialog.OnTextSubmitRetValue>;
24
+ export {};
@@ -0,0 +1,10 @@
1
+ import type { LLMMessage, TChat } from "../types";
2
+ export declare const updateAssistantContent: (chatHistory: TChat.ChatHistory, payload: Partial<TChat.ChatMessage>) => TChat.ChatHistory;
3
+ export declare const getLastAssistantMessage: (chatHistory: TChat.ChatHistory) => TChat.ChatMessage;
4
+ export declare const addMessages: (chatHistory: TChat.ChatHistory, messages: Array<Omit<TChat.ChatMessage, "id" | "timestamp">>) => {
5
+ messages: TChat.ChatMessage[];
6
+ id: string;
7
+ currentPrompt: string;
8
+ };
9
+ export declare const removeLastAssistantMessage: (chatHistory: TChat.ChatHistory) => TChat.ChatHistory;
10
+ export declare const getMessagesForLLM: (chatHistory: TChat.ChatHistory) => LLMMessage[];
@@ -0,0 +1 @@
1
+ export declare const isValidMermaidSyntax: (content: string) => boolean;
@@ -3,7 +3,7 @@ import type { CSSProperties } from "react";
3
3
  export declare const Toast: ({ message, onClose, closable, duration, style, }: {
4
4
  message: string;
5
5
  onClose: () => void;
6
- closable?: boolean | undefined;
7
- duration?: number | undefined;
8
- style?: CSSProperties | undefined;
6
+ closable?: boolean;
7
+ duration?: number;
8
+ style?: CSSProperties;
9
9
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import React from "react";
2
2
  import type { TranslationKeys } from "../i18n";
3
3
  declare const Trans: ({ i18nKey, children, ...props }: {
4
- [key: string]: React.ReactNode | ((el: React.ReactNode) => React.ReactNode);
5
4
  i18nKey: TranslationKeys;
5
+ [key: string]: React.ReactNode | ((el: React.ReactNode) => React.ReactNode);
6
6
  }) => React.FunctionComponentElement<{
7
- children?: React.ReactNode;
7
+ children?: React.ReactNode | undefined;
8
8
  }>;
9
9
  export default Trans;
@@ -4,49 +4,46 @@ declare const DropdownMenu: {
4
4
  ({ children, open, placement, }: {
5
5
  children?: React.ReactNode;
6
6
  open: boolean;
7
- placement?: "top" | "bottom" | undefined;
7
+ placement?: "top" | "bottom";
8
8
  }): import("react/jsx-runtime").JSX.Element;
9
9
  Trigger: {
10
10
  ({ className, children, onToggle, title, ...rest }: {
11
- className?: string | undefined;
11
+ className?: string;
12
12
  children: React.ReactNode;
13
13
  onToggle: () => void;
14
- title?: string | undefined;
14
+ title?: string;
15
15
  } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onSelect">): import("react/jsx-runtime").JSX.Element;
16
16
  displayName: string;
17
17
  };
18
18
  Content: {
19
19
  ({ children, onClickOutside, className, onSelect, style, placement, }: {
20
20
  children?: React.ReactNode;
21
- onClickOutside?: (() => void) | undefined;
22
- className?: string | undefined;
23
- onSelect?: ((event: Event) => void) | undefined;
24
- style?: React.CSSProperties | undefined;
25
- placement?: "top" | "bottom" | undefined;
21
+ onClickOutside?: () => void;
22
+ className?: string;
23
+ onSelect?: (event: Event) => void;
24
+ style?: React.CSSProperties;
25
+ placement?: "top" | "bottom";
26
26
  }): import("react/jsx-runtime").JSX.Element;
27
27
  displayName: string;
28
28
  };
29
29
  Item: {
30
- ({ icon, value, order, children, shortcut, className, hovered, selected, textStyle, onSelect, onClick, ...rest }: {
31
- icon?: React.JSX.Element | undefined;
30
+ ({ icon, value, order, children, shortcut, className, hovered, selected, textStyle, onSelect, onClick, badge, ...rest }: {
31
+ icon?: React.JSX.Element;
32
32
  value?: string | number | undefined;
33
- order?: number | undefined;
34
- onSelect?: ((event: Event) => void) | undefined;
33
+ order?: number;
34
+ onSelect?: (event: Event) => void;
35
35
  children: React.ReactNode;
36
- shortcut?: string | undefined;
37
- hovered?: boolean | undefined;
38
- selected?: boolean | undefined;
39
- textStyle?: React.CSSProperties | undefined;
40
- className?: string | undefined;
36
+ shortcut?: string;
37
+ hovered?: boolean;
38
+ selected?: boolean;
39
+ textStyle?: React.CSSProperties;
40
+ className?: string;
41
+ badge?: React.ReactNode;
41
42
  } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onSelect">): import("react/jsx-runtime").JSX.Element;
42
43
  displayName: string;
43
44
  Badge: {
44
45
  ({ type, children, }: {
45
- type?: import("../../../common/src/utility-types").ValueOf<{
46
- readonly GREEN: "green";
47
- readonly RED: "red";
48
- readonly BLUE: "blue";
49
- }> | undefined;
46
+ type?: import("@excalidraw/common/utility-types").ValueOf<typeof import("./DropdownMenuItem").DropDownMenuItemBadgeType>;
50
47
  children: React.ReactNode;
51
48
  }): import("react/jsx-runtime").JSX.Element;
52
49
  displayName: string;
@@ -55,27 +52,27 @@ declare const DropdownMenu: {
55
52
  ItemLink: {
56
53
  ({ icon, shortcut, href, children, onSelect, className, selected, rel, ...rest }: {
57
54
  href: string;
58
- icon?: React.JSX.Element | undefined;
55
+ icon?: React.JSX.Element;
59
56
  children: React.ReactNode;
60
- shortcut?: string | undefined;
61
- className?: string | undefined;
62
- selected?: boolean | undefined;
63
- onSelect?: ((event: Event) => void) | undefined;
64
- rel?: string | undefined;
57
+ shortcut?: string;
58
+ className?: string;
59
+ selected?: boolean;
60
+ onSelect?: (event: Event) => void;
61
+ rel?: string;
65
62
  } & React.AnchorHTMLAttributes<HTMLAnchorElement>): import("react/jsx-runtime").JSX.Element;
66
63
  displayName: string;
67
64
  };
68
65
  ItemCustom: ({ children, className, selected, ...rest }: {
69
66
  children: React.ReactNode;
70
- className?: string | undefined;
71
- selected?: boolean | undefined;
67
+ className?: string;
68
+ selected?: boolean;
72
69
  } & React.HTMLAttributes<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
73
70
  Group: {
74
71
  ({ children, className, style, title, }: {
75
72
  children: React.ReactNode;
76
- className?: string | undefined;
77
- style?: React.CSSProperties | undefined;
78
- title?: string | undefined;
73
+ className?: string;
74
+ style?: React.CSSProperties;
75
+ title?: string;
79
76
  }): import("react/jsx-runtime").JSX.Element;
80
77
  displayName: string;
81
78
  };