@ericchen1990/pano-view 3.9.0 → 4.0.0

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.
package/dist/index.d.ts CHANGED
@@ -356,10 +356,17 @@ type WebVRProfile = {
356
356
  ipdMm: number;
357
357
  /** Distance from the display to the headset lens, in millimetres. */
358
358
  screenToLensMm?: number;
359
+ /**
360
+ * Distance from the headset tray bottom to the lens center, in millimetres.
361
+ * `0` or omitted keeps the optical axis on the vertical screen center.
362
+ */
363
+ trayDistanceMm?: number;
359
364
  /** Radial lens distortion coefficients. Zero disables distortion. */
360
365
  k1: number;
361
366
  k2: number;
362
367
  };
368
+ /** Target WebXR session refresh rate. Omitting keeps the store default (`"high"`). */
369
+ type WebVRFrameRate = "low" | "mid" | "high" | number;
363
370
  type WebVRChromeAppearance = {
364
371
  background?: CSSProperties["background"];
365
372
  color?: CSSProperties["color"];
@@ -369,8 +376,17 @@ type WebVRChromeAppearance = {
369
376
  setupTitle?: ReactNode;
370
377
  };
371
378
  type WebVRChrome = boolean | WebVRChromeAppearance;
379
+ type WebVRState = {
380
+ available: boolean;
381
+ enabled: boolean;
382
+ mode: WebVRMode | null;
383
+ };
372
384
  type WebVRProps = {
373
- /** Mount the built-in Enter / Exit / Setup chrome. Defaults to true. */
385
+ /**
386
+ * Mount the built-in session chrome (Exit VR / MobileVR Setup). Defaults to
387
+ * true. Enter VR is not rendered; host apps drive entry through the handle
388
+ * or `usePanoViewer`.
389
+ */
374
390
  chrome?: WebVRChrome;
375
391
  /** Enable the phone stereoscopic fallback. Defaults to true. */
376
392
  mobileVr?: boolean;
@@ -380,8 +396,46 @@ type WebVRProps = {
380
396
  fakeSupport?: boolean;
381
397
  /** Physical diagonal screen size in inches, or automatic detection. */
382
398
  screensize?: number | "auto";
399
+ /**
400
+ * Cardboard Device Parameter Database URL used when `screensize` is
401
+ * `"auto"`. Defaults to Google's public DPDB. Pass `""` or `null` to skip
402
+ * the online lookup for unknown devices.
403
+ */
404
+ databaseUrl?: string | null;
383
405
  /** Headset preset or a custom lens profile. */
384
406
  profile?: WebVRProfileId | WebVRProfile;
407
+ /**
408
+ * Follow compass-oriented headings in MobileVR. Defaults to false.
409
+ * Has no effect in WebXR sessions.
410
+ */
411
+ absolute?: boolean;
412
+ /** Panorama yaw that represents North when `absolute` is enabled. Defaults to 0. */
413
+ north?: number;
414
+ /**
415
+ * Gyro smoothing from 0 (none) to 0.99 (strong). Defaults to 0.
416
+ * Keep at 0 for normal viewing.
417
+ */
418
+ friction?: number;
419
+ /**
420
+ * Allow horizontal touch dragging to correct MobileVR heading. Defaults to
421
+ * false because headset trays can trigger false touches.
422
+ */
423
+ touchSupport?: boolean;
424
+ /**
425
+ * Distortion / WebXR framebuffer scale factor. Defaults to 1. Clamped to
426
+ * 0.5–2. Must be set before entering WebXR (cannot change mid-session).
427
+ */
428
+ oversampling?: number;
429
+ /**
430
+ * WebXR fixed foveation in the range 0–1. Omit to keep the device default.
431
+ * `0` is full resolution; `1` is maximum edge downsampling.
432
+ */
433
+ foveation?: number;
434
+ /**
435
+ * Target WebXR refresh rate. Omit to keep the store default (`"high"`).
436
+ * A numeric Hz picks the closest rate from `session.supportedFrameRates`.
437
+ */
438
+ frameRate?: WebVRFrameRate;
385
439
  /** Show a center reticle in VR. Defaults to true. */
386
440
  cursor?: boolean;
387
441
  /**
@@ -414,7 +468,11 @@ type WebVRHandle = {
414
468
  isAvailable: () => boolean;
415
469
  isEnabled: () => boolean;
416
470
  getMode: () => WebVRMode | null;
471
+ getState: () => WebVRState;
472
+ subscribe: (onStoreChange: () => void) => () => void;
417
473
  requestPermission: () => Promise<boolean>;
474
+ /** Clear stored MobileVR settings and restore prop / built-in defaults. */
475
+ resetSettings: () => void;
418
476
  };
419
477
  type WebVRSettings = {
420
478
  screensize: number | "auto";
@@ -482,6 +540,8 @@ type PanoViewerHandle = {
482
540
  isVRAvailable: () => boolean;
483
541
  isVREnabled: () => boolean;
484
542
  getVRMode: () => WebVRMode | null;
543
+ getVRState: () => WebVRState;
544
+ subscribeVR: (onStoreChange: () => void) => () => void;
485
545
  requestVRPermission: () => Promise<boolean>;
486
546
  getVideo: () => PanoVideoController | null;
487
547
  subscribeVideo: (onStoreChange: () => void) => () => void;
@@ -771,7 +831,16 @@ type PanoOverlayRenderContext = {
771
831
  };
772
832
  isFullscreen: boolean;
773
833
  };
774
- /** Read inside PanoViewer.renderOverlay or its DOM descendants. */
834
+ type PanoOverlayProps = {
835
+ children?: ReactNode;
836
+ };
837
+ /**
838
+ * Screen-plane DOM UI for PanoViewer. Place it as a direct child of PanoViewer
839
+ * (or inside a Fragment under PanoViewer). It stays outside the panorama sphere
840
+ * and remains visible in fullscreen. Interactive children need `pointerEvents: "auto"`.
841
+ */
842
+ declare function PanoOverlay({ children }: PanoOverlayProps): react.JSX.Element;
843
+ /** Read inside PanoOverlay, renderOverlay, or their DOM descendants. */
775
844
  declare function usePanoOverlay(): PanoOverlayRenderContext;
776
845
  /** Coordinate a custom modal with viewer inputs. Accessibility stays with the modal. */
777
846
  declare function usePanoModal(open: boolean): void;
@@ -1426,7 +1495,47 @@ type PanoDragMotion = {
1426
1495
  bounce?: boolean;
1427
1496
  };
1428
1497
 
1429
- type PanoMapCorner = "top-left" | "top-right" | "bottom-left" | "bottom-right";
1498
+ declare const PANO_OVERLAY_ALIGNS: readonly ["top", "bottom", "left", "right", "top-left", "top-right", "bottom-left", "bottom-right"];
1499
+ type PanoOverlayAlign = (typeof PANO_OVERLAY_ALIGNS)[number];
1500
+ type PanoOverlayAxis = "horizontal" | "vertical";
1501
+ type PanoOverlayInset = number | string | {
1502
+ top?: number | string;
1503
+ right?: number | string;
1504
+ bottom?: number | string;
1505
+ left?: number | string;
1506
+ };
1507
+ /** Shared screen-edge anchor for planar overlay chrome. */
1508
+ type PanoOverlayAnchor = {
1509
+ align?: PanoOverlayAlign;
1510
+ /** Used for corner anchors. Edges infer the axis and ignore this value. */
1511
+ axis?: PanoOverlayAxis;
1512
+ inset?: PanoOverlayInset;
1513
+ };
1514
+ type PanoOverlayCollapseEdge = "top" | "bottom" | "left" | "right";
1515
+ type PanoOverlayContentAlign = "start" | "center" | "end";
1516
+ type ResolvedOverlayInset = {
1517
+ top: string;
1518
+ right: string;
1519
+ bottom: string;
1520
+ left: string;
1521
+ };
1522
+ type ResolvedOverlayAnchor = {
1523
+ align: PanoOverlayAlign;
1524
+ axis: PanoOverlayAxis;
1525
+ inset: ResolvedOverlayInset;
1526
+ collapseEdge: PanoOverlayCollapseEdge;
1527
+ contentAlign: PanoOverlayContentAlign;
1528
+ dockInset: string;
1529
+ };
1530
+ declare function isOverlayCorner(align: PanoOverlayAlign): boolean;
1531
+ type PanoOverlayChevron = "up" | "down" | "left" | "right";
1532
+ declare function resolveOverlayAnchor(anchor: PanoOverlayAnchor | undefined, defaults: {
1533
+ align: PanoOverlayAlign;
1534
+ inset: number | string;
1535
+ }): ResolvedOverlayAnchor;
1536
+ /** Validate an anchor object from a project document. */
1537
+ declare function parseOverlayAnchor(value: unknown, field: string): PanoOverlayAnchor;
1538
+
1430
1539
  type PanoMapGradientStop = {
1431
1540
  offset: number;
1432
1541
  color: string;
@@ -1478,28 +1587,24 @@ type PanoMapSpotDefinition = {
1478
1587
  icon?: string;
1479
1588
  };
1480
1589
  type PanoMapControlsDefinition = {
1481
- /** Show expand/collapse on a docked panel. */
1590
+ /** Show the edge tab that slides a panel off-screen. */
1482
1591
  collapse?: boolean;
1483
1592
  /** Show zoom-in and zoom-out buttons. */
1484
1593
  zoom?: boolean;
1485
1594
  };
1486
- type PanoMapDockedPresentation = {
1487
- mode: "docked";
1488
- corner?: PanoMapCorner;
1595
+ type PanoMapPanelPresentation = {
1596
+ mode: "panel";
1597
+ anchor?: PanoOverlayAnchor;
1489
1598
  width?: number;
1490
1599
  height?: number;
1491
- offsetX?: number;
1492
- offsetY?: number;
1493
1600
  };
1494
1601
  type PanoMapDialogPresentation = {
1495
1602
  mode: "dialog";
1496
- corner?: PanoMapCorner;
1497
- offsetX?: number;
1498
- offsetY?: number;
1603
+ anchor?: PanoOverlayAnchor;
1499
1604
  width?: number;
1500
1605
  height?: number;
1501
1606
  };
1502
- type PanoMapPresentation = PanoMapDockedPresentation | PanoMapDialogPresentation;
1607
+ type PanoMapPresentation = PanoMapPanelPresentation | PanoMapDialogPresentation;
1503
1608
  type PanoMapDefinition = {
1504
1609
  image: string;
1505
1610
  /**
@@ -1809,20 +1914,31 @@ declare const WEBVR_PROFILES: Record<WebVRProfileId, WebVRProfile>;
1809
1914
 
1810
1915
  declare const DEFAULT_WEBVR_CURSOR_DWELL_MS = 1500;
1811
1916
 
1917
+ declare const EMPTY_WEBVR_STATE: WebVRState;
1918
+
1919
+ type PanoOverlayToggleState = {
1920
+ collapsed: boolean;
1921
+ };
1922
+ /**
1923
+ * Icon and chrome for an overlay edge tab.
1924
+ * Omit `icon` to keep the default chevron. Pass an element (`<Icon />`), not a
1925
+ * component type. A function receives `{ collapsed }` and returns the icon for
1926
+ * that state. `style` overrides background, border, color, and size. Position
1927
+ * and `transform` stay with the edge layout.
1928
+ */
1929
+ type PanoOverlayToggle = {
1930
+ icon?: ReactNode | ((state: PanoOverlayToggleState) => ReactNode);
1931
+ className?: string;
1932
+ style?: CSSProperties;
1933
+ };
1934
+ /** Custom edge-tab icon, or `undefined` when `icon` was omitted. */
1935
+ declare function resolveOverlayToggleIcon(icon: PanoOverlayToggle["icon"], collapsed: boolean): ReactNode | undefined;
1936
+
1812
1937
  type PanoSceneMenuItem = {
1813
1938
  id: string;
1814
1939
  thumbnailUrl: string;
1815
1940
  title?: string;
1816
1941
  };
1817
- type PanoSceneMenuPlacement = "top" | "bottom" | "left" | "right";
1818
- /** Cross-axis alignment along the dock edge. Defaults to `"center"`. */
1819
- type PanoSceneMenuAlign = "start" | "center" | "end";
1820
- type PanoSceneMenuInset = number | string | {
1821
- top?: number | string;
1822
- right?: number | string;
1823
- bottom?: number | string;
1824
- left?: number | string;
1825
- };
1826
1942
  type PanoSceneMenuLabelAlign = "start" | "center" | "end";
1827
1943
  type PanoSceneMenuAppearance = {
1828
1944
  background?: string;
@@ -1845,19 +1961,11 @@ type PanoSceneMenuProps = {
1845
1961
  items: readonly PanoSceneMenuItem[];
1846
1962
  activeId?: string | null;
1847
1963
  onSelect?: (id: string) => void;
1848
- /** Dock edge inside the viewer overlay. Defaults to `"bottom"`. */
1849
- placement?: PanoSceneMenuPlacement;
1850
1964
  /**
1851
- * Align the menu along the dock edge when its main-axis size is smaller than
1852
- * the available space. Also aligns short lists inside the strip. Defaults to
1853
- * `"center"`.
1965
+ * Screen anchor. Defaults to bottom, centered on that edge, with a 12px inset.
1966
+ * Corner `axis` chooses a horizontal or vertical strip.
1854
1967
  */
1855
- align?: PanoSceneMenuAlign;
1856
- /**
1857
- * Gap from the viewer edges. A single value applies to every side;
1858
- * an object sets each side. Numbers are pixels. Defaults to `12`.
1859
- */
1860
- inset?: PanoSceneMenuInset;
1968
+ anchor?: PanoOverlayAnchor;
1861
1969
  /** Menu width. Numbers are pixels; strings may be `%`, `rem`, etc. */
1862
1970
  width?: number | string;
1863
1971
  /** Menu height. Numbers are pixels; strings may be `%`, `rem`, etc. */
@@ -1892,9 +2000,11 @@ type PanoSceneMenuProps = {
1892
2000
  nextLabel?: string;
1893
2001
  expandLabel?: string;
1894
2002
  collapseLabel?: string;
2003
+ /** Edge-tab icon and chrome. Omit to keep the default chevron. */
2004
+ toggle?: PanoOverlayToggle;
1895
2005
  };
1896
2006
  declare const DEFAULT_PANO_SCENE_MENU_APPEARANCE: Required<PanoSceneMenuAppearance>;
1897
- declare function PanoSceneMenu({ items, activeId, onSelect, placement, align, inset, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, }: PanoSceneMenuProps): react.JSX.Element;
2007
+ declare function PanoSceneMenu({ items, activeId, onSelect, anchor, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, toggle, }: PanoSceneMenuProps): react.JSX.Element;
1898
2008
 
1899
2009
  type ViewInteractionSource = "mouse" | "touch" | "keyboard";
1900
2010
  type PanoWheelEvent = {
@@ -2275,7 +2385,7 @@ type PanoMapProps = {
2275
2385
  initialScale?: number;
2276
2386
  };
2277
2387
  /**
2278
- * Floor-plan map surface. Fills its parent; hosts decide docked vs dialog chrome.
2388
+ * Floor-plan map surface. Fills its parent; hosts decide panel vs dialog chrome.
2279
2389
  * Icons and sectors keep CSS-pixel size while the background image zooms.
2280
2390
  */
2281
2391
  declare function PanoMap({ map, activeSceneId, onSelectScene, view: controlledView, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, className, style, showZoomControls, showCollapseControl, collapsed: controlledCollapsed, onCollapsedChange, renderChrome, initialScale, }: PanoMapProps): react.JSX.Element;
@@ -2293,17 +2403,16 @@ type PanoMapOverlayProps = {
2293
2403
  /** Force presentation while authoring, ignoring document presentation temporarily. */
2294
2404
  presentationOverride?: PanoMapDefinition["presentation"];
2295
2405
  /** Override presentation mode for this mount. */
2296
- presentation?: "docked" | "dialog";
2297
- /** Override docked corner (or dialog launcher corner). */
2298
- corner?: PanoMapCorner;
2299
- /** Override docked panel or dialog-launcher width in CSS pixels. */
2406
+ presentation?: "panel" | "dialog";
2407
+ /**
2408
+ * Override the document anchor for this mount.
2409
+ * Fields replace the document anchor field by field.
2410
+ */
2411
+ anchor?: PanoOverlayAnchor;
2412
+ /** Override panel or dialog-launcher width in CSS pixels. */
2300
2413
  width?: number;
2301
- /** Override docked panel or dialog-launcher height in CSS pixels. */
2414
+ /** Override panel or dialog-launcher height in CSS pixels. */
2302
2415
  height?: number;
2303
- /** Horizontal inset from the chosen corner in CSS pixels. */
2304
- offsetX?: number;
2305
- /** Vertical inset from the chosen corner in CSS pixels. */
2306
- offsetY?: number;
2307
2416
  /** Preferred dialog body width in CSS pixels; clamped to the viewer. */
2308
2417
  dialogWidth?: number;
2309
2418
  /** Preferred dialog body height in CSS pixels; clamped to the viewer. */
@@ -2329,14 +2438,19 @@ type PanoMapOverlayProps = {
2329
2438
  title?: string;
2330
2439
  className?: string;
2331
2440
  style?: CSSProperties;
2441
+ /**
2442
+ * Panel edge-tab icon and chrome. Omit to keep the default chevron.
2443
+ * Dialog mode has no edge tab.
2444
+ */
2445
+ toggle?: PanoOverlayToggle;
2332
2446
  /** When true, fill a large authoring surface instead of visitor presentation. */
2333
2447
  editorSurface?: boolean;
2334
2448
  };
2335
2449
  /**
2336
- * Visitor-facing map chrome for `PanoViewer.renderOverlay`.
2337
- * Docked panels stay in a corner; dialog mode opens the same map in a modal.
2450
+ * Visitor-facing map chrome for `PanoOverlay`.
2451
+ * Panel mode anchors the map on the viewer; dialog mode opens it from a launcher.
2338
2452
  */
2339
- declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, corner: cornerProp, width: widthProp, height: heightProp, offsetX: offsetXProp, offsetY: offsetYProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2453
+ declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, anchor: anchorProp, width: widthProp, height: heightProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, toggle, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2340
2454
 
2341
2455
  type MapRect = {
2342
2456
  left: number;
@@ -2370,4 +2484,4 @@ declare function containerPointToImage(point: MapPoint, viewport: MapViewport):
2370
2484
  /** Clockwise degrees from image up for a vector in container space. */
2371
2485
  declare function headingFromVector(dx: number, dy: number): number;
2372
2486
 
2373
- export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapCorner, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapDockedPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlayPortalProvider, type PanoOverlayRenderContext, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAlign, type PanoSceneMenuAppearance, type PanoSceneMenuInset, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuPlacement, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };
2487
+ export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, EMPTY_WEBVR_STATE, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, PANO_OVERLAY_ALIGNS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPanelPresentation, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlay, type PanoOverlayAlign, type PanoOverlayAnchor, type PanoOverlayAxis, type PanoOverlayChevron, type PanoOverlayCollapseEdge, type PanoOverlayContentAlign, type PanoOverlayInset, PanoOverlayPortalProvider, type PanoOverlayProps, type PanoOverlayRenderContext, type PanoOverlayToggle, type PanoOverlayToggleState, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAppearance, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type ResolvedOverlayAnchor, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRFrameRate, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, type WebVRState, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, isOverlayCorner, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parseOverlayAnchor, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolveOverlayAnchor, resolveOverlayToggleIcon, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };