import React from "react"; import Footer from "./components/footer/FooterCenter"; import LiveCollaborationTrigger from "./components/live-collaboration/LiveCollaborationTrigger"; import MainMenu from "./components/main-menu/MainMenu"; import WelcomeScreen from "./components/welcome-screen/WelcomeScreen"; import { useOnAppStateChange as _useOnAppStateChange } from "./hooks/useAppStateValue"; import "./css/app.scss"; import "./css/styles.scss"; import "./fonts/fonts.css"; import type { AppState, ExcalidrawProps } from "./types"; /** * Stateless provider that allows `useExcalidrawAPI()` (and hooks built * on it, such as `useAppStateValue()` and `useOnAppStateChange()`) to work * outside the component tree. */ export declare const ExcalidrawAPIProvider: ({ children, }: { children: React.ReactNode; }) => import("react/jsx-runtime").JSX.Element; export declare const Excalidraw: React.MemoExoticComponent<(props: ExcalidrawProps) => import("react/jsx-runtime").JSX.Element>; export { getSceneVersion, hashElementsVersion, hashString, getNonDeletedElements, } from "@excalidraw/element"; export { getTextFromElements } from "@excalidraw/element"; export { isInvisiblySmallElement } from "@excalidraw/element"; export { defaultLang, useI18n, languages } from "./i18n"; export { restoreAppState, restoreElement, restoreElements, restoreLibraryItems, } from "./data/restore"; export { reconcileElements } from "./data/reconcile"; export { exportToCanvas, exportToBlob, exportToSvg, exportToClipboard, } from "@excalidraw/utils/export"; export { getCommonBoundingBox } from "@excalidraw/element/bounds"; export { getMaximumGroups } from "@excalidraw/element/groups"; export { measureText } from "@excalidraw/element/textMeasurements"; export { wrapText } from "@excalidraw/element/textWrapping"; export { getLineHeight } from "@excalidraw/common"; export { getFontString, getFontFamilyString } from "@excalidraw/common"; export { getBoundTextMaxWidth } from "@excalidraw/element/textElement"; export { mermaidToExcalidraw } from "./components/TTDDialog/MermaidToExcalidrawLib"; export { registerLocalFont, getFontMetrics, getFontFamilies, registerFontsInCSS, getCSSFontDefinition, loadSceneFonts, getDefaultColorPalette, getSharedMermaidInstance, loadMermaid, intersectElementWithLine, } from "../excalidraw/obsidianUtils"; export { refreshTextDimensions } from "@excalidraw/element/newElement"; export { syncMovedIndices, syncInvalidIndices } from "@excalidraw/element"; export { getContainerElement } from "@excalidraw/element/textElement"; export { serializeAsJSON, serializeLibraryAsJSON } from "./data/json"; export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "./data/blob"; export { mergeLibraryItems, getLibraryItemsHash } from "./data/library"; export { isLinearElement } from "@excalidraw/element"; export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, normalizeLink, sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, getFormFactor, safelyParseJSON, //zsviczian destroyObsidianUtils, //zsviczian throttleRAF, } from "@excalidraw/common"; export { mutateElement, newElementWith, bumpVersion, } from "@excalidraw/element"; export { CaptureUpdateAction } from "@excalidraw/element"; export { parseLibraryTokensFromUrl, useHandleLibrary } from "./data/library"; export { getEmbedLink } from "@excalidraw/element/embeddable"; export { Sidebar } from "./components/Sidebar/Sidebar"; export { Button } from "./components/Button"; export { Footer }; export { MainMenu }; export { Ellipsify } from "./components/Ellipsify"; export { useEditorInterface, useStylesPanelMode, useExcalidrawAPI, ExcalidrawAPIContext, } from "./components/App"; export { WelcomeScreen }; export { LiveCollaborationTrigger }; export { Stats } from "./components/Stats"; export { DefaultSidebar } from "./components/DefaultSidebar"; export { TTDDialog } from "./components/TTDDialog/TTDDialog"; export { TTDDialogTrigger } from "./components/TTDDialog/TTDDialogTrigger"; export { TTDStreamFetch } from "./components/TTDDialog/utils/TTDStreamFetch"; export type { TTDPersistenceAdapter, SavedChat, SavedChats, } from "./components/TTDDialog/types"; export { zoomToFitBounds } from "./actions/actionCanvas"; export { getCommonBounds, getVisibleSceneBounds, convertToExcalidrawElements, } from "@excalidraw/element"; export { elementsOverlappingBBox, isElementInsideBBox, elementPartiallyOverlapsWithOrContainsBBox, } from "@excalidraw/utils/withinBounds"; export { DiagramToCodePlugin } from "./components/DiagramToCodePlugin/DiagramToCodePlugin"; export { getDataURL } from "./data/blob"; export { isElementLink } from "@excalidraw/element"; export { Fonts } from "./fonts/Fonts"; export { setCustomTextMetricsProvider } from "@excalidraw/element"; export { CommandPalette } from "./components/CommandPalette/CommandPalette"; export { renderSpreadsheet, tryParseSpreadsheet, isSpreadsheetValidForChartType, } from "./charts"; /** * hook that subscribes to specific appState prop(s) * * @param prop - appState prop(s) to subscribe to, or a selector function. * NOTE `prop/selector` is memoized and will not change after initial render */ export declare function useExcalidrawStateValue(prop: K): AppState[K] | undefined; export declare function useExcalidrawStateValue(props: T[]): AppState | undefined; export declare function useExcalidrawStateValue(selector: (appState: AppState) => T): T | undefined; export { _useOnAppStateChange as useOnExcalidrawStateChange };