pptx-react-viewer 4.44.0 → 4.46.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.
Files changed (44) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +2 -2
  3. package/dist/{chunk-YIYIJB3X.js → chunk-2J3467IB.js} +154 -117
  4. package/dist/chunk-2J3467IB.js.br +0 -0
  5. package/dist/chunk-2J3467IB.js.gz +0 -0
  6. package/dist/{chunk-OYK6O2UM.js → chunk-AMXSOQRH.js} +103 -13
  7. package/dist/chunk-AMXSOQRH.js.br +0 -0
  8. package/dist/chunk-AMXSOQRH.js.gz +0 -0
  9. package/dist/{chunk-W6PDVBAF.mjs → chunk-CLHUOZSY.mjs} +40 -3
  10. package/dist/chunk-CLHUOZSY.mjs.br +0 -0
  11. package/dist/chunk-CLHUOZSY.mjs.gz +0 -0
  12. package/dist/{chunk-NXOETWSO.mjs → chunk-UQFIRJGG.mjs} +104 -14
  13. package/dist/chunk-UQFIRJGG.mjs.br +0 -0
  14. package/dist/chunk-UQFIRJGG.mjs.gz +0 -0
  15. package/dist/index.d.ts +22 -0
  16. package/dist/index.js +22 -22
  17. package/dist/index.js.br +0 -0
  18. package/dist/index.js.gz +0 -0
  19. package/dist/index.mjs +2 -2
  20. package/dist/index.mjs.br +0 -0
  21. package/dist/index.mjs.gz +0 -0
  22. package/dist/internals.d.ts +18 -2
  23. package/dist/internals.js +80 -80
  24. package/dist/internals.js.br +0 -0
  25. package/dist/internals.js.gz +0 -0
  26. package/dist/internals.mjs +1 -1
  27. package/dist/internals.mjs.br +0 -0
  28. package/dist/internals.mjs.gz +0 -0
  29. package/dist/viewer/index.d.ts +16 -1
  30. package/dist/viewer/index.js +17 -17
  31. package/dist/viewer/index.js.br +0 -0
  32. package/dist/viewer/index.js.gz +0 -0
  33. package/dist/viewer/index.mjs +2 -2
  34. package/dist/viewer/index.mjs.br +0 -0
  35. package/dist/viewer/index.mjs.gz +0 -0
  36. package/package.json +3 -3
  37. package/dist/chunk-NXOETWSO.mjs.br +0 -0
  38. package/dist/chunk-NXOETWSO.mjs.gz +0 -0
  39. package/dist/chunk-OYK6O2UM.js.br +0 -0
  40. package/dist/chunk-OYK6O2UM.js.gz +0 -0
  41. package/dist/chunk-W6PDVBAF.mjs.br +0 -0
  42. package/dist/chunk-W6PDVBAF.mjs.gz +0 -0
  43. package/dist/chunk-YIYIJB3X.js.br +0 -0
  44. package/dist/chunk-YIYIJB3X.js.gz +0 -0
package/dist/index.d.ts CHANGED
@@ -5,6 +5,8 @@ import { CollaborationRole, CollaborationConfig, ViewportFitOptions, ViewerFontS
5
5
  export { AVATAR_COLOR_SWATCHES, AccountAuthConfig, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, BackstageCustomization, CANVAS_CONTEXT_MENU_COMMAND_IDS, CollaborationConfig, CollaborationShellState, ContextMenuCustomization, DEFAULT_VIEWER_PROFILE, EDITOR_SHORTCUT_ACTION_IDS, ELEMENT_CONTEXT_MENU_COMMAND_IDS, ElementUpdate, ElementUpdateOptions, ExternalCollaborationAwareness, ExternalCollaborationSession, ExternalCollaborationSnapshot, HostCanvasMenuContext, HostElementMenuContext, HostMenuCommand, KeyboardCustomization, LocalStorageUsageSummary, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, OptionsCustomization, OptionsPageId, OptionsSectionId, OptionsSettingId, OptionsSettingValues, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, PowerPointViewerAPI, RIBBON_TAB_IDS, ResolvedCustomization, RibbonCustomization, SLIDE_TEMPLATES, SavedPresentationFormat, ShortcutChord, SlideTemplateId, SlideTemplateSpec, StoredViewerPrefs, THEME_CATALOG, TOOLBAR_BUTTON_IDS, ThemeCatalogEntry, ToolbarActionId, ToolbarButtonId, ToolbarTabId, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_PREFS_STORAGE_KEY, ViewerCustomization, ViewerCustomizationApi, ViewerDialogId, ViewerExportFormatId, ViewerFeatureId, ViewerMode, ViewerPanelId, ViewerProfile, ViewerTheme, ViewerThemeColors, ViewportFitOptions, ViewportFitPadding, buildSlideTemplateContent, buildSlideTemplateSlide, clearAllLocalViewerData, clearStoredViewerPrefs, createImageElementFromFile, defaultCssVars, defaultRadius, defaultThemeColors, describeCollaborationShellState, getLocalStorageUsageSummary, isLegacyBinaryPresentation, isSupportedPresentationFile, presentationBaseName, readStoredViewerPrefs, resolveProfileInitial, resolveThemeCatalogEntry, saveViewerProfile, savedPresentationFileName, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, writeStoredViewerPrefs } from 'ooxml-ui/pptx';
6
6
  import { LocaleCatalogEntry } from 'ooxml-ui/pptx/i18n';
7
7
  export { LOCALE_CATALOG, LocaleCatalogEntry } from 'ooxml-ui/pptx/i18n';
8
+ import { CollaborationWriteBackState, CollaborationState } from 'ooxml-core/collab';
9
+ export { CollaborationState } from 'ooxml-core/collab';
8
10
  import { PptxAiConfig } from 'ooxml-ui/pptx/ai';
9
11
  export { PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiToolName, PptxAiWritePolicy } from 'ooxml-ui/pptx/ai';
10
12
  import { Doc } from 'yjs';
@@ -96,6 +98,12 @@ interface CollaborationContextValue {
96
98
  synced: boolean;
97
99
  /** Manually retry the WebSocket connection after a timeout or error. */
98
100
  retry: () => void;
101
+ /** The local awareness client id, once the session has one. */
102
+ clientId?: number | null;
103
+ /** The owner's write-back status, as the document sync last reported it. */
104
+ writeBack?: CollaborationWriteBackState | undefined;
105
+ /** Called by the document sync with the write-back status (undefined clears it). */
106
+ reportWriteBack?: (state: CollaborationWriteBackState | undefined) => void;
99
107
  }
100
108
  //#endregion
101
109
  //#region src/viewer/hooks/useLoadNotifications.d.ts
@@ -314,6 +322,13 @@ interface PowerPointViewerProps extends ViewportFitOptions {
314
322
  * Share dialog. The host app should clear the `collaboration` prop.
315
323
  */
316
324
  onStopCollaboration?: () => void;
325
+ /**
326
+ * Reports the shared `CollaborationState` (the contract Word, Excel and Visio
327
+ * use): called when a session starts or stops (the off state), and when its
328
+ * connection status, synced flag or people change. Works for viewer-owned and
329
+ * host-owned (`collaboration.session`) sessions; unchanged states are not repeated.
330
+ */
331
+ onCollaborationChange?: (state: CollaborationState) => void;
317
332
  /**
318
333
  * Default values for the Share dialog fields. The host app should provide
319
334
  * these to control the session name, user display name, and server URL.
@@ -976,6 +991,13 @@ interface UseViewerBuildingBlocksInput extends ViewportFitOptions {
976
991
  filePath?: string;
977
992
  /** Display name for the toolbar's file-name-aware controls (e.g. title bar hosts build themselves). */
978
993
  fileName?: string;
994
+ /**
995
+ * Zero-based slide shown after each load, clamped into the deck, as `PowerPointViewer`'s
996
+ * `initialSlide`. It is applied in the same render that shows the loaded deck, so slide 1 is
997
+ * never shown first. Changing it later applies to the next load, not the current slide; use
998
+ * the handle's `goTo` to move an open deck.
999
+ */
1000
+ initialSlide?: number;
979
1001
  /** Whether the built-in autosave-to-localStorage recovery timer is active. Defaults to true. */
980
1002
  autosaveEnabled?: boolean;
981
1003
  /** Display name used as the author for comments. */
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkYIYIJB3X_js = require('./chunk-YIYIJB3X.js');
4
- var chunkOYK6O2UM_js = require('./chunk-OYK6O2UM.js');
3
+ var chunk2J3467IB_js = require('./chunk-2J3467IB.js');
4
+ var chunkAMXSOQRH_js = require('./chunk-AMXSOQRH.js');
5
5
  var chunkVJZJESNT_js = require('./chunk-VJZJESNT.js');
6
6
  require('./chunk-W2IMY5SY.js');
7
7
  var pptx = require('ooxml-ui/pptx');
@@ -11,83 +11,83 @@ var i18n = require('ooxml-ui/pptx/i18n');
11
11
 
12
12
  Object.defineProperty(exports, "PowerPointViewer", {
13
13
  enumerable: true,
14
- get: function () { return chunkYIYIJB3X_js.PowerPointViewer; }
14
+ get: function () { return chunk2J3467IB_js.PowerPointViewer; }
15
15
  });
16
16
  Object.defineProperty(exports, "SlideCanvas", {
17
17
  enumerable: true,
18
- get: function () { return chunkYIYIJB3X_js.SlideCanvas; }
18
+ get: function () { return chunk2J3467IB_js.SlideCanvas; }
19
19
  });
20
20
  Object.defineProperty(exports, "SlideTemplateGalleryDialog", {
21
21
  enumerable: true,
22
- get: function () { return chunkYIYIJB3X_js.SlideTemplateGalleryDialog; }
22
+ get: function () { return chunk2J3467IB_js.SlideTemplateGalleryDialog; }
23
23
  });
24
24
  Object.defineProperty(exports, "SlideTemplatePreview", {
25
25
  enumerable: true,
26
- get: function () { return chunkYIYIJB3X_js.SlideTemplatePreview; }
26
+ get: function () { return chunk2J3467IB_js.SlideTemplatePreview; }
27
27
  });
28
28
  Object.defineProperty(exports, "THEME_CATALOG", {
29
29
  enumerable: true,
30
- get: function () { return chunkYIYIJB3X_js.THEME_CATALOG; }
30
+ get: function () { return chunk2J3467IB_js.THEME_CATALOG; }
31
31
  });
32
32
  Object.defineProperty(exports, "Toolbar", {
33
33
  enumerable: true,
34
- get: function () { return chunkYIYIJB3X_js.Toolbar; }
34
+ get: function () { return chunk2J3467IB_js.Toolbar; }
35
35
  });
36
36
  Object.defineProperty(exports, "ViewerThemeProvider", {
37
37
  enumerable: true,
38
- get: function () { return chunkYIYIJB3X_js.ViewerThemeProvider; }
38
+ get: function () { return chunk2J3467IB_js.ViewerThemeProvider; }
39
39
  });
40
40
  Object.defineProperty(exports, "defaultCssVars", {
41
41
  enumerable: true,
42
- get: function () { return chunkYIYIJB3X_js.defaultCssVars; }
42
+ get: function () { return chunk2J3467IB_js.defaultCssVars; }
43
43
  });
44
44
  Object.defineProperty(exports, "defaultRadius", {
45
45
  enumerable: true,
46
- get: function () { return chunkYIYIJB3X_js.defaultRadius; }
46
+ get: function () { return chunk2J3467IB_js.defaultRadius; }
47
47
  });
48
48
  Object.defineProperty(exports, "defaultThemeColors", {
49
49
  enumerable: true,
50
- get: function () { return chunkYIYIJB3X_js.defaultThemeColors; }
50
+ get: function () { return chunk2J3467IB_js.defaultThemeColors; }
51
51
  });
52
52
  Object.defineProperty(exports, "resolveThemeCatalogEntry", {
53
53
  enumerable: true,
54
- get: function () { return chunkYIYIJB3X_js.resolveThemeCatalogEntry; }
54
+ get: function () { return chunk2J3467IB_js.resolveThemeCatalogEntry; }
55
55
  });
56
56
  Object.defineProperty(exports, "themeToCssVars", {
57
57
  enumerable: true,
58
- get: function () { return chunkYIYIJB3X_js.themeToCssVars; }
58
+ get: function () { return chunk2J3467IB_js.themeToCssVars; }
59
59
  });
60
60
  Object.defineProperty(exports, "useViewerTheme", {
61
61
  enumerable: true,
62
- get: function () { return chunkYIYIJB3X_js.useViewerTheme; }
62
+ get: function () { return chunk2J3467IB_js.useViewerTheme; }
63
63
  });
64
64
  Object.defineProperty(exports, "vermilionDarkColors", {
65
65
  enumerable: true,
66
- get: function () { return chunkYIYIJB3X_js.vermilionDarkColors; }
66
+ get: function () { return chunk2J3467IB_js.vermilionDarkColors; }
67
67
  });
68
68
  Object.defineProperty(exports, "vermilionDarkTheme", {
69
69
  enumerable: true,
70
- get: function () { return chunkYIYIJB3X_js.vermilionDarkTheme; }
70
+ get: function () { return chunk2J3467IB_js.vermilionDarkTheme; }
71
71
  });
72
72
  Object.defineProperty(exports, "vermilionLightColors", {
73
73
  enumerable: true,
74
- get: function () { return chunkYIYIJB3X_js.vermilionLightColors; }
74
+ get: function () { return chunk2J3467IB_js.vermilionLightColors; }
75
75
  });
76
76
  Object.defineProperty(exports, "vermilionLightTheme", {
77
77
  enumerable: true,
78
- get: function () { return chunkYIYIJB3X_js.vermilionLightTheme; }
78
+ get: function () { return chunk2J3467IB_js.vermilionLightTheme; }
79
79
  });
80
80
  Object.defineProperty(exports, "vermilionRadius", {
81
81
  enumerable: true,
82
- get: function () { return chunkYIYIJB3X_js.vermilionRadius; }
82
+ get: function () { return chunk2J3467IB_js.vermilionRadius; }
83
83
  });
84
84
  Object.defineProperty(exports, "renderToCanvas", {
85
85
  enumerable: true,
86
- get: function () { return chunkOYK6O2UM_js.renderToCanvas; }
86
+ get: function () { return chunkAMXSOQRH_js.renderToCanvas; }
87
87
  });
88
88
  Object.defineProperty(exports, "useViewerBuildingBlocks", {
89
89
  enumerable: true,
90
- get: function () { return chunkOYK6O2UM_js.useViewerBuildingBlocks; }
90
+ get: function () { return chunkAMXSOQRH_js.useViewerBuildingBlocks; }
91
91
  });
92
92
  Object.defineProperty(exports, "getAnimationInitialStyle", {
93
93
  enumerable: true,
package/dist/index.js.br CHANGED
Binary file
package/dist/index.js.gz CHANGED
Binary file
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- export { PowerPointViewer, SlideCanvas, SlideTemplateGalleryDialog, SlideTemplatePreview, THEME_CATALOG, Toolbar, ViewerThemeProvider, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, useViewerTheme, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from './chunk-W6PDVBAF.mjs';
2
- export { renderToCanvas, useViewerBuildingBlocks } from './chunk-NXOETWSO.mjs';
1
+ export { PowerPointViewer, SlideCanvas, SlideTemplateGalleryDialog, SlideTemplatePreview, THEME_CATALOG, Toolbar, ViewerThemeProvider, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, useViewerTheme, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from './chunk-CLHUOZSY.mjs';
2
+ export { renderToCanvas, useViewerBuildingBlocks } from './chunk-UQFIRJGG.mjs';
3
3
  export { getAnimationInitialStyle } from './chunk-FBN7UFW2.mjs';
4
4
  import './chunk-Q3DHYOLK.mjs';
5
5
  export { AVATAR_COLOR_SWATCHES, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, CANVAS_CONTEXT_MENU_COMMAND_IDS, DEFAULT_VIEWER_PROFILE, EDITOR_SHORTCUT_ACTION_IDS, ELEMENT_CONTEXT_MENU_COMMAND_IDS, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, RIBBON_TAB_IDS, SLIDE_TEMPLATES, TOOLBAR_BUTTON_IDS, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_PREFS_STORAGE_KEY, buildSlideTemplateContent, buildSlideTemplateSlide, clearAllLocalViewerData, clearStoredViewerPrefs, createImageElementFromFile, describeCollaborationShellState, getLocalStorageUsageSummary, isLegacyBinaryPresentation, isSupportedPresentationFile, presentationBaseName, readStoredViewerPrefs, resolveProfileInitial, saveViewerProfile, savedPresentationFileName, writeStoredViewerPrefs } from 'ooxml-ui/pptx';
package/dist/index.mjs.br CHANGED
Binary file
package/dist/index.mjs.gz CHANGED
Binary file
@@ -1,6 +1,7 @@
1
1
  import { CollaborationRole, CollaborationConfig, PowerPointViewerAPI, ViewerCustomizationApi, ShapeAdjustmentHandleDescriptor, ChangeCaseMode, ResolvedKeyboardCustomization, FindResult, EditorImagePasteOptions, InsertChartKind, PasteSpecialFormat, SlidePasteRequest, SlideTemplateId, MorphTransitionPlan, ElementAnimationState, ZoomNavigationTarget, PresentationSnapshot, ViewerMode, ShapeAdjustmentDragState, InlineTextEditSnapshot, InlineListReadResult, FreeformToolKind, CollaborationLivePatcher, SlideSizeEmu, ElementClipboardPayload, CropSession, FontEmbeddingDescriptor, MasterViewTarget, ViewportFitOptions, CollaborationInput, ToolbarActionId, CollaborationShellState, AnimationApplyGroup, ReviewCommentsHost, RulerUnit, FieldSubstitutionContext, EditPointsCommandId, EditPointsElementPatch, PresentationPointerTool, RunProgramNotice, BorrowedCollaborationAwareness, CollabLoadOrigin, AuthoredSlideRange, FragmentedLayer, PrintSettings, ThemeEditorEdit, CompareResult, ReadOnlyRecommendation, CompatibilityWarningToast, DeviceOrientation, ResolvedCustomization, DeckSavePurpose, ZoomExcursion, TouchGestureCallbacks, ViewerOptionsStore, ViewerOptions, AutosaveRecoveryPrompt, VirtualizedRange, ToolbarTabId } from 'ooxml-ui/pptx';
2
2
  export { CINEMATIC_TRANSITION_KEYFRAMES, CollaborationConfig, DEFAULT_MORPH_DURATION_MS, DEFAULT_TRANSITION_DURATION_MS, DeviceOrientation, EASE, INSTANT, MOBILE_BREAKPOINT, P14_TRANSITION_KEYFRAMES, P14_TRANSITION_KEYFRAMES_2, P14_TRANSITION_KEYFRAMES_ALL, RANDOM_ELIGIBLE_TYPES, ResolvedDirection, ResolvedDirection8, SLIDE_TRANSITION_KEYFRAMES, SLIDE_TRANSITION_KEYFRAMES_CSS, SlideTransitionAnimations, TABLET_BREAKPOINT, TRANSITION_SPEED_DURATION_MS, TouchGestureCallbacks, VirtualizedRange, WHEEL_SPOKE_COUNTS, computeVirtualRange, getCinematicTransitionAnimations, getP14TransitionAnimations, getSlideTransitionAnimations, resolveDirection, resolveDirection8, resolveOrientation, resolveSlideTransition, resolveTransitionDurationMs, resolveWheelSpokeCount } from 'ooxml-ui/pptx';
3
3
  import { PptxSlide, PptxElement, PptxElementAnimation, TextStyle, PptxHeaderFooter, ShapeStyle, PptxCommentMention, SmartArtLayout, InkPptxElement, ShapePptxElement, MergeShapeOperation, PptxSlideTransition, PptxAction, PptxSlideMaster, PptxModernCommentAuthor, PptxTheme, ParsedTableStyleMap, PptxThemeOption, PptxCustomShow, PptxSection, PptxPresentationProperties, PptxViewProperties, PptxNotesMaster, PptxHandoutMaster, PptxCustomProperty, PptxTagCollection, PptxCoreProperties, PptxAppProperties, PptxEmbeddedFont, MasterViewTab, PptxSlideLayout, PptxHandler, PptxLayoutOption, PptxLayoutPreview, PptxComment, ConnectorPptxElement, PptxThemePreset, PptxThemeColorScheme, PptxThemeFontScheme, PptxData, PptxHandlerSaveOptions, PptxSaveFormat, TextSegment, PptxModifyVerifier } from 'ooxml-core/pptx';
4
+ import { CollaborationWriteBackState } from 'ooxml-core/collab';
4
5
  import * as Y from 'yjs';
5
6
  import { Doc } from 'yjs';
6
7
  import React$1, { Dispatch, SetStateAction, MutableRefObject, RefObject, ForwardedRef } from 'react';
@@ -143,6 +144,12 @@ interface CollaborationContextValue {
143
144
  synced: boolean;
144
145
  /** Manually retry the WebSocket connection after a timeout or error. */
145
146
  retry: () => void;
147
+ /** The local awareness client id, once the session has one. */
148
+ clientId?: number | null;
149
+ /** The owner's write-back status, as the document sync last reported it. */
150
+ writeBack?: CollaborationWriteBackState | undefined;
151
+ /** Called by the document sync with the write-back status (undefined clears it). */
152
+ reportWriteBack?: (state: CollaborationWriteBackState | undefined) => void;
146
153
  }
147
154
  //#endregion
148
155
  //#region src/viewer/types-ui.d.ts
@@ -2243,6 +2250,13 @@ interface UseViewerBuildingBlocksInput extends ViewportFitOptions {
2243
2250
  filePath?: string;
2244
2251
  /** Display name for the toolbar's file-name-aware controls (e.g. title bar hosts build themselves). */
2245
2252
  fileName?: string;
2253
+ /**
2254
+ * Zero-based slide shown after each load, clamped into the deck, as `PowerPointViewer`'s
2255
+ * `initialSlide`. It is applied in the same render that shows the loaded deck, so slide 1 is
2256
+ * never shown first. Changing it later applies to the next load, not the current slide; use
2257
+ * the handle's `goTo` to move an open deck.
2258
+ */
2259
+ initialSlide?: number;
2246
2260
  /** Whether the built-in autosave-to-localStorage recovery timer is active. Defaults to true. */
2247
2261
  autosaveEnabled?: boolean;
2248
2262
  /** Display name used as the author for comments. */
@@ -2546,7 +2560,7 @@ interface UseCollaborativeStateInput {
2546
2560
  canvasWidth: number;
2547
2561
  canvasHeight: number;
2548
2562
  }
2549
- declare function useCollaborativeState({ config, canvasWidth, canvasHeight }: UseCollaborativeStateInput): CollaborationContextValue | null;
2563
+ declare function useCollaborativeState({ config: requested, canvasWidth, canvasHeight }: UseCollaborativeStateInput): CollaborationContextValue | null;
2550
2564
  //#endregion
2551
2565
  //#region src/viewer/hooks/collaboration/useCollaborativeHistory.d.ts
2552
2566
  interface UseCollaborativeHistoryInput {
@@ -2581,7 +2595,7 @@ interface UseYjsDocumentSyncInput {
2581
2595
  setSlides: React.Dispatch<React.SetStateAction<PptxSlide[]>>;
2582
2596
  isConnected: boolean;
2583
2597
  isSynced?: boolean;
2584
- config?: Pick<CollaborationConfig, 'role' | 'onWriteBack' | 'writeBackDebounceMs' | 'externalSession' | 'sessionIntent'>;
2598
+ config?: Pick<CollaborationConfig, 'role' | 'onWriteBack' | 'writeBackDebounceMs' | 'writeBackRetry' | 'externalSession' | 'sessionIntent'>;
2585
2599
  getSourceBytes?: () => Uint8Array | null;
2586
2600
  getSaveOptions?: () => PptxHandlerSaveOptions;
2587
2601
  loadVersion?: number;
@@ -2589,6 +2603,8 @@ interface UseYjsDocumentSyncInput {
2589
2603
  /** External readiness owns this channel together with full-deck writes. */
2590
2604
  livePatcher?: CollaborationLivePatcher;
2591
2605
  onReadOnlyChange?: (readOnly: boolean) => void;
2606
+ /** Receives the owner's write-back status (undefined when the session ends). */
2607
+ onWriteBackStatus?: (state: CollaborationWriteBackState | undefined) => void;
2592
2608
  }
2593
2609
  declare function useYjsDocumentSync(input: UseYjsDocumentSyncInput): void;
2594
2610
  //#endregion