pptx-angular-viewer 2.13.2 → 2.14.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.
@@ -1,5 +1,5 @@
1
1
  import * as pptx_viewer_core from 'pptx-viewer-core';
2
- import { PptxThemePreset, PptxSlide, PptxElement, ShapeStyle, PptxTextWarpPreset, XmlObject, PptxChartSeries, PptxChartData, PptxElementAnimation, PptxAnimationPreset, PptxAnimationSequence, PptxAnimationTrigger, PptxAnimationTimingCurve, PptxAnimationRepeatMode, PptxAnimationDirection, ParsedTableStyleMap, PptxThemeColorScheme, PptxThemeFontScheme, TablePptxElement, PptxSection, OlePptxElement, TextSegment, TextStyle, PptxTransitionType, PptxSlideTransition, SmartArtColorScheme, PptxSmartArtChrome, PptxSmartArtDrawingShape, SmartArtStyle, PptxSmartArtData, PptxEmbeddedFont, SmartArtLayout, AccessibilityIssueSeverity, AccessibilityIssue, AccessibilityIssueType, AccessibilityCheckOptions, ElementActionType, InkPptxElement, PptxComment, PptxChartType, PptxTheme, PptxHandler, PptxData, PptxHeaderFooter, PptxSlideMaster, PptxNotesMaster, PptxHandoutMaster, PptxPresentationProperties, PptxCoreProperties, PptxAppProperties, PptxThemeOption, PptxCustomProperty, PptxTagCollection, ParsedSignature, PptxSaveFormat, PptxTableCell, PptxTableCellStyle, PptxTableRow, PptxTableData, PptxCustomShow, MasterViewTab, SvgExportOptions, Model3DPptxElement, ZoomPptxElement, ChartPptxElement, MediaPptxElement, SmartArtPptxElement, MaterialPresetType, Text3DStyle, BevelPresetType, PptxChartDataLabelOptions, PptxChartAxisType, PptxChartAxisFormatting, PptxChartMarker, PptxChartDataPoint, PptxChartTrendline, PptxChartErrBars, SignatureStatus, ElementAction, PptxImageEffects, MediaBookmark, ColorMapAliasKey, ChartAxisEdit, ChartDataPointLabelEdit, PptxChartLegendPosition, PptxChartStyle, ChartAxisTitleStyleEdit, PptxChartMarkerSymbol, ChartGridlineStyleEdit, PptxSmartArtNode, SmartArtLayoutType, PptxSmartArtNodeStyle, MediaCaptionTrack, PptxMediaType } from 'pptx-viewer-core';
2
+ import { PptxThemePreset, PptxSlide, PptxElement, ShapeStyle, PptxTextWarpPreset, XmlObject, PptxChartSeries, PptxChartData, PptxElementAnimation, PptxAnimationPreset, PptxAnimationSequence, PptxAnimationTrigger, PptxAnimationTimingCurve, PptxAnimationRepeatMode, PptxAnimationDirection, ParsedTableStyleMap, PptxThemeColorScheme, PptxThemeFontScheme, TablePptxElement, PptxSection, OlePptxElement, TextSegment, TextStyle, PptxTransitionType, PptxSlideTransition, SmartArtColorScheme, PptxSmartArtChrome, PptxSmartArtDrawingShape, SmartArtStyle, PptxSmartArtData, PptxEmbeddedFont, SmartArtLayout, AccessibilityIssueSeverity, AccessibilityIssue, AccessibilityIssueType, AccessibilityCheckOptions, ElementActionType, InkPptxElement, PptxComment, PptxChartType, PptxChartBarDirection, PptxTheme, PptxHandler, PptxData, PptxHeaderFooter, PptxSlideMaster, PptxNotesMaster, PptxHandoutMaster, PptxPresentationProperties, PptxCoreProperties, PptxAppProperties, PptxThemeOption, PptxCustomProperty, PptxTagCollection, ParsedSignature, PptxSaveFormat, PptxTableCell, PptxTableCellStyle, PptxTableRow, PptxTableData, PptxCustomShow, MasterViewTab, SvgExportOptions, Model3DPptxElement, ZoomPptxElement, ChartPptxElement, MediaPptxElement, SmartArtPptxElement, MaterialPresetType, Text3DStyle, BevelPresetType, PptxChartDataLabelOptions, PptxChartAxisType, PptxChartAxisFormatting, PptxChartMarker, PptxChartDataPoint, PptxChartTrendline, PptxChartErrBars, SignatureStatus, ElementAction, PptxImageEffects, MediaBookmark, ColorMapAliasKey, ChartAxisEdit, ChartDataPointLabelEdit, PptxChartLegendPosition, PptxChartStyle, ChartAxisTitleStyleEdit, PptxChartMarkerSymbol, ChartGridlineStyleEdit, PptxSmartArtNode, SmartArtLayoutType, PptxSmartArtNodeStyle, MediaCaptionTrack, PptxMediaType } from 'pptx-viewer-core';
3
3
  export { SWITCHABLE_LAYOUT_TYPES, addSmartArtNode, addSmartArtNodeAsChild, chartDataAddCategory, chartDataAddSeries, chartDataChangeType, chartDataRemoveCategory, chartDataRemoveSeries, chartDataUpdatePoint, demoteSmartArtNode, promoteSmartArtNode, removeSmartArtNode, reorderSmartArtNode, switchSmartArtLayout, updateSmartArtNodeText } from 'pptx-viewer-core';
4
4
  import * as _angular_core from '@angular/core';
5
5
  import { Signal, WritableSignal, OnDestroy, OnInit, AfterViewInit, OnChanges, SimpleChanges, InjectionToken, Provider } from '@angular/core';
@@ -591,13 +591,20 @@ interface SvgPatternDef {
591
591
  }
592
592
 
593
593
  /**
594
- * Gradient and pattern OUTLINES (`a:ln/a:gradFill`, `a:ln/a:pattFill`).
594
+ * Stroked SVG OUTLINES: gradient/pattern lines (`a:ln/a:gradFill`,
595
+ * `a:ln/a:pattFill`) and stroke-only ("open") preset geometry.
595
596
  *
596
597
  * Every binding paints a shape's outline as a CSS `border`, which can only take
597
- * a single flat colour. A gradient outline was therefore rendered with the
598
- * parser's averaged `strokeColor` (two-tone came out flat, fade-to-transparent
599
- * came out opaque), and a patterned outline with the pattern's foreground alone,
600
- * so the hatching disappeared entirely.
598
+ * a single flat colour, and can only outline a BOX. That breaks two ways:
599
+ *
600
+ * - A gradient outline was rendered with the parser's averaged `strokeColor`
601
+ * (two-tone came out flat, fade-to-transparent came out opaque), and a
602
+ * patterned outline with the pattern's foreground alone, so the hatching
603
+ * disappeared entirely.
604
+ * - An open preset (`<a:prstGeom prst="line"/>`, the connector family, `arc`,
605
+ * …) has no region to fill and no box to outline, so a CSS border drew a
606
+ * RECTANGLE where PowerPoint draws a line or an arc. See
607
+ * `./stroke-only-preset`.
601
608
  *
602
609
  * CSS has no way to fix either in place - `border-image` ignores `border-radius`
603
610
  * and cannot follow a `clip-path` - so the outline is instead stroked as a real
@@ -608,13 +615,29 @@ interface SvgPatternDef {
608
615
 
609
616
  /** The paint server an outline is stroked with: a gradient or a pattern. */
610
617
  type StrokeOutlinePaint = SvgGradientDef | SvgPatternDef;
618
+ /**
619
+ * One parallel stroke of a compound (`a:ln/@cmpd`) line: its width, and its
620
+ * perpendicular offset from the centre line in element px. A single line is one
621
+ * strand at offset `0`.
622
+ */
623
+ interface StrokeOutlineStrand {
624
+ strokeWidth: number;
625
+ offset: number;
626
+ }
611
627
  /** Everything needed to stroke one shape's outline as an SVG overlay. */
612
628
  interface StrokeOutline {
613
629
  /** Path data in the element's own pixel space (viewBox `0 0 width height`). */
614
630
  d: string;
615
- /** Paint server to define in `<defs>` and reference from the path's `stroke`. */
616
- paint: StrokeOutlinePaint;
631
+ /**
632
+ * Paint server to define in `<defs>`, or `undefined` when the outline is
633
+ * stroked with a flat colour (an open preset with an ordinary solid line).
634
+ */
635
+ paint: StrokeOutlinePaint | undefined;
636
+ /** Ready-to-use SVG `stroke` value: `url(#…)` for a paint server, else a colour. */
637
+ stroke: string;
617
638
  strokeWidth: number;
639
+ /** Parallel strands to emit; one entry unless the line is compound. */
640
+ strands: readonly StrokeOutlineStrand[];
618
641
  /** SVG `stroke-dasharray`, or `undefined` for a solid line. */
619
642
  dashArray: string | undefined;
620
643
  lineCap: 'butt' | 'round' | 'square';
@@ -868,13 +891,22 @@ interface ChartOption<V> {
868
891
  */
869
892
 
870
893
  /**
871
- * Default Office accent palette (accent1-accent6).
872
- * Mirrors `DEFAULT_CHART_PALETTE` from chart-helpers.ts.
894
+ * Default Office accent palette (accent1-accent6 plus the two chart extras).
895
+ *
896
+ * An alias of `DEFAULT_CHART_PALETTE` (chart-helpers.ts), on purpose: the two
897
+ * shared entry points used to carry different fallback palettes, so the same
898
+ * unstyled chart painted Office accents in one binding and a Tailwind-ish set
899
+ * in another depending on which helper its renderer imported.
873
900
  */
874
901
  declare const DEFAULT_PALETTE$1: readonly string[];
875
902
  /** Return the palette colour for an index, preferring a parsed colour palette. */
876
903
  declare function paletteColor(index: number, colorPalette: readonly string[] | undefined): string;
877
- /** Resolve a series' colour, preferring the series' own `color` property. */
904
+ /**
905
+ * Resolve a series' colour, preferring the series' own `color` property, then
906
+ * its marker fill (scatter series often author `a:ln/a:noFill` on the series
907
+ * and put the colour on `c:marker/c:spPr`; the points paint that fill, so the
908
+ * legend swatch must match it), then the palette.
909
+ */
878
910
  declare function seriesColor(series: PptxChartSeries, index: number, colorPalette: readonly string[] | undefined): string;
879
911
  /** Min/max/span of a value axis. */
880
912
  interface ValueRange {
@@ -1116,6 +1148,16 @@ interface ChartViewModel {
1116
1148
  */
1117
1149
  userShapes?: SvgPrimitive[];
1118
1150
  }
1151
+ declare const GRIDLINE_COLOR = "#e2e8f0";
1152
+ declare const AXIS_LABEL_COLOR = "#64748b";
1153
+ declare const ZERO_LINE_COLOR = "#94a3b8";
1154
+ /**
1155
+ * Tick values for a range: one per major unit when the automatic scale supplied
1156
+ * one (it snapped the bounds to whole multiples, so this lands on round numbers
1157
+ * exactly as PowerPoint does), otherwise an even division of the span.
1158
+ * Exported for the transposed (horizontal-bar) axis builder.
1159
+ */
1160
+ declare function axisTickValues(range: ValueRange): number[];
1119
1161
  declare function buildGridlinesAndLabels(range: ValueRange, layout: PlotLayout): {
1120
1162
  gridlines: SvgLine[];
1121
1163
  axisLabels: SvgText[];
@@ -2519,6 +2561,18 @@ interface SectionSlideGroup<TSection extends SectionGroupDescriptor = PptxSectio
2519
2561
  slideIndexes: number[];
2520
2562
  }
2521
2563
 
2564
+ /**
2565
+ * slide-template-types.ts: types for the slide template gallery catalog.
2566
+ *
2567
+ * A slide template is a pre-designed starter slide (title, agenda, quote, ...)
2568
+ * that the New Slide flow can insert. Templates are authored in EMU on the
2569
+ * standard 16:9 canvas (12192000 x 6858000 EMU) and scaled to the target
2570
+ * deck's pixel canvas at build time, so they fit any slide size.
2571
+ */
2572
+
2573
+ /** Discriminated id for every built-in slide template. */
2574
+ type SlideTemplateId = 'title' | 'titleAndContent' | 'sectionHeader' | 'agenda' | 'twoContent' | 'comparison' | 'quote' | 'timeline' | 'keyMetrics' | 'titleOnly' | 'blank' | 'closing';
2575
+
2522
2576
  /**
2523
2577
  * ole-actions.ts - framework-agnostic helpers for the OLE download/open UI.
2524
2578
  *
@@ -2877,6 +2931,10 @@ interface MorphTransitionPlan {
2877
2931
  * carries an entry in {@link MorphTransitionPlan.outgoingAnimations}: it
2878
2932
  * either fades out in place (no counterpart) or glides onto its counterpart,
2879
2933
  * dissolving into it when the appearance changed.
2934
+ *
2935
+ * This is a SUBSET of the outgoing slide: a shape the live stage already
2936
+ * draws identically is left out, because the overlay is opaque above it and
2937
+ * would hide the incoming slide's own arrivals. See `resolveMorphGhostIds`.
2880
2938
  */
2881
2939
  outgoingElements: PptxElement[];
2882
2940
  /** Animation duration in ms, echoed for convenience. */
@@ -4700,10 +4758,19 @@ declare function replaceInSlides(slides: readonly PptxSlide[], query: string, re
4700
4758
 
4701
4759
  /** Severity groups in display order (errors first, then warnings, then tips). */
4702
4760
  declare const SEVERITY_GROUPS: readonly AccessibilityIssueSeverity[];
4703
- /** Human-readable heading for each severity group. */
4761
+ /**
4762
+ * English headings for each severity group.
4763
+ *
4764
+ * The fallback, not the source of truth: {@link SEVERITY_LABEL_KEYS} is what a
4765
+ * binding should feed its translator. These stay exported because they are the
4766
+ * text a caller with no translator gets, and because they are part of the
4767
+ * historical public surface of this module.
4768
+ */
4704
4769
  declare const SEVERITY_LABELS: Record<AccessibilityIssueSeverity, string>;
4705
- /** Human-readable label for each issue type. */
4770
+ /** English label for each issue type; see {@link TYPE_LABEL_KEYS}. */
4706
4771
  declare const TYPE_LABELS: Record<AccessibilityIssueType, string>;
4772
+ /** Resolves a `pptx.*` key to display text. */
4773
+ type AccessibilityTranslate = (key: string) => string;
4707
4774
  /** A severity group with its (non-empty) issues, used for rendering. */
4708
4775
  interface AccessibilityIssueGroup {
4709
4776
  severity: AccessibilityIssueSeverity;
@@ -4727,10 +4794,13 @@ declare function countAccessibilityIssues(issues: readonly AccessibilityIssue[])
4727
4794
  /**
4728
4795
  * Partition issues into non-empty severity groups in display order
4729
4796
  * (errors -> warnings -> tips).
4797
+ *
4798
+ * @param translate - The binding's translator. Omit it to get English, which
4799
+ * is what every existing caller did before the keys moved here.
4730
4800
  */
4731
- declare function groupIssuesBySeverity(issues: readonly AccessibilityIssue[]): AccessibilityIssueGroup[];
4732
- /** Human-readable label for an issue type. */
4733
- declare function issueTypeLabel(type: AccessibilityIssueType): string;
4801
+ declare function groupIssuesBySeverity(issues: readonly AccessibilityIssue[], translate?: AccessibilityTranslate): AccessibilityIssueGroup[];
4802
+ /** Human-readable label for an issue type, translated when a translator is given. */
4803
+ declare function issueTypeLabel(type: AccessibilityIssueType, translate?: AccessibilityTranslate): string;
4734
4804
  /**
4735
4805
  * Stable-ish track key for an issue (issues have no id of their own).
4736
4806
  */
@@ -4981,6 +5051,33 @@ declare function removeCommentFromList(comments: PptxComment[], id: string): Ppt
4981
5051
  */
4982
5052
  declare function toggleCommentResolvedInList(comments: PptxComment[], id: string): PptxComment[] | null;
4983
5053
 
5054
+ /**
5055
+ * Framework-agnostic canvas comment-marker model.
5056
+ *
5057
+ * Builds the numbered marker-dot descriptors every binding draws over the
5058
+ * slide canvas: the position comes from {@link getCommentMarkerPosition}
5059
+ * (explicit comment x/y clamped to the slide, else a 4-column grid fallback),
5060
+ * the label is the 1-based comment number, and the title is
5061
+ * `"<author>: <text>"`, the neutral hook the cross-binding e2e suite reads.
5062
+ *
5063
+ * No framework imports; each binding renders these descriptors inside its
5064
+ * `aria-roledescription="slide"` stage.
5065
+ */
5066
+
5067
+ /** One renderable marker dot. */
5068
+ interface CommentMarkerDescriptor {
5069
+ /** Id of the comment the dot represents (click payload). */
5070
+ commentId: string;
5071
+ /** 1-based comment number rendered inside the dot. */
5072
+ label: string;
5073
+ /** Dot CENTER x, in unscaled slide coordinates. */
5074
+ x: number;
5075
+ /** Dot CENTER y, in unscaled slide coordinates. */
5076
+ y: number;
5077
+ /** Tooltip text: `"<author>: <text>"`. */
5078
+ title: string;
5079
+ }
5080
+
4984
5081
  /**
4985
5082
  * Framework-agnostic touch-gesture state machine for the viewer canvas.
4986
5083
  *
@@ -5020,9 +5117,23 @@ interface TouchGestureCallbacks {
5020
5117
  onLongPress?: (clientX: number, clientY: number) => void;
5021
5118
  }
5022
5119
 
5023
- /** Chart types surfaced in the insert toolbar dropdown, with friendly labels. */
5120
+ /**
5121
+ * Dropdown ids for the insert-chart menu. Distinct from `PptxChartType`
5122
+ * because PowerPoint offers Column (vertical) and Bar (horizontal) as two
5123
+ * entries over the same underlying `'bar'` chart type.
5124
+ */
5125
+ type InsertChartKind = 'column' | 'bar' | 'line' | 'pie' | 'doughnut' | 'area' | 'scatter';
5126
+ /** Chart types surfaced in the insert toolbar dropdown, with translatable labels. */
5024
5127
  interface InsertChartTypeOption {
5128
+ /** Stable dropdown value; also what `createDefaultChartElement` accepts. */
5129
+ id: InsertChartKind;
5130
+ /** The underlying chart family written into `chartData.chartType`. */
5025
5131
  type: PptxChartType;
5132
+ /** Bar direction for the two bar-family entries (`c:barDir`). */
5133
+ barDirection?: PptxChartBarDirection;
5134
+ /** i18n key for the dropdown label. */
5135
+ labelKey: string;
5136
+ /** English fallback label (bindings should prefer {@link labelKey}). */
5026
5137
  label: string;
5027
5138
  }
5028
5139
 
@@ -5037,6 +5148,19 @@ interface MediaTrimRange {
5037
5148
  trimEndMs: number;
5038
5149
  }
5039
5150
 
5151
+ /**
5152
+ * summary-zoom.ts: the framework-neutral tile model for an Office 2016 Summary
5153
+ * Zoom container, consumed by all five bindings.
5154
+ *
5155
+ * Every caption this module produces reaches the DOM (as a tile subtitle or an
5156
+ * `aria-label`), so it takes the binding's translator rather than hard-coding
5157
+ * English. The parameter is optional purely so existing callers keep
5158
+ * compiling; a viewer that omits it renders a French deck's zoom tiles in
5159
+ * English.
5160
+ *
5161
+ * @module render/summary-zoom
5162
+ */
5163
+
5040
5164
  interface SummaryZoomTileView {
5041
5165
  key: string;
5042
5166
  sectionId: string;
@@ -5591,6 +5715,27 @@ interface ViewerOptionsStore {
5591
5715
  /** Reset every option (or one tab-group) back to defaults. */
5592
5716
  reset(group?: ViewerOptionsGroupId): void;
5593
5717
  subscribe(listener: ViewerOptionsListener): () => void;
5718
+ /**
5719
+ * Subscribe to ONE projection of the options, woken only when that
5720
+ * projection changes.
5721
+ *
5722
+ * `subscribe` above wakes on every option change, which in a binding means
5723
+ * the whole options consumer re-renders because the user toggled something
5724
+ * unrelated. A ribbon control that reads `ribbon.hiddenTabIds` should not
5725
+ * care that an autosave interval moved (issue #145).
5726
+ *
5727
+ * IMPORTANT for array/object slices: every write here deep-clones the whole
5728
+ * options object (`cloneViewerOptions`), so a nested array is a NEW array
5729
+ * after ANY change, even one that did not touch it. Under the default
5730
+ * `Object.is` such a selector would fire on every write and buy nothing.
5731
+ * Pass a value equality for those, e.g. the shared `sameArray`.
5732
+ */
5733
+ subscribeSelector<T>(selector: (options: ViewerOptions) => T, listener: (value: T, previous: T) => void, isEqual?: (a: T, b: T) => boolean): () => void;
5734
+ /**
5735
+ * Apply several option writes as ONE notification, so a multi-field
5736
+ * operation costs a single render instead of one per field.
5737
+ */
5738
+ batch(write: () => void): void;
5594
5739
  }
5595
5740
 
5596
5741
  /**
@@ -5885,7 +6030,7 @@ type PptxAiUIMessage = UIMessage;
5885
6030
  * live deck); the viewer-only tools (navigation, deck outline, element/notes
5886
6031
  * readers, table merge) have no MCP counterpart.
5887
6032
  */
5888
- type PptxAiToolName = 'get_deck_overview' | 'get_slide' | 'get_element' | 'get_speaker_notes' | 'find_text' | 'get_theme' | 'go_to_slide' | 'select_elements' | 'merge_tables' | 'get_metadata' | 'get_layouts' | 'find_placeholders' | 'get_presentation_properties' | 'run_accessibility_check' | 'convert_to_markdown' | 'add_element' | 'update_element' | 'delete_elements' | 'arrange_elements' | 'clone_element' | 'set_element_animation' | 'group_elements' | 'ungroup_elements' | 'batch_update_elements' | 'update_element_style' | 'replace_geometry' | 'set_element_lock' | 'manage_hyperlinks' | 'replace_text' | 'manage_comments' | 'update_table_cells' | 'manage_table_structure' | 'create_chart' | 'update_chart' | 'add_chart_series' | 'remove_chart_series' | 'update_chart_series_data' | 'manage_smart_art' | 'apply_template' | 'add_slide' | 'duplicate_slide' | 'delete_slides' | 'reorder_slides' | 'update_slide_properties' | 'set_slide_transition' | 'apply_theme_preset' | 'update_theme_colors' | 'update_theme_fonts' | 'set_canvas_size' | 'update_metadata' | 'manage_sections' | 'update_presentation_properties' | 'apply_layout';
6033
+ type PptxAiToolName = 'get_deck_overview' | 'get_slide' | 'get_element' | 'get_speaker_notes' | 'find_text' | 'get_theme' | 'go_to_slide' | 'select_elements' | 'merge_tables' | 'get_metadata' | 'get_layouts' | 'find_placeholders' | 'get_presentation_properties' | 'run_accessibility_check' | 'convert_to_markdown' | 'export_to_json' | 'add_element' | 'update_element' | 'delete_elements' | 'arrange_elements' | 'clone_element' | 'set_element_animation' | 'group_elements' | 'ungroup_elements' | 'batch_update_elements' | 'update_element_style' | 'replace_geometry' | 'set_element_lock' | 'manage_hyperlinks' | 'replace_text' | 'manage_comments' | 'update_table_cells' | 'manage_table_structure' | 'create_chart' | 'update_chart' | 'add_chart_series' | 'remove_chart_series' | 'update_chart_series_data' | 'manage_smart_art' | 'apply_template' | 'add_slide' | 'duplicate_slide' | 'delete_slides' | 'reorder_slides' | 'update_slide_properties' | 'set_slide_transition' | 'apply_theme_preset' | 'update_theme_colors' | 'update_theme_fonts' | 'set_canvas_size' | 'update_metadata' | 'manage_sections' | 'update_presentation_properties' | 'import_from_json' | 'apply_layout';
5889
6034
  type Resolvable<T> = T | (() => T | Promise<T>);
5890
6035
  /** How the assistant reaches a language model. */
5891
6036
  type PptxAiConnection =
@@ -6729,6 +6874,8 @@ declare class CollaborationService {
6729
6874
  * would otherwise throw inside Yjs and kill the surviving session).
6730
6875
  */
6731
6876
  private connectToken;
6877
+ /** Memoises the awareness -> presence projection so idle heartbeats are dropped. */
6878
+ private readonly projector;
6732
6879
  private readonly refreshPresence;
6733
6880
  constructor();
6734
6881
  connect(config: CollaborationConfig, options?: ConnectOptions): Promise<void>;
@@ -6920,6 +7067,15 @@ declare class EditorStateService {
6920
7067
  * Omitted for a plain blank slide, which is what the button itself does.
6921
7068
  */
6922
7069
  addSlide(afterIndex: number, layoutPath?: string): void;
7070
+ /**
7071
+ * Insert a pre-designed template slide after `afterIndex` (records history).
7072
+ *
7073
+ * The slide is built by the shared catalogue (`buildSlideTemplateSlide`) on
7074
+ * the loaded deck's canvas size and theme scheme, so inserted content matches
7075
+ * the deck's look; without a loaded deck it falls back to the standard
7076
+ * 1280x720 canvas and the Office default scheme.
7077
+ */
7078
+ insertSlideFromTemplate(afterIndex: number, templateId: SlideTemplateId): void;
6923
7079
  /** Delete a slide (keeps at least one; records history). */
6924
7080
  deleteSlide(index: number): void;
6925
7081
  /** Duplicate a slide, inserting the copy after it (records history). */
@@ -7067,6 +7223,11 @@ declare class IsMobileService {
7067
7223
  declare class LoadContentService {
7068
7224
  /** Parsed slides (with image Blob URLs patched in). */
7069
7225
  readonly slides: _angular_core.WritableSignal<PptxSlide[]>;
7226
+ /**
7227
+ * The full parsed presentation (slides patched with resolved image data
7228
+ * URLs), for whole-deck exports such as the `pptx-viewer-json` download.
7229
+ */
7230
+ readonly parsedData: _angular_core.WritableSignal<PptxData | undefined>;
7070
7231
  /** Slide canvas size in pixels. */
7071
7232
  readonly canvasSize: _angular_core.WritableSignal<CanvasSize>;
7072
7233
  /** Resolved presentation theme. */
@@ -7697,6 +7858,13 @@ interface TableCellCommit {
7697
7858
  * Pure helpers live in `table-renderer-helpers.ts` / `table-cell-style.ts`.
7698
7859
  */
7699
7860
  declare class TableRendererComponent {
7861
+ /**
7862
+ * Font stack for table text with no authored typeface, declared on the
7863
+ * `<table>` root. Load-bearing: an unstyled cell otherwise inherits the HOST
7864
+ * chrome's font, so the same table measured a different stack in every
7865
+ * binding's demo. All five bindings declare this same shared default.
7866
+ */
7867
+ readonly defaultTableFontFamily = "\"Segoe UI\", \"Helvetica Neue\", Arial, sans-serif";
7700
7868
  private readonly injector;
7701
7869
  /** Shared cell-selection state (present only inside the editor subtree). */
7702
7870
  private readonly selectionSvc;
@@ -7838,6 +8006,15 @@ declare class ViewerCanvasEditingService {
7838
8006
  onSelectionPaneBringForward(id: string): void;
7839
8007
  onSelectionPaneSendBackward(id: string): void;
7840
8008
  onToggleElementHidden(id: string): void;
8009
+ /**
8010
+ * Commit a selection-pane inline rename through the history-integrated
8011
+ * update path. `name: undefined` clears the authored name (round-trips as a
8012
+ * dropped `cNvPr/@name` on save).
8013
+ */
8014
+ onSelectionPaneRename(event: {
8015
+ id: string;
8016
+ name: string | undefined;
8017
+ }): void;
7841
8018
  /**
7842
8019
  * Commit a table cell's inline text edit. Finds the table element on the
7843
8020
  * active slide, rebuilds its `tableData` with the new cell text, and patches
@@ -8218,6 +8395,12 @@ declare class ViewerFileIOService {
8218
8395
  saveAsPptx(): Promise<void>;
8219
8396
  saveAsPpsx(): Promise<void>;
8220
8397
  saveAsPptm(): Promise<void>;
8398
+ /**
8399
+ * File > Export > Export as JSON: serialise the live deck (templates merged
8400
+ * back in when editing) to `pptx-viewer-json` and trigger the download.
8401
+ * `sourceName` (the host `fileName` input) seeds the download filename.
8402
+ */
8403
+ exportJson(sourceName?: string | null): void;
8221
8404
  /** Bundle the presentation and its usage notes in a shareable ZIP archive. */
8222
8405
  packageForSharing(): Promise<void>;
8223
8406
  /**
@@ -8681,10 +8864,12 @@ declare class ViewerThemeGalleryService {
8681
8864
  }
8682
8865
 
8683
8866
  declare class ViewerZoomService {
8867
+ private readonly store;
8868
+ private readonly zoomSignal;
8684
8869
  /** Current zoom multiplier applied to the main slide canvas (1 = 100%). */
8685
- readonly zoom: _angular_core.WritableSignal<number>;
8870
+ readonly zoom: Signal<number>;
8686
8871
  /** {@link zoom} rounded to a whole percentage for display. */
8687
- readonly zoomPercent: _angular_core.Signal<number>;
8872
+ readonly zoomPercent: Signal<number>;
8688
8873
  /** Jump to an explicit zoom level, clamped by the shared bounds. */
8689
8874
  setZoom(level: number): void;
8690
8875
  zoomIn(): void;
@@ -8993,6 +9178,10 @@ declare class PowerPointViewerComponent {
8993
9178
  protected readonly rootClasses: _angular_core.Signal<string[]>;
8994
9179
  /** Whether the Insert SmartArt gallery dialog is open. */
8995
9180
  protected readonly showSmartArtInsert: _angular_core.WritableSignal<boolean>;
9181
+ /** Whether the Slide Templates gallery dialog is open. */
9182
+ protected readonly showTemplateGallery: _angular_core.WritableSignal<boolean>;
9183
+ /** Deck scheme map for template gallery previews (deck theme colours). */
9184
+ protected readonly templateScheme: _angular_core.Signal<Record<string, string>>;
8996
9185
  /** The single selected element on the active slide (for the inspector). */
8997
9186
  protected readonly selectedElement: _angular_core.Signal<PptxElement | null>;
8998
9187
  /** Whether the AI assistant pane is open (toggled from the ribbon Sparkles). */
@@ -9116,6 +9305,8 @@ declare class PowerPointViewerComponent {
9116
9305
  * cleared for the same reason.
9117
9306
  */
9118
9307
  protected onContextMenuAddComment(): void;
9308
+ /** Canvas marker click: bring the comments panel on screen (same as above). */
9309
+ protected onCommentMarkerClick(): void;
9119
9310
  /** Get the IDs of currently selected elements. */
9120
9311
  getSelectedElementIds(): string[];
9121
9312
  /** Programmatically select elements by their IDs. */
@@ -9194,12 +9385,23 @@ declare class PowerPointViewerComponent {
9194
9385
  onCommentRemove(id: string): void;
9195
9386
  /** Toggle a comment's resolved flag on the active slide. */
9196
9387
  onCommentResolve(id: string): void;
9388
+ /** Append a threaded reply under a top-level comment on the active slide. */
9389
+ onCommentReply(event: {
9390
+ parentId: string;
9391
+ text: string;
9392
+ }): void;
9197
9393
  /**
9198
9394
  * Insert a new SmartArt element built from the dialog's chosen preset + item
9199
9395
  * texts. The element id is left empty so `EditorStateService.addElement`
9200
9396
  * assigns one; the insert is a single undo/redo history entry.
9201
9397
  */
9202
9398
  protected onInsertSmartArt(event: SmartArtInsertEvent): void;
9399
+ /**
9400
+ * Insert the chosen slide template after the active slide (one undoable
9401
+ * history entry via {@link EditorStateService.insertSlideFromTemplate}) and
9402
+ * select the new slide, mirroring React's `handleInsertSlideFromTemplate`.
9403
+ */
9404
+ protected onInsertTemplateSlide(templateId: SlideTemplateId): void;
9203
9405
  /**
9204
9406
  * Editing keyboard shortcuts (only when `canEdit` and not typing in a
9205
9407
  * field or presenting). The decorator must live on the component; the logic
@@ -9627,6 +9829,8 @@ declare class AiChatService {
9627
9829
  send(text: string): void;
9628
9830
  /** Abort the in-flight request. */
9629
9831
  stop(): void;
9832
+ /** Replace the whole transcript (chat-history resume / new chat / clear). */
9833
+ setMessages(messages: PptxAiUIMessage[]): void;
9630
9834
  /** Clear the current error and return to the ready state. */
9631
9835
  clearError(): void;
9632
9836
  /** Accept one staged proposal (applies it as one undoable edit). */
@@ -9647,12 +9851,45 @@ declare class AiChatService {
9647
9851
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AiChatService>;
9648
9852
  }
9649
9853
 
9854
+ interface AiHistoryInitDeps {
9855
+ deckId: string;
9856
+ getMessages(): PptxAiUIMessage[];
9857
+ setMessages(messages: PptxAiUIMessage[]): void;
9858
+ /** Injectable for tests; defaults to the shared IndexedDB-first store. */
9859
+ store?: PptxAiChatStore;
9860
+ }
9861
+ declare class AiHistoryService implements OnDestroy {
9862
+ private controller;
9863
+ /** Saved chats for this deck, newest first. */
9864
+ readonly chats: _angular_core.WritableSignal<readonly PptxAiChatSummary[]>;
9865
+ /** Id the running transcript is (or will be) saved under. */
9866
+ readonly activeChatId: _angular_core.WritableSignal<string>;
9867
+ /** Whether the saved-chat dropdown is open. */
9868
+ readonly menuOpen: _angular_core.WritableSignal<boolean>;
9869
+ /** Component-level provider teardown: cancel any pending debounced save. */
9870
+ ngOnDestroy(): void;
9871
+ /** Bootstrap the controller. Idempotent: only the first call takes effect. */
9872
+ init(deps: AiHistoryInitDeps): void;
9873
+ /** Debounced (800ms) save of the current transcript; empty ones are skipped. */
9874
+ notifyMessagesChanged(): void;
9875
+ toggleMenu(): void;
9876
+ newChat(): void;
9877
+ resumeChat(id: string): Promise<void>;
9878
+ deleteChat(id: string): Promise<void>;
9879
+ clearCurrent(): void;
9880
+ private syncActiveId;
9881
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AiHistoryService, never>;
9882
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AiHistoryService>;
9883
+ }
9884
+
9650
9885
  declare class AiChatPanelComponent {
9651
9886
  readonly bridge: _angular_core.InputSignal<PptxAiBridge>;
9652
9887
  readonly config: _angular_core.InputSignal<PptxAiConfig>;
9653
9888
  readonly panelWidth: _angular_core.InputSignal<number | undefined>;
9654
9889
  readonly closed: _angular_core.OutputEmitterRef<void>;
9655
9890
  protected readonly chat: AiChatService;
9891
+ /** Chat-history persistence + the "Chats" resume menu (panel-scoped). */
9892
+ protected readonly history: AiHistoryService;
9656
9893
  /** Shared panel scope + on-canvas highlight store (provided by the viewer). */
9657
9894
  protected readonly store: AiPanelStore;
9658
9895
  constructor();
@@ -9797,6 +10034,19 @@ declare class AiFocusBarComponent {
9797
10034
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AiFocusBarComponent, "pptx-ai-focus-bar", never, { "slides": { "alias": "slides"; "required": true; "isSignal": true; }; }, { "sendDirective": "sendDirective"; }, never, never, true, never>;
9798
10035
  }
9799
10036
 
10037
+ declare class AiHistoryMenuComponent {
10038
+ /** Whether the clear-chat action is enabled (transcript non-empty). */
10039
+ readonly canClear: _angular_core.InputSignal<boolean>;
10040
+ protected readonly history: AiHistoryService;
10041
+ private readonly elementRef;
10042
+ protected resume(id: string): void;
10043
+ protected deleteChat(id: string): void;
10044
+ /** Close the dropdown on any outside click. */
10045
+ protected onDocumentMouseDown(event: MouseEvent): void;
10046
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AiHistoryMenuComponent, never>;
10047
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AiHistoryMenuComponent, "pptx-ai-history-menu", never, { "canClear": { "alias": "canClear"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
10048
+ }
10049
+
9800
10050
  /** One tool invocation captured with its full technical detail. */
9801
10051
  interface AiLogToolCall {
9802
10052
  toolName: string;
@@ -10109,6 +10359,7 @@ declare class RibbonComponent {
10109
10359
  readonly exportPdf: _angular_core.OutputEmitterRef<void>;
10110
10360
  readonly exportGif: _angular_core.OutputEmitterRef<void>;
10111
10361
  readonly exportVideo: _angular_core.OutputEmitterRef<void>;
10362
+ readonly exportJson: _angular_core.OutputEmitterRef<void>;
10112
10363
  readonly copySlideAsImage: _angular_core.OutputEmitterRef<void>;
10113
10364
  readonly replace: _angular_core.OutputEmitterRef<void>;
10114
10365
  /** Design/Transitions/Animations tabs want the right-docked Inspector panel opened. */
@@ -10136,6 +10387,8 @@ declare class RibbonComponent {
10136
10387
  readonly toggleEyedropper: _angular_core.OutputEmitterRef<void>;
10137
10388
  /** "SmartArt" in the Insert tab; the host opens the gallery dialog and does the insert. */
10138
10389
  readonly openSmartArtDialog: _angular_core.OutputEmitterRef<void>;
10390
+ /** "Slide Templates" in the Home tab; the host opens the gallery dialog and does the insert. */
10391
+ readonly openTemplateGallery: _angular_core.OutputEmitterRef<void>;
10139
10392
  /** Emitted when the user clicks "Equation" in the Insert tab (opens the editor). */
10140
10393
  readonly openEquationDialog: _angular_core.OutputEmitterRef<void>;
10141
10394
  /** Emitted when the user clicks "Set Up Show" in the Slide Show tab. */
@@ -10164,7 +10417,7 @@ declare class RibbonComponent {
10164
10417
  /** Forward the Review proofing toggle to the viewer-owned live state. */
10165
10418
  protected setSpellCheck(enabled: boolean): void;
10166
10419
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RibbonComponent, never>;
10167
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonComponent, "pptx-ribbon", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "zoomPercent": { "alias": "zoomPercent"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; "exporting": { "alias": "exporting"; "required": false; "isSignal": true; }; "hasMacros": { "alias": "hasMacros"; "required": false; "isSignal": true; }; "showGrid": { "alias": "showGrid"; "required": false; "isSignal": true; }; "showRulers": { "alias": "showRulers"; "required": false; "isSignal": true; }; "showGuides": { "alias": "showGuides"; "required": false; "isSignal": true; }; "snapToGrid": { "alias": "snapToGrid"; "required": false; "isSignal": true; }; "snapToShape": { "alias": "snapToShape"; "required": false; "isSignal": true; }; "eyedropperActive": { "alias": "eyedropperActive"; "required": false; "isSignal": true; }; "themeGalleryOpen": { "alias": "themeGalleryOpen"; "required": false; "isSignal": true; }; "sidebarCollapsed": { "alias": "sidebarCollapsed"; "required": false; "isSignal": true; }; "inspectorOpen": { "alias": "inspectorOpen"; "required": false; "isSignal": true; }; "commentsOpen": { "alias": "commentsOpen"; "required": false; "isSignal": true; }; "commentCount": { "alias": "commentCount"; "required": false; "isSignal": true; }; "findOpen": { "alias": "findOpen"; "required": false; "isSignal": true; }; "collabConnected": { "alias": "collabConnected"; "required": false; "isSignal": true; }; "connectedCount": { "alias": "connectedCount"; "required": false; "isSignal": true; }; "spellCheckEnabled": { "alias": "spellCheckEnabled"; "required": false; "isSignal": true; }; "showSubtitles": { "alias": "showSubtitles"; "required": false; "isSignal": true; }; "hiddenActions": { "alias": "hiddenActions"; "required": false; "isSignal": true; }; "aiEnabled": { "alias": "aiEnabled"; "required": false; "isSignal": true; }; "aiPanelOpen": { "alias": "aiPanelOpen"; "required": false; "isSignal": true; }; "accountAuth": { "alias": "accountAuth"; "required": false; "isSignal": true; }; "activeSlideHidden": { "alias": "activeSlideHidden"; "required": false; "isSignal": true; }; }, { "prev": "prev"; "next": "next"; "zoomIn": "zoomIn"; "zoomOut": "zoomOut"; "zoomReset": "zoomReset"; "find": "find"; "present": "present"; "presenter": "presenter"; "record": "record"; "presentFromBeginning": "presentFromBeginning"; "rehearseTimings": "rehearseTimings"; "toggleSubtitles": "toggleSubtitles"; "openSubtitleSettings": "openSubtitleSettings"; "recordFromBeginning": "recordFromBeginning"; "recordFromCurrent": "recordFromCurrent"; "spellCheckChange": "spellCheckChange"; "share": "share"; "broadcast": "broadcast"; "openFile": "openFile"; "openRecentFile": "openRecentFile"; "createPresentation": "createPresentation"; "save": "save"; "savePpsx": "savePpsx"; "savePptm": "savePptm"; "packageForSharing": "packageForSharing"; "toggleSidebar": "toggleSidebar"; "toggleAiPanel": "toggleAiPanel"; "signatures": "signatures"; "info": "info"; "print": "print"; "comments": "comments"; "a11y": "a11y"; "link": "link"; "openSorter": "openSorter"; "openReadingView": "openReadingView"; "openOutlineView": "openOutlineView"; "openMasterView": "openMasterView"; "toggleNotes": "toggleNotes"; "toggleFormatPainter": "toggleFormatPainter"; "exportPng": "exportPng"; "exportPdf": "exportPdf"; "exportGif": "exportGif"; "exportVideo": "exportVideo"; "copySlideAsImage": "copySlideAsImage"; "replace": "replace"; "toggleInspector": "toggleInspector"; "drawToolChange": "drawToolChange"; "toggleThemeGallery": "toggleThemeGallery"; "toggleGrid": "toggleGrid"; "toggleRulers": "toggleRulers"; "toggleGuides": "toggleGuides"; "toggleSelectionPane": "toggleSelectionPane"; "openCustomShows": "openCustomShows"; "toggleSnapToGrid": "toggleSnapToGrid"; "toggleSnapToShape": "toggleSnapToShape"; "addGuide": "addGuide"; "zoomToFit": "zoomToFit"; "toggleEyedropper": "toggleEyedropper"; "openSmartArtDialog": "openSmartArtDialog"; "openEquationDialog": "openEquationDialog"; "openSetUpSlideShow": "openSetUpSlideShow"; "toggleHideSlide": "toggleHideSlide"; "openCompare": "openCompare"; "openPassword": "openPassword"; "openFontEmbedding": "openFontEmbedding"; "openVersionHistory": "openVersionHistory"; "openShortcuts": "openShortcuts"; "openSettings": "openSettings"; }, never, never, true, never>;
10420
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonComponent, "pptx-ribbon", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "zoomPercent": { "alias": "zoomPercent"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; "exporting": { "alias": "exporting"; "required": false; "isSignal": true; }; "hasMacros": { "alias": "hasMacros"; "required": false; "isSignal": true; }; "showGrid": { "alias": "showGrid"; "required": false; "isSignal": true; }; "showRulers": { "alias": "showRulers"; "required": false; "isSignal": true; }; "showGuides": { "alias": "showGuides"; "required": false; "isSignal": true; }; "snapToGrid": { "alias": "snapToGrid"; "required": false; "isSignal": true; }; "snapToShape": { "alias": "snapToShape"; "required": false; "isSignal": true; }; "eyedropperActive": { "alias": "eyedropperActive"; "required": false; "isSignal": true; }; "themeGalleryOpen": { "alias": "themeGalleryOpen"; "required": false; "isSignal": true; }; "sidebarCollapsed": { "alias": "sidebarCollapsed"; "required": false; "isSignal": true; }; "inspectorOpen": { "alias": "inspectorOpen"; "required": false; "isSignal": true; }; "commentsOpen": { "alias": "commentsOpen"; "required": false; "isSignal": true; }; "commentCount": { "alias": "commentCount"; "required": false; "isSignal": true; }; "findOpen": { "alias": "findOpen"; "required": false; "isSignal": true; }; "collabConnected": { "alias": "collabConnected"; "required": false; "isSignal": true; }; "connectedCount": { "alias": "connectedCount"; "required": false; "isSignal": true; }; "spellCheckEnabled": { "alias": "spellCheckEnabled"; "required": false; "isSignal": true; }; "showSubtitles": { "alias": "showSubtitles"; "required": false; "isSignal": true; }; "hiddenActions": { "alias": "hiddenActions"; "required": false; "isSignal": true; }; "aiEnabled": { "alias": "aiEnabled"; "required": false; "isSignal": true; }; "aiPanelOpen": { "alias": "aiPanelOpen"; "required": false; "isSignal": true; }; "accountAuth": { "alias": "accountAuth"; "required": false; "isSignal": true; }; "activeSlideHidden": { "alias": "activeSlideHidden"; "required": false; "isSignal": true; }; }, { "prev": "prev"; "next": "next"; "zoomIn": "zoomIn"; "zoomOut": "zoomOut"; "zoomReset": "zoomReset"; "find": "find"; "present": "present"; "presenter": "presenter"; "record": "record"; "presentFromBeginning": "presentFromBeginning"; "rehearseTimings": "rehearseTimings"; "toggleSubtitles": "toggleSubtitles"; "openSubtitleSettings": "openSubtitleSettings"; "recordFromBeginning": "recordFromBeginning"; "recordFromCurrent": "recordFromCurrent"; "spellCheckChange": "spellCheckChange"; "share": "share"; "broadcast": "broadcast"; "openFile": "openFile"; "openRecentFile": "openRecentFile"; "createPresentation": "createPresentation"; "save": "save"; "savePpsx": "savePpsx"; "savePptm": "savePptm"; "packageForSharing": "packageForSharing"; "toggleSidebar": "toggleSidebar"; "toggleAiPanel": "toggleAiPanel"; "signatures": "signatures"; "info": "info"; "print": "print"; "comments": "comments"; "a11y": "a11y"; "link": "link"; "openSorter": "openSorter"; "openReadingView": "openReadingView"; "openOutlineView": "openOutlineView"; "openMasterView": "openMasterView"; "toggleNotes": "toggleNotes"; "toggleFormatPainter": "toggleFormatPainter"; "exportPng": "exportPng"; "exportPdf": "exportPdf"; "exportGif": "exportGif"; "exportVideo": "exportVideo"; "exportJson": "exportJson"; "copySlideAsImage": "copySlideAsImage"; "replace": "replace"; "toggleInspector": "toggleInspector"; "drawToolChange": "drawToolChange"; "toggleThemeGallery": "toggleThemeGallery"; "toggleGrid": "toggleGrid"; "toggleRulers": "toggleRulers"; "toggleGuides": "toggleGuides"; "toggleSelectionPane": "toggleSelectionPane"; "openCustomShows": "openCustomShows"; "toggleSnapToGrid": "toggleSnapToGrid"; "toggleSnapToShape": "toggleSnapToShape"; "addGuide": "addGuide"; "zoomToFit": "zoomToFit"; "toggleEyedropper": "toggleEyedropper"; "openSmartArtDialog": "openSmartArtDialog"; "openTemplateGallery": "openTemplateGallery"; "openEquationDialog": "openEquationDialog"; "openSetUpSlideShow": "openSetUpSlideShow"; "toggleHideSlide": "toggleHideSlide"; "openCompare": "openCompare"; "openPassword": "openPassword"; "openFontEmbedding": "openFontEmbedding"; "openVersionHistory": "openVersionHistory"; "openShortcuts": "openShortcuts"; "openSettings": "openSettings"; }, never, never, true, never>;
10168
10421
  }
10169
10422
 
10170
10423
  /** The eight resize-handle positions around a selection box. */
@@ -10397,6 +10650,11 @@ declare class SlideCanvasComponent implements SlideContext {
10397
10650
  * True only for the live presentation stage: slide-content media autoplays.
10398
10651
  * Left false for thumbnails, the sorter and the editor canvas so their media
10399
10652
  * stays quiet (the template layer never autoplays regardless).
10653
+ *
10654
+ * A presenting stage also carries the show contract: the shared
10655
+ * `data-pptx-presenting` marker (stamped by
10656
+ * `applyRenderedElementAccessibility`) plus `aria-roledescription="slide"`,
10657
+ * so a running show is discoverable the same way in all five bindings.
10400
10658
  */
10401
10659
  readonly presenting: _angular_core.InputSignal<boolean>;
10402
10660
  /** Ids of currently-selected elements (drawn with a selection outline). */
@@ -10924,6 +11182,16 @@ declare class ElementRendererComponent {
10924
11182
  * separate lightweight renderer).
10925
11183
  */
10926
11184
  readonly interactive: _angular_core.InputSignal<boolean>;
11185
+ /**
11186
+ * Emit the `data-pptx-element` marker even though `interactive` is false.
11187
+ * The slide canvas sets this for template (master/layout) elements, which are
11188
+ * interaction-locked outside edit-template mode but are still rendered slide
11189
+ * elements as far as the contract is concerned (the marker means "carries the
11190
+ * element contract", not "editable right now"), matching the other bindings.
11191
+ */
11192
+ readonly marked: _angular_core.InputSignal<boolean>;
11193
+ /** Whether this element's root carries `data-pptx-element="true"`. */
11194
+ readonly elementMarked: _angular_core.Signal<boolean>;
10927
11195
  /**
10928
11196
  * True only on the live presentation stage; threaded to the media renderer so
10929
11197
  * a slide's media autoplays when the slide becomes active (and to group
@@ -10986,9 +11254,12 @@ declare class ElementRendererComponent {
10986
11254
  * DAG fill-overlay tint (colour + blend mode) painted as a separate blended
10987
11255
  * layer over the shape. Undefined when the element has no fill overlay.
10988
11256
  */
10989
- /** Gradient / pattern `a:ln` outline, stroked as an SVG path over the element. */
11257
+ /**
11258
+ * Stroked SVG outline: a gradient / pattern `a:ln`, or a stroke-only ("open")
11259
+ * preset such as `line` or `arc`, neither of which a CSS border can paint.
11260
+ */
10990
11261
  readonly gradientOutline: _angular_core.Signal<StrokeOutline | undefined>;
10991
- /** viewBox in the element's own pixel space, matching the outline path data. */
11262
+ /** viewBox in the element's PAINTED box, which the path data is authored in. */
10992
11263
  readonly outlineViewBox: _angular_core.Signal<string>;
10993
11264
  readonly fillOverlay: _angular_core.Signal<FillOverlayCss | undefined>;
10994
11265
  /**
@@ -11050,7 +11321,7 @@ declare class ElementRendererComponent {
11050
11321
  readonly hasText: _angular_core.Signal<boolean>;
11051
11322
  readonly placeholderLabel: _angular_core.Signal<any>;
11052
11323
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ElementRendererComponent, never>;
11053
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ElementRendererComponent, "pptx-element-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "mediaDataUrls": { "alias": "mediaDataUrls"; "required": false; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "obstacles": { "alias": "obstacles"; "required": false; "isSignal": true; }; "canvasWidth": { "alias": "canvasWidth"; "required": false; "isSignal": true; }; "canvasHeight": { "alias": "canvasHeight"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "presenting": { "alias": "presenting"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "fieldContext": { "alias": "fieldContext"; "required": false; "isSignal": true; }; "slideElements": { "alias": "slideElements"; "required": false; "isSignal": true; }; "editTemplateMode": { "alias": "editTemplateMode"; "required": false; "isSignal": true; }; "parentGroupFill": { "alias": "parentGroupFill"; "required": false; "isSignal": true; }; }, { "cellCommit": "cellCommit"; "tableChange": "tableChange"; }, never, never, true, never>;
11324
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ElementRendererComponent, "pptx-element-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "mediaDataUrls": { "alias": "mediaDataUrls"; "required": false; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "obstacles": { "alias": "obstacles"; "required": false; "isSignal": true; }; "canvasWidth": { "alias": "canvasWidth"; "required": false; "isSignal": true; }; "canvasHeight": { "alias": "canvasHeight"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "marked": { "alias": "marked"; "required": false; "isSignal": true; }; "presenting": { "alias": "presenting"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "fieldContext": { "alias": "fieldContext"; "required": false; "isSignal": true; }; "slideElements": { "alias": "slideElements"; "required": false; "isSignal": true; }; "editTemplateMode": { "alias": "editTemplateMode"; "required": false; "isSignal": true; }; "parentGroupFill": { "alias": "parentGroupFill"; "required": false; "isSignal": true; }; }, { "cellCommit": "cellCommit"; "tableChange": "tableChange"; }, never, never, true, never>;
11054
11325
  }
11055
11326
 
11056
11327
  /**
@@ -11085,6 +11356,8 @@ declare class ConnectorRendererComponent {
11085
11356
  readonly canvasHeight: _angular_core.InputSignal<number>;
11086
11357
  /** See ElementRenderer.interactive: gates the data-pptx-element contract attr. */
11087
11358
  readonly interactive: _angular_core.InputSignal<boolean>;
11359
+ /** Keep the data-pptx-element marker on interaction-locked template elements. */
11360
+ readonly marked: _angular_core.InputSignal<boolean>;
11088
11361
  /**
11089
11362
  * Native-animation playback state. When an active `p:animClr` colour animation
11090
11363
  * targets the stroke (`animatesStroke`), the SVG stroke + arrowheads paint
@@ -11118,7 +11391,7 @@ declare class ConnectorRendererComponent {
11118
11391
  readonly connectorSegments: _angular_core.Signal<TextSegment[] | undefined>;
11119
11392
  readonly connectorTextStyle: _angular_core.Signal<TextStyle | undefined>;
11120
11393
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConnectorRendererComponent, never>;
11121
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConnectorRendererComponent, "pptx-connector-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "obstacles": { "alias": "obstacles"; "required": false; "isSignal": true; }; "canvasWidth": { "alias": "canvasWidth"; "required": false; "isSignal": true; }; "canvasHeight": { "alias": "canvasHeight"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "animationState": { "alias": "animationState"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11394
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConnectorRendererComponent, "pptx-connector-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "obstacles": { "alias": "obstacles"; "required": false; "isSignal": true; }; "canvasWidth": { "alias": "canvasWidth"; "required": false; "isSignal": true; }; "canvasHeight": { "alias": "canvasHeight"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "marked": { "alias": "marked"; "required": false; "isSignal": true; }; "animationState": { "alias": "animationState"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11122
11395
  }
11123
11396
  /** One parallel stroke of a (possibly compound) connector line. */
11124
11397
  interface ConnectorStrand {
@@ -11924,6 +12197,8 @@ declare class Model3DRendererComponent implements OnDestroy {
11924
12197
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<Model3DRendererComponent, "pptx-model3d-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "mediaDataUrls": { "alias": "mediaDataUrls"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "markElement": { "alias": "markElement"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11925
12198
  }
11926
12199
 
12200
+ /** Resolves a `pptx.*` key, interpolating `{{...}}` params when given. */
12201
+ type ZoomTranslate = (key: string, params?: Record<string, string>) => string;
11927
12202
  /**
11928
12203
  * Pure helpers for `ZoomRendererComponent`.
11929
12204
  *
@@ -11972,8 +12247,13 @@ interface ZoomViewModel {
11972
12247
  *
11973
12248
  * Returns sensible defaults for non-zoom elements (all derived strings are
11974
12249
  * empty/fallback values, `zoom` is `undefined`).
12250
+ *
12251
+ * @param translate - The binding's translator. Every string this builds ends up
12252
+ * in the DOM as a badge, a tile caption or an `aria-label`, and this helper
12253
+ * spelled all of them in English until the keys existed; omit it only in the
12254
+ * unit tests that assert the English wording.
11975
12255
  */
11976
- declare function buildZoomViewModel(element: PptxElement, targetInfo?: ZoomTargetInfo): ZoomViewModel;
12256
+ declare function buildZoomViewModel(element: PptxElement, targetInfo?: ZoomTargetInfo, translate?: ZoomTranslate): ZoomViewModel;
11977
12257
  /**
11978
12258
  * Resolve a zoom element's zero-based target slide index, or `0` for non-zoom
11979
12259
  * elements. Used to look the target slide up before building the view model.
@@ -12033,6 +12313,12 @@ declare class ZoomRendererComponent {
12033
12313
  * stays on the neutral grey / index / section-GUID placeholder.
12034
12314
  */
12035
12315
  private readonly zoomTarget;
12316
+ private readonly translate;
12317
+ /**
12318
+ * Adapter onto the shared/pure builders, which take a plain key + params
12319
+ * function rather than an Angular service.
12320
+ */
12321
+ private readonly translator;
12036
12322
  readonly vm: _angular_core.Signal<ZoomViewModel>;
12037
12323
  readonly summaryView: _angular_core.Signal<SummaryZoomView | undefined>;
12038
12324
  /**
@@ -12546,8 +12832,19 @@ declare class PresentationOverlayComponent implements OnInit {
12546
12832
  protected readonly currentSlide: _angular_core.Signal<PptxSlide | undefined>;
12547
12833
  /** Zoom level that fits the canvas into the current viewport. */
12548
12834
  protected readonly zoom: _angular_core.Signal<number>;
12549
- /** Centre the scaled slide in the viewport. */
12835
+ /**
12836
+ * Centre the scaled slide in the viewport. Numeric offsets, deliberately not
12837
+ * a `translate(-50%, -50%)`: see {@link presentationStageStyle} for why a
12838
+ * transform here broke the blackboard's ink layering.
12839
+ */
12550
12840
  protected readonly stageContainerStyle: _angular_core.Signal<Record<string, string>>;
12841
+ /**
12842
+ * Stacking level of the local ink overlay: raised above the blackout sheet
12843
+ * while the screen is blanked (PowerPoint's blackboard), 60 otherwise. The
12844
+ * decision lives in shared `annotationOverlayZIndex`; it only works because
12845
+ * the stage above is no longer a stacking context.
12846
+ */
12847
+ protected readonly annotationOverlayZ: _angular_core.Signal<number>;
12551
12848
  /**
12552
12849
  * Epoch ms the show opened, feeding the toolbar's elapsed readout. Captured
12553
12850
  * at construction because this overlay is created exactly when the show
@@ -12888,6 +13185,10 @@ declare class SlideDefaultInspectorComponent {
12888
13185
  readonly commentAdd: _angular_core.OutputEmitterRef<string>;
12889
13186
  readonly commentRemove: _angular_core.OutputEmitterRef<string>;
12890
13187
  readonly commentResolve: _angular_core.OutputEmitterRef<string>;
13188
+ readonly commentReply: _angular_core.OutputEmitterRef<{
13189
+ parentId: string;
13190
+ text: string;
13191
+ }>;
12891
13192
  protected readonly editor: EditorStateService;
12892
13193
  protected readonly canvasEditing: ViewerCanvasEditingService;
12893
13194
  protected readonly inspectorPanel: ViewerInspectorPanelService;
@@ -12902,7 +13203,7 @@ declare class SlideDefaultInspectorComponent {
12902
13203
  */
12903
13204
  protected readonly layerRows: _angular_core.Signal<LayerRow[]>;
12904
13205
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SlideDefaultInspectorComponent, never>;
12905
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SlideDefaultInspectorComponent, "pptx-slide-default-inspector", never, { "slideIndex": { "alias": "slideIndex"; "required": true; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "comments": { "alias": "comments"; "required": false; "isSignal": true; }; }, { "commentAdd": "commentAdd"; "commentRemove": "commentRemove"; "commentResolve": "commentResolve"; }, never, never, true, never>;
13206
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SlideDefaultInspectorComponent, "pptx-slide-default-inspector", never, { "slideIndex": { "alias": "slideIndex"; "required": true; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "comments": { "alias": "comments"; "required": false; "isSignal": true; }; }, { "commentAdd": "commentAdd"; "commentRemove": "commentRemove"; "commentResolve": "commentResolve"; "commentReply": "commentReply"; }, never, never, true, never>;
12906
13207
  }
12907
13208
 
12908
13209
  declare class PresentationPropertiesPanelComponent {
@@ -13198,7 +13499,7 @@ declare class TextAdvancedPanelComponent {
13198
13499
  /** Exposed option arrays for the template. */
13199
13500
  protected readonly alignOptions: [NonNullable<"center" | "left" | "right" | "justify" | "justLow" | "dist" | "thaiDist" | undefined>, string][];
13200
13501
  protected readonly vAlignOptions: [NonNullable<"top" | "bottom" | "middle" | undefined>, string][];
13201
- protected readonly textDirectionOptions: [NonNullable<"vertical" | "horizontal" | "eaVert" | "wordArtVert" | "wordArtVertRtl" | "mongolianVert" | "vertical270" | undefined>, string][];
13502
+ protected readonly textDirectionOptions: [NonNullable<"eaVert" | "wordArtVert" | "wordArtVertRtl" | "mongolianVert" | "horizontal" | "vertical" | "vertical270" | undefined>, string][];
13202
13503
  protected alignLabel(align: NonNullable<TextStyle['align']>): string;
13203
13504
  protected onAlignChange(align: NonNullable<TextStyle['align']>): void;
13204
13505
  protected onVAlignChange(event: Event): void;
@@ -14576,6 +14877,25 @@ declare class EquationRendererComponent {
14576
14877
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EquationRendererComponent, "pptx-equation-renderer", never, { "equationXml": { "alias": "equationXml"; "required": true; "isSignal": true; }; "equationNumber": { "alias": "equationNumber"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
14577
14878
  }
14578
14879
 
14880
+ declare class CommentMarkersOverlayComponent {
14881
+ /** The active slide's comments (already filtered by the host). */
14882
+ readonly comments: _angular_core.InputSignal<PptxComment[]>;
14883
+ /** Unscaled slide canvas size, in px. */
14884
+ readonly canvasSize: _angular_core.InputSignal<{
14885
+ width: number;
14886
+ height: number;
14887
+ }>;
14888
+ /** Emits the clicked comment's id (the host opens its comments panel). */
14889
+ readonly markerClick: _angular_core.OutputEmitterRef<string>;
14890
+ private readonly translate;
14891
+ protected readonly size = 20;
14892
+ protected readonly half: number;
14893
+ protected readonly markers: _angular_core.Signal<CommentMarkerDescriptor[]>;
14894
+ protected onMarkerClick(event: MouseEvent, commentId: string): void;
14895
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CommentMarkersOverlayComponent, never>;
14896
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CommentMarkersOverlayComponent, "pptx-comment-markers-overlay", never, { "comments": { "alias": "comments"; "required": false; "isSignal": true; }; "canvasSize": { "alias": "canvasSize"; "required": true; "isSignal": true; }; }, { "markerClick": "markerClick"; }, never, never, true, never>;
14897
+ }
14898
+
14579
14899
  declare class CommentsPanelComponent {
14580
14900
  /** The active slide's comments (already filtered to the active slide). */
14581
14901
  readonly comments: _angular_core.InputSignal<PptxComment[]>;
@@ -14588,15 +14908,33 @@ declare class CommentsPanelComponent {
14588
14908
  readonly remove: _angular_core.OutputEmitterRef<string>;
14589
14909
  /** Emits the id of a comment whose resolved flag should toggle. */
14590
14910
  readonly resolve: _angular_core.OutputEmitterRef<string>;
14911
+ /** Emits the parent comment id + trimmed text of a threaded reply. */
14912
+ readonly reply: _angular_core.OutputEmitterRef<{
14913
+ parentId: string;
14914
+ text: string;
14915
+ }>;
14591
14916
  /** Current text typed into the compose textarea. */
14592
14917
  readonly draft: _angular_core.WritableSignal<string>;
14593
14918
  /** Whether the draft has non-whitespace content (enables the submit button). */
14594
14919
  readonly canAdd: _angular_core.Signal<boolean>;
14920
+ /** Id of the comment whose reply composer is open (one at a time). */
14921
+ readonly replyingTo: _angular_core.WritableSignal<string | null>;
14922
+ /** Current text typed into the open reply composer. */
14923
+ readonly replyDraft: _angular_core.WritableSignal<string>;
14924
+ /** Whether the reply draft has content (enables the reply submit button). */
14925
+ readonly canReply: _angular_core.Signal<boolean>;
14595
14926
  onDraftInput(event: Event): void;
14596
14927
  submit(event: Event): void;
14928
+ /** Localized reply-composer placeholder ("Reply to <author>..."). */
14929
+ replyPlaceholder(comment: PptxComment): string;
14930
+ /** Open the reply composer under `parentId` (closing any other composer). */
14931
+ startReply(parentId: string): void;
14932
+ cancelReply(): void;
14933
+ onReplyInput(event: Event): void;
14934
+ submitReply(parentId: string): void;
14597
14935
  formatTimestamp(value: string | undefined): string;
14598
14936
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CommentsPanelComponent, never>;
14599
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<CommentsPanelComponent, "pptx-comments-panel", never, { "comments": { "alias": "comments"; "required": false; "isSignal": true; }; "authorName": { "alias": "authorName"; "required": false; "isSignal": true; }; }, { "add": "add"; "remove": "remove"; "resolve": "resolve"; }, never, never, true, never>;
14937
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CommentsPanelComponent, "pptx-comments-panel", never, { "comments": { "alias": "comments"; "required": false; "isSignal": true; }; "authorName": { "alias": "authorName"; "required": false; "isSignal": true; }; }, { "add": "add"; "remove": "remove"; "resolve": "resolve"; "reply": "reply"; }, never, never, true, never>;
14600
14938
  }
14601
14939
 
14602
14940
  declare class CommentsService {
@@ -14743,7 +15081,14 @@ declare class AccessibilityPanelComponent {
14743
15081
  readonly issues: _angular_core.InputSignal<AccessibilityIssue[]>;
14744
15082
  /** Emits the issue's zero-based slide index when an issue is clicked. */
14745
15083
  readonly selectSlide: _angular_core.OutputEmitterRef<number>;
14746
- /** Non-empty severity groups in display order. */
15084
+ private readonly translate;
15085
+ /**
15086
+ * Non-empty severity groups in display order.
15087
+ *
15088
+ * The headings are translated through the shared key map rather than taken
15089
+ * from the module's English constants: this panel rendered "Errors" to a
15090
+ * French user while Vue's rendered "Erreurs" from the same aggregation.
15091
+ */
14747
15092
  readonly groups: _angular_core.Signal<AccessibilityIssueGroup[]>;
14748
15093
  /** True when there is at least one issue. */
14749
15094
  readonly hasIssues: _angular_core.Signal<boolean>;
@@ -15801,7 +16146,7 @@ declare class AccountPageComponent {
15801
16146
  readonly accountAuth: _angular_core.InputSignal<AccountAuthConfig | undefined>;
15802
16147
  private readonly translate;
15803
16148
  protected readonly swatches: readonly string[];
15804
- protected readonly version = "2.13.1";
16149
+ protected readonly version = "2.13.2";
15805
16150
  protected readonly profile: _angular_core.WritableSignal<ViewerProfile>;
15806
16151
  protected readonly initial: _angular_core.Signal<string>;
15807
16152
  protected readonly usage: _angular_core.WritableSignal<LocalStorageUsageSummary | null>;
@@ -16051,6 +16396,11 @@ declare class PresentationSubtitleBarComponent implements OnChanges {
16051
16396
  * - This package has no TestBed (see `vitest.config.ts`), so any toolbar
16052
16397
  * behaviour worth asserting has to be reachable without rendering it.
16053
16398
  */
16399
+
16400
+ /** The control ids that run an action (dividers and readouts are inert). */
16401
+ type PresentToolbarAction = 'previous' | 'next' | 'laser' | 'pen' | 'pen-color' | 'highlighter' | 'highlighter-color' | 'eraser' | 'blackboard' | 'clear' | 'presenter-view' | 'end';
16402
+ /** Which colour palette popover is open, if any. */
16403
+ type OpenPalette = 'none' | 'pen' | 'highlighter';
16054
16404
  /** Annotation-tool toggle, tinted when the tool is armed. */
16055
16405
  declare function presentToolbarToggleClass(active: boolean): string;
16056
16406
  /**
@@ -16087,10 +16437,6 @@ declare class PresentToolbarAutoHide {
16087
16437
  private cancel;
16088
16438
  }
16089
16439
 
16090
- /** The control ids that run an action (dividers and readouts are inert). */
16091
- type PresentToolbarAction = 'previous' | 'next' | 'laser' | 'pen' | 'pen-color' | 'highlighter' | 'highlighter-color' | 'eraser' | 'clear' | 'presenter-view' | 'end';
16092
- /** Which colour palette popover is open, if any. */
16093
- type OpenPalette = 'none' | 'pen' | 'highlighter';
16094
16440
  declare class PresentationToolbarComponent {
16095
16441
  /** Zero-based index of the slide on screen. */
16096
16442
  readonly currentSlideIndex: _angular_core.InputSignal<number>;
@@ -16110,7 +16456,10 @@ declare class PresentationToolbarComponent {
16110
16456
  /** Swap between the fullscreen show and presenter view. */
16111
16457
  readonly presenterViewToggle: _angular_core.OutputEmitterRef<void>;
16112
16458
  protected readonly annotations: PresentationAnnotationsService;
16459
+ /** Owns the blank-screen state the Blackboard toggle drives. */
16460
+ private readonly presenterWindow;
16113
16461
  private readonly host;
16462
+ /** Template constants (class tokens, palettes, helper fns). */
16114
16463
  protected readonly ui: {
16115
16464
  readonly end: "flex items-center justify-center w-9 h-9 rounded-md transition-colors text-white/70 hover:text-white hover:bg-white/10 disabled:text-white/20 disabled:cursor-not-allowed hover:text-red-400";
16116
16465
  readonly icon: "h-[18px] w-[18px]";
@@ -16144,6 +16493,8 @@ declare class PresentationToolbarComponent {
16144
16493
  protected readonly atFirstSlide: _angular_core.Signal<boolean>;
16145
16494
  protected readonly atLastSlide: _angular_core.Signal<boolean>;
16146
16495
  protected readonly hasAnnotations: _angular_core.Signal<boolean>;
16496
+ /** Blackboard reads active only as the black screen + pen combination. */
16497
+ protected readonly blackboardActive: _angular_core.Signal<boolean>;
16147
16498
  private readonly autoHide;
16148
16499
  constructor();
16149
16500
  /**
@@ -16686,9 +17037,11 @@ declare class ZoomNavigationService {
16686
17037
  * to `''` so `EditorStateService.addElement` assigns a real id, matching the
16687
17038
  * other factories surfaced by this shim.
16688
17039
  *
16689
- * @param chartType - The chart family to create (bar, line, pie, etc.).
17040
+ * @param chartKind - The insert-dropdown entry to create ('column' yields
17041
+ * vertical columns, 'bar' horizontal bars); a raw `PptxChartType` is still
17042
+ * accepted for callers that predate the dropdown ids.
16690
17043
  */
16691
- declare function newChartElement(chartType: PptxChartType): PptxElement;
17044
+ declare function newChartElement(chartKind?: InsertChartKind | PptxChartType): PptxElement;
16692
17045
  /**
16693
17046
  * Create a new shape element for any Insert > Shapes picker preset geometry.
16694
17047
  *
@@ -17552,6 +17905,7 @@ declare class RibbonFileSectionComponent {
17552
17905
  readonly exportPdf: _angular_core.OutputEmitterRef<void>;
17553
17906
  readonly exportGif: _angular_core.OutputEmitterRef<void>;
17554
17907
  readonly exportVideo: _angular_core.OutputEmitterRef<void>;
17908
+ readonly exportJson: _angular_core.OutputEmitterRef<void>;
17555
17909
  readonly copySlideAsImage: _angular_core.OutputEmitterRef<void>;
17556
17910
  readonly print: _angular_core.OutputEmitterRef<void>;
17557
17911
  readonly info: _angular_core.OutputEmitterRef<void>;
@@ -17606,7 +17960,7 @@ declare class RibbonFileSectionComponent {
17606
17960
  */
17607
17961
  private pageActions;
17608
17962
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RibbonFileSectionComponent, never>;
17609
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonFileSectionComponent, "pptx-ribbon-file-section", never, { "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "exporting": { "alias": "exporting"; "required": false; "isSignal": true; }; "hasMacros": { "alias": "hasMacros"; "required": false; "isSignal": true; }; "hiddenActions": { "alias": "hiddenActions"; "required": false; "isSignal": true; }; "accountAuth": { "alias": "accountAuth"; "required": false; "isSignal": true; }; }, { "close": "close"; "createPresentation": "createPresentation"; "openFile": "openFile"; "openRecentFile": "openRecentFile"; "save": "save"; "savePpsx": "savePpsx"; "savePptm": "savePptm"; "packageForSharing": "packageForSharing"; "exportPng": "exportPng"; "exportPdf": "exportPdf"; "exportGif": "exportGif"; "exportVideo": "exportVideo"; "copySlideAsImage": "copySlideAsImage"; "print": "print"; "info": "info"; "signatures": "signatures"; "replace": "replace"; "openPassword": "openPassword"; "openFontEmbedding": "openFontEmbedding"; "openVersionHistory": "openVersionHistory"; "share": "share"; "options": "options"; }, never, never, true, never>;
17963
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonFileSectionComponent, "pptx-ribbon-file-section", never, { "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "exporting": { "alias": "exporting"; "required": false; "isSignal": true; }; "hasMacros": { "alias": "hasMacros"; "required": false; "isSignal": true; }; "hiddenActions": { "alias": "hiddenActions"; "required": false; "isSignal": true; }; "accountAuth": { "alias": "accountAuth"; "required": false; "isSignal": true; }; }, { "close": "close"; "createPresentation": "createPresentation"; "openFile": "openFile"; "openRecentFile": "openRecentFile"; "save": "save"; "savePpsx": "savePpsx"; "savePptm": "savePptm"; "packageForSharing": "packageForSharing"; "exportPng": "exportPng"; "exportPdf": "exportPdf"; "exportGif": "exportGif"; "exportVideo": "exportVideo"; "exportJson": "exportJson"; "copySlideAsImage": "copySlideAsImage"; "print": "print"; "info": "info"; "signatures": "signatures"; "replace": "replace"; "openPassword": "openPassword"; "openFontEmbedding": "openFontEmbedding"; "openVersionHistory": "openVersionHistory"; "share": "share"; "options": "options"; }, never, never, true, never>;
17610
17964
  }
17611
17965
 
17612
17966
  declare class RibbonFontControlsComponent {
@@ -17684,6 +18038,8 @@ declare class RibbonHomeSectionComponent {
17684
18038
  readonly canActivateFormatPainter: _angular_core.InputSignal<boolean>;
17685
18039
  readonly toggleFormatPainter: _angular_core.OutputEmitterRef<void>;
17686
18040
  readonly findReplace: _angular_core.OutputEmitterRef<void>;
18041
+ /** "Slide Templates" in the Slides group; the host opens the gallery dialog. */
18042
+ readonly openTemplateGallery: _angular_core.OutputEmitterRef<void>;
17687
18043
  readonly applyLayout: _angular_core.OutputEmitterRef<string>;
17688
18044
  readonly resetSlide: _angular_core.OutputEmitterRef<void>;
17689
18045
  protected copy(): void;
@@ -17691,7 +18047,7 @@ declare class RibbonHomeSectionComponent {
17691
18047
  protected paste(): void;
17692
18048
  protected onSelectAll(): void;
17693
18049
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RibbonHomeSectionComponent, never>;
17694
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonHomeSectionComponent, "pptx-ribbon-home-section", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; }, { "toggleFormatPainter": "toggleFormatPainter"; "findReplace": "findReplace"; "applyLayout": "applyLayout"; "resetSlide": "resetSlide"; }, never, never, true, never>;
18050
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonHomeSectionComponent, "pptx-ribbon-home-section", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; }, { "toggleFormatPainter": "toggleFormatPainter"; "findReplace": "findReplace"; "openTemplateGallery": "openTemplateGallery"; "applyLayout": "applyLayout"; "resetSlide": "resetSlide"; }, never, never, true, never>;
17695
18051
  }
17696
18052
 
17697
18053
  declare class RibbonHyperlinkButtonComponent {
@@ -17784,13 +18140,14 @@ declare class RibbonInsertSectionComponent {
17784
18140
  private readonly editor;
17785
18141
  private readonly translate;
17786
18142
  readonly slideIndex: _angular_core.InputSignal<number>;
17787
- readonly newChartType: _angular_core.InputSignal<PptxChartType>;
18143
+ /** The insert-chart dropdown entry ('column' is vertical, 'bar' horizontal). */
18144
+ readonly newChartType: _angular_core.InputSignal<InsertChartKind>;
17788
18145
  readonly newShapeType: _angular_core.InputSignal<ShapePresetType>;
17789
18146
  readonly openSmartArtDialog: _angular_core.OutputEmitterRef<void>;
17790
18147
  readonly openEquationDialog: _angular_core.OutputEmitterRef<void>;
17791
18148
  /** "Hyperlink"; the host opens the hyperlink edit dialog for the selection. */
17792
18149
  readonly openHyperlink: _angular_core.OutputEmitterRef<void>;
17793
- readonly chartTypeChange: _angular_core.OutputEmitterRef<PptxChartType>;
18150
+ readonly chartTypeChange: _angular_core.OutputEmitterRef<InsertChartKind>;
17794
18151
  readonly shapeTypeChange: _angular_core.OutputEmitterRef<ShapePresetType>;
17795
18152
  /** Chart types offered in the Insert tab dropdown (shared source of truth). */
17796
18153
  protected readonly chartTypes: readonly InsertChartTypeOption[];
@@ -18162,6 +18519,18 @@ declare function hasVisibleSlideAfter(current: number, slides: readonly PptxSlid
18162
18519
  declare function firstVisibleIndex(slides: readonly PptxSlide[]): number;
18163
18520
  /** The show's last visible slide (End), or 0 for an empty deck. */
18164
18521
  declare function lastVisibleIndex(slides: readonly PptxSlide[]): number;
18522
+ /**
18523
+ * Style record centring the scaled slide stage in the viewport.
18524
+ *
18525
+ * The offsets are computed numerically ((viewport - scaled size) / 2, exactly
18526
+ * how React's PresentationStage centres) rather than with the historical
18527
+ * `left/top: 50%` + `translate(-50%, -50%)`: a transform makes the stage a
18528
+ * stacking context, which trapped every z-index inside it (the ink annotation
18529
+ * overlay in particular) BELOW the sibling blackout sheet, so blackboard
18530
+ * strokes painted invisibly under the black screen. See the shared
18531
+ * `render/presentation-blackboard` module for the layering rules.
18532
+ */
18533
+ declare function presentationStageStyle(size: CanvasSize, zoom: number, viewportW: number, viewportH: number): Record<string, string>;
18165
18534
 
18166
18535
  /**
18167
18536
  * touch-gestures.ts: thin Angular adapter over the framework-agnostic
@@ -18394,6 +18763,8 @@ declare class MediaRendererComponent {
18394
18763
  readonly mediaDataUrls: _angular_core.InputSignal<Map<string, string>>;
18395
18764
  readonly zIndex: _angular_core.InputSignal<number>;
18396
18765
  readonly interactive: _angular_core.InputSignal<boolean>;
18766
+ /** Keep the data-pptx-element marker on interaction-locked template elements. */
18767
+ readonly marked: _angular_core.InputSignal<boolean>;
18397
18768
  /**
18398
18769
  * True only on the live presentation stage. When set, the media element
18399
18770
  * starts playing on its own once mounted (as PowerPoint does when a slide
@@ -18427,7 +18798,7 @@ declare class MediaRendererComponent {
18427
18798
  readonly captionTracks: _angular_core.Signal<ResolvedCaptionTrack[]>;
18428
18799
  readonly clrChangeParams: _angular_core.Signal<ClrChangeParams | undefined>;
18429
18800
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MediaRendererComponent, never>;
18430
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<MediaRendererComponent, "pptx-media-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "mediaDataUrls": { "alias": "mediaDataUrls"; "required": false; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "presenting": { "alias": "presenting"; "required": false; "isSignal": true; }; "placeholderLabel": { "alias": "placeholderLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18801
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MediaRendererComponent, "pptx-media-renderer", never, { "element": { "alias": "element"; "required": true; "isSignal": true; }; "mediaDataUrls": { "alias": "mediaDataUrls"; "required": false; "isSignal": true; }; "zIndex": { "alias": "zIndex"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "marked": { "alias": "marked"; "required": false; "isSignal": true; }; "presenting": { "alias": "presenting"; "required": false; "isSignal": true; }; "placeholderLabel": { "alias": "placeholderLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18431
18802
  }
18432
18803
 
18433
18804
  /**
@@ -18637,6 +19008,11 @@ declare class RemoteSelectionOverlayComponent {
18637
19008
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<RemoteSelectionOverlayComponent, "pptx-remote-selection-overlay", never, { "presences": { "alias": "presences"; "required": false; "isSignal": true; }; "elements": { "alias": "elements"; "required": false; "isSignal": true; }; "activeSlideIndex": { "alias": "activeSlideIndex"; "required": false; "isSignal": true; }; "zoom": { "alias": "zoom"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18638
19009
  }
18639
19010
 
19011
+ /** Payload of `renameElement`: `undefined` clears the element's name. */
19012
+ interface SelectionPaneRename {
19013
+ id: string;
19014
+ name: string | undefined;
19015
+ }
18640
19016
  declare class SelectionPaneComponent {
18641
19017
  /** All elements on the active slide. */
18642
19018
  readonly elements: _angular_core.InputSignal<readonly PptxElement[]>;
@@ -18650,13 +19026,28 @@ declare class SelectionPaneComponent {
18650
19026
  readonly sendBackward: _angular_core.OutputEmitterRef<string>;
18651
19027
  /** Emits the id of the element whose hidden flag should be toggled. */
18652
19028
  readonly toggleHidden: _angular_core.OutputEmitterRef<string>;
19029
+ /** Emits the rename commit; `name: undefined` clears the element's name. */
19030
+ readonly renameElement: _angular_core.OutputEmitterRef<SelectionPaneRename>;
18653
19031
  /** Elements reversed so the topmost (last in array) appears first in the list. */
18654
19032
  protected readonly reversedElements: _angular_core.Signal<readonly PptxElement[]>;
19033
+ /** Id of the row whose name is being edited inline, or null. */
19034
+ protected readonly editingId: _angular_core.WritableSignal<string | null>;
19035
+ /** The label the rename input was seeded with (unedited commits are no-ops). */
19036
+ protected renameSeed: string;
19037
+ /** Double-click on the name label: open the inline rename input. */
19038
+ protected startRename(el: PptxElement): void;
19039
+ /**
19040
+ * Commit (Enter or blur). Enter closes the input, which fires blur; the
19041
+ * editingId guard makes that second call a no-op instead of a double emit.
19042
+ */
19043
+ protected commitRename(id: string, event: Event): void;
19044
+ /** Escape: drop the edit without committing. */
19045
+ protected cancelRename(event: Event): void;
18655
19046
  protected isSelected(id: string): boolean;
18656
19047
  protected typeIcon(type: string): string;
18657
19048
  protected elLabel(el: PptxElement): string;
18658
19049
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectionPaneComponent, never>;
18659
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectionPaneComponent, "pptx-selection-pane", never, { "elements": { "alias": "elements"; "required": false; "isSignal": true; }; "selectedIds": { "alias": "selectedIds"; "required": false; "isSignal": true; }; }, { "selectElement": "selectElement"; "bringForward": "bringForward"; "sendBackward": "sendBackward"; "toggleHidden": "toggleHidden"; }, never, never, true, never>;
19050
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectionPaneComponent, "pptx-selection-pane", never, { "elements": { "alias": "elements"; "required": false; "isSignal": true; }; "selectedIds": { "alias": "selectedIds"; "required": false; "isSignal": true; }; }, { "selectElement": "selectElement"; "bringForward": "bringForward"; "sendBackward": "sendBackward"; "toggleHidden": "toggleHidden"; "renameElement": "renameElement"; }, never, never, true, never>;
18660
19051
  }
18661
19052
 
18662
19053
  declare class ThemeGalleryComponent {
@@ -18862,5 +19253,5 @@ declare function thumbnailHeight(canvasW: number, canvasH: number, thumbW: numbe
18862
19253
  */
18863
19254
  declare function gridColumns(containerW: number, thumbW: number, gap: number, maxCols: number): number;
18864
19255
 
18865
- export { ALIGN_OPTIONS, ANIMATION_PRESET_CATEGORIES, AUDIENCE_HASH, AUDIENCE_NONCE_KEY, AVATAR_COLOR_SWATCHES, AccessibilityPanelComponent, AccessibilityService, AccountPageComponent, ActionSettingsPanelComponent, AdvancedChartEditorComponent, AiChangeOverlayComponent, AiChatPanelComponent, AiChatService, AiComposerComponent, AiFocusBarComponent, AiFocusHighlightOverlayComponent, AiMessageListComponent, AiPanelStore, AiProposalCardComponent, AiSettingsSectionComponent, AiToolCallCardComponent, AnimationAuthorPanelComponent, AnimationPanelComponent, AnimationPlaybackService, AutosaveService, BroadcastDialogComponent, CHART_EDITOR_STYLES, CURSOR_PALETTE, CanvasFitService, ChartAxisOptionsComponent, ChartAxisStyleOptionsComponent, ChartComboTypeOptionsComponent, ChartDataEditorComponent, ChartDataLabelOptionsComponent, ChartDatapointMarkerOptionsComponent, ChartDatapointOptionsComponent, ChartDisplayOptionsComponent, ChartElementViewComponent, ChartErrorBarOptionsComponent, ChartMarkerOptionsComponent, ChartPartSelectionService, ChartPrimitivesComponent, ChartRendererComponent, ChartTrendlineOptionsComponent, CollaborationCursorsComponent, CollaborationService, ColorChangedImageComponent, CommentsPanelComponent, CommentsService, ComparePanelComponent, ConnectorRendererComponent, ConnectorTextOverlayComponent, CustomShowsComponent, DATA_TABLE_HEADER_H, DATA_TABLE_KEY_W, DATA_TABLE_PADDING, DATA_TABLE_ROW_H, DEFAULT_BOUNDS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, DEFAULT_COLOR_SCHEME, DEFAULT_FILL_COLOR, DEFAULT_LAYOUT, DEFAULT_PALETTE$1 as DEFAULT_PALETTE, DEFAULT_PATTERN_FILL_PRESET, DEFAULT_PRINT_SETTINGS, DEFAULT_SLIDE_BACKGROUND, DEFAULT_STROKE_COLOR, DEFAULT_STYLE, DEFAULT_TABLE_ROW_HEIGHT, DEFAULT_TEXT_COLOR, DEFAULT_VIEWER_PROFILE, DIRECTIONAL_PRESETS, DIRECTION_OPTIONS, DocumentPropertiesCardComponent, EMBEDDED_FONTS_STYLE_ID, EMPHASIS_PRESETS, ENTRANCE_PRESETS, TEMPLATES as EQUATION_TEMPLATES, EXIT_PRESETS, EditorContextMenuComponent, EditorHistory, EditorStateService, EditorToolbarComponent, EffectsPanelComponent, ElementRendererComponent, EmbeddedFontsService, EncryptedFileDialogComponent, EquationEditorDialogComponent, EquationRendererComponent, EquationTemplateGalleryComponent, ExportProgressModalComponent, ExportService, FieldContextService, FindBarComponent, FindReplaceBarComponent, FollowModeBarComponent, FontEmbeddingListComponent, FontEmbeddingPanelComponent, GALLERY_THEME_PRESETS, GradientPickerComponent, HANDOUT_OPTIONS, HeaderFooterDialogComponent, HyperlinkDialogComponent, ImagePropertiesPanelComponent, InkDrawingService, InkRendererComponent, InsertSmartArtDialogComponent, InspectorPaneHeaderComponent, InspectorPanelComponent, IsMobileService, KeepAnnotationsDialogComponent, LOCALE_CATALOG, LONG_PRESS_DURATION_MS, LONG_PRESS_MOVE_TOLERANCE_PX, LoadContentService, LocalPresencePublisher, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MOTION_PATH_COLUMNS, MediaPreviewComponent, MediaPropertiesPanelComponent, MediaRendererComponent, MediaTrimTimelineComponent, MobileBottomBarComponent, MobileMenuSheetComponent, MobilePresenterViewComponent, MobileSheetComponent, MobileSlidesSheetComponent, MobileToolbarComponent, ModalDialogComponent, Model3DRendererComponent, NotesHandoutCardComponent, NotesPanelComponent, NotesToolbarComponent, OleRendererComponent, OutlineViewOverlayComponent, POWER_POINT_VIEWER_PROVIDERS, PRESENTER_CHANNEL_NAME, PRESENTER_MSG_ORIGIN, PRESENTER_TIMER_SEGMENT_MS, PX_PER_CM, PX_PER_INCH, PasswordProtectionDialogComponent, PasswordStrengthMeterComponent, PowerPointViewerComponent, PresentToolbarAutoHide, PresentationAnnotationOverlayComponent, PresentationAnnotationsService, PresentationOverlayComponent, PresentationPropertiesPanelComponent, PresentationSettingsCardComponent, PresentationSubtitleBarComponent, PresentationToolbarComponent, PresentationTransitionOverlayComponent, PresenterViewComponent, PresenterWindowService, PrintDialogComponent, PrintService, PrintSettingsPanelComponent, PropertiesDialogComponent, REPEAT_MODE_OPTIONS, RESIZE_HANDLES, RULER_FONT_SIZE, RULER_THICKNESS, ReadingViewOverlayComponent, RemoteSelectionOverlayComponent, RibbonAnimationGalleryComponent, RibbonAnimationsSectionComponent, RibbonArrangeSectionComponent, RibbonColorPopoverComponent, RibbonComponent, RibbonDesignSectionComponent, RibbonDrawSectionComponent, RibbonDrawingGroupComponent, RibbonEditingSectionComponent, RibbonFileSectionComponent, RibbonFontControlsComponent, RibbonHomeSectionComponent, RibbonHyperlinkButtonComponent, RibbonInsertFieldsComponent, RibbonInsertSectionComponent, RibbonMotionPathGalleryComponent, RibbonParagraphControlsComponent, RibbonPrimaryRowComponent, RibbonReviewSectionComponent, RibbonShapeExtrasComponent, RibbonSlideshowSectionComponent, RibbonTransitionsSectionComponent, RibbonViewSectionComponent, RulerGuidesService, SEQUENCE_OPTIONS, SEVERITY_GROUPS, SEVERITY_LABELS, SHORTCUT_REFERENCE_ITEMS, SLIDE_TRANSITION_KEYFRAMES, DEFAULT_PALETTE as SMARTART_DEFAULT_PALETTE, PALETTES as SMARTART_PALETTES, SMART_ART_COLOR_SCHEMES, SMART_ART_STYLE_OPTIONS, SUB_ITEM_LABEL, SVG_WARP_PRESETS, SWIPE_MAX_VERTICAL_PX, SWIPE_THRESHOLD_PX, SelectionPaneComponent, SetUpSlideShowDialogComponent, SettingsAppearanceTabComponent, SettingsDialogComponent, SettingsLanguageTabComponent, ShareDialogComponent, ShortcutPanelComponent, ShowOptionsFieldsetComponent, ShowSlidesFieldsetComponent, SignatureStrippedDialogComponent, SignaturesPanelComponent, SignaturesService, SlideBackgroundCardComponent, SlideCanvasComponent, SlideDefaultInspectorComponent, SlideDiffChangesComponent, SlideDiffRowComponent, SlideDiffThumbnailsComponent, SlideSizeCardComponent, SlideSorterOverlayComponent, SlideThemeOverridePanelComponent, SlideTransitionCardComponent, SlidesPanelComponent, SmartArt3DRendererComponent, SmartArt3DService, SmartArtPreviewComponent, SmartArtPropertiesComponent, SmartArtRendererComponent, StatusBarComponent, TABLE_STRUCTURE_TOGGLES, TEXT_3D_BOTTOM_BEVEL_KEYS, TEXT_3D_TOP_BEVEL_KEYS, TEXT_DIRECTION_OPTIONS, THEME_CATALOG, TIMING_CURVE_OPTIONS, TRIGGER_OPTIONS, TYPE_LABELS, TableCellAdvancedFillComponent, TableCellFormattingComponent, TableDataEditorComponent, TablePropertiesComponent, TableRendererComponent, TableResizeOverlayComponent, TableSelectionService, TagsCardComponent, Text3DBevelSectionComponent, Text3DPanelComponent, TextAdvancedPanelComponent, ThemeEditorFieldsComponent, ThemeGalleryComponent, ThemeSelectorCardComponent, TitleBarComponent, TitleBarSearchComponent, TransitionDirectionPickerComponent, TransitionPreviewComponent, VALIGN_OPTIONS, VIEWER_THEME, VersionHistoryPanelComponent, ViewerCanvasEditingService, ViewerCollabCursorService, ViewerCollaborationSessionService, ViewerCompareService, ViewerCustomShowsService, ViewerDialogsService, ViewerDocumentPropertiesService, ViewerExportService, ViewerExtraDialogsComponent, ViewerFileIOService, ViewerFindReplaceService, ViewerFormatPainterService, ViewerInspectorPanelService, ViewerKeyboardService, ViewerMobileSheetService, ViewerPresentationModeService, ViewerThemeGalleryService, ViewerTouchGesturesService, ViewerZoomService, WEBM_MIME_CANDIDATES, WriteBackScheduler, ZoomNavigationService, ZoomRendererComponent, ZoomTargetService, addCategory, addCommentToList, addGradientStopPatch, addItem, addSeries, addSubItem, advanceStep, affordanceElements, aiToggleVisible, alignPatch, animationFor, animationPresetLabelKey, annotationMapToInkInserts, applyAcceptedDiff, applyAnimationPreset, applyFindReplacements, applyFormatToElement, applyMove, applyResize, applyTableStylePreset, asMediaElement, assignUserColor, attachShowVisibilityPause, attachTouchGestures, beginNodeEdit, bevelSizePatch, boolFromEvent, bringForward, bringToFront, buildBarActions, buildBroadcastConfig, buildBroadcastViewerUrl, buildCategoryLabels, buildCellParagraphs, buildChartViewModel, buildChatLogExport, buildChatLogMarkdown, buildChromeStyle, buildClearHyperlinkPatch, buildClickGroups, buildColStyles, buildCollaborationConfig, buildComboViewModel, buildCssGradientFromShapeStyle, buildDuotoneFilter, buildDuotoneFilterId, buildEmbeddedFontStyles, buildEquationElement, buildEquationSegment, buildFallbackViewModel, buildFontFaceRule, buildGradientFillCss, buildGridlinesAndLabels, buildHyperlinkPatch, buildInkContainerStyle, buildInkStrokes, buildLegend, buildModel3DContainerStyle, buildModel3DViewModel, buildOleActionModel, buildOleInfoRows, buildPatternFillCss, buildPrintHtmlDocument as buildPrintDocument, buildPropertiesPatch, buildRegionMapViewModel, buildSaveSlides, buildShareUrl, buildSmartArtInsertElement, buildSmartArtNodes, buildStockViewModel, buildSurfaceViewModel, buildTableViewModel, buildTreemapViewModel, buildTrimFragment, buildWaterfallViewModel, buildZeroLine, buildZoomContainerStyle, buildZoomViewModel, bulletIndentPx, canAddTopLevelNode, canGroupSelection, canRemoveTopLevelNode, canSetStrokeWidth, canStartBroadcast, canStartShare, canUngroupSelection, canUseClipboard, captionDisplayText, cellRunStyle, cellStyleToStyleMap, cellTdStyle, changeCountLabel, changeIcon, characterSpacingPatch, checkFontAvailable, clampCursorPosition, clampGifDimensions, clampIndex, clampNotesFontSize, clampScale, clampStep, clearAllLocalViewerData, clearAudienceContent, cn, collectAccessibilityIssues, collectElementText, collectSlideText, collectStoredChats, collectUsedFontFamilies, columnWidthStyle, commitNodeText, computeAlign, computeAxisTitlePrimitives, computeBarRects, computeBubbleRadius, computeCornerHandle, computeDataTablePrimitives, computeDistribute, computeDrawingViewBox, computeErrorBarPrimitives, computeFocusTargets, computeHandleBoxes, computeHandoutLayout, computeIsMobile, computeIsTablet, computeLinePoints, computeLinearRegression, computePageCount, computePieLayout, computePieSlicePath, computePieSlices, computePlotLayout, computeRSquared, computeRadarPoints, computeScatterDots, computeSelectionBoxes, computeSingleSelected, computeSlideIndices, computeSnap, computeStackedBarRects, computeStackedValueRange, computeTextLines, computeTrendlinePrimitives, computeValueRange, convertOmmlToMathMl, copyFormatFromElement, countAccessibilityIssues, countAnnotationStrokes, createAngularAiBridge, createCustomShow, createSwipeDismissDrag, createWebrtcBundle, createWebsocketBundle, cssObjectToStyleMap, currentColorScheme, currentLayout, currentStyle, defaultCssVars, defaultRadius, defaultThemeColors, deleteElementsByIds, deleteVersion as deleteRecoveryVersion, demoteNode, deriveModel3DBlobUrl, derivePresenceList, describeSmartArtBounds, disableGlowPatch, disableInnerShadowPatch, disableOuterShadowPatch, disableReflectionPatch, disableSoftEdgePatch, duplicateElementById, durationOf, effectsStateOf, enableGlowPatch, enableInnerShadowPatch, enableOuterShadowPatch, enableReflectionPatch, enableSoftEdgePatch, encodeGif, endShowMediaCleanup, estimatePageCount, evenColumnWidths, evenRowHeights, exitPresentationFullscreen, exportAiChatLogs, extractPathPoints, eyedropperAvailable, fillColorOf, findInSlides, findOwningSlideIndex, findSlideIndexByElementId, firstVisibleIndex, fitPolynomial, fitZoom, focusTargetChips, fontMimeForFormat, fontSizeOf, formatAutoNumber, formatAxisValue, formatBytes, formatCursorLabel, formatElapsed, formatFileSize, formatPropertyDate, formatTime, fpsToFrameIntervalMs, generateBroadcastRoomId, generateCommentId, generateCustomShowId, generatePressureCircles, generateTicks, getClrChangeParams, getContainerStyle, getDuotoneFilterDef, getImageSrc, getLocalStorageUsageSummary, getOleAriaLabel, getOleBadgeLabel, getOleDisplayName, getOleDownloadFileName, getOleTypeColor, getOleTypeLabel, getPasswordStrength, getPatternSvg, getPlaceholderStyle, getVersions as getRecoveryVersions, getResolvedShapeClipPath, getResolvedShapeClipPathFor, getShapeFillStrokeStyle, getSlideBackgroundStyle, getSlideTransitionAnimations, getSmartArtNodeBounds, getSpeechRecognitionCtor, getTextBlockStyle, getTextWarp, getTouchDistance, getWarpCategory, getWarpPath, gradientStateFromStyle, gradientStateOf, gradientStatePatch, gridColumns, groupElements, groupIssuesBySeverity, hasAnimation, hasCopyableFormat, hasExistingLink, hasExitedFullscreen, hasGradientFill, hasPressureVariation, hasVisibleSlideAfter, headerLabel, imageDimensions, inkViewBox, insertTableElementColumn as insertColumn, insertTableElementRow as insertRow, interpolateWidth, isAudienceTab, isBold, isBrowserOpenableMime, isChildNode, isElementInteractive, isInjectableUrl, isItalic, isPpactionUrl, isPresenterMessage, isSigned, isTextElement, isTwoTableFocus, isUnderline, isUrlSafe, isValidRoomId, isViewportBackgroundPressTarget, isZoomActivationKey, issueTrackKey, issueTypeLabel, keyToLabel, lastVisibleIndex, latexToMathml, linePointsToSvgString, lineSpacingPatch, loadAudienceContent, mergeCaptionResults, mergeDown, mergeRight, mergeSelection, moveElementBy, moveNodeDown, moveNodeUp, msToFrameDelayCs, narrowToCircle, narrowToPolygon, narrowToRect, newChartElement, newEquationElement, newPresetShapeElement, newShapeElement, newSmartArtElement, newTableElement, newTextElement, nextVisibleIndex, nodeBold, nodeEditBox, nodeFillColor, nodeFontColor, nodeIdFromKey, nodeItalic, nodeStyle, normalizeFontFormat, normalizeSlidesPerPage, normalizeValue, numFromEvent, ommlToMathml, ooxmlDashToCssBorderStyle, openNativeEyeDropper, overallStatus, paletteColor, parseAudienceNonce, parseNodeTextarea, partitionSlides, patchChartData, patchChartStyle, patchTableData, patchTextStyle, patternPresetOptions, pendingElementStyles, pickColorByClickFallback, pickFile, pickSupportedMimeType, planGifFrames, planVideoSegments, pointsToSvgPathD, presenceToCursors, presenterTimerProgress, presetByLayout, presetsForCategory, pressuresToWidths, prevVisibleIndex, projectDrawingShapes, promoteNode, provideViewerTheme, radarAngle, radarRingPoints, readAsDataUrl, recordWebm, redistributeColumnWidth, registerCrossSlideAudio, removeAnimation, removeCategory, removeTableElementColumn as removeColumn, removeCommentFromList, removeElementAnimation, removeGradientStopPatch, removeNode, removeTableElementRow as removeRow, removeSeries, renderToCanvas, reorderAnimationDown, reorderAnimationUp, replaceInSlides, replaceMatch, requestPresentationFullscreen, resizeElement, resolveCaptionTracks, resolveChartKind, resolveFontVariant, resolveHyperlinkHref, resolveInteractiveElementId, resolveMediaSrc, resolveOleType, resolveParagraphBullet, resolvePresenterNotes, resolveProfileInitial, resolveRegionCode, resolveSlideAutoAdvanceMs, resolvePalette as resolveSmartArtPalette, resolveThemeCatalogEntry, resolveTransitionDuration, revealedElementStyles, routeOrthogonalConnector, rowStyle, rulerDragToGuidePosition, rulerHighlight, rulerStripTicks, sampleColorFromSlide, sanitizeColor, sanitizeSlideIndex, sanitizeUserName, saveViewerProfile, scanAvailableFonts, searchSlides, seedBroadcastFields, seedHyperlinkDraft, seedPropertiesDraft, seedShareFields, segmentFrameCount, selectValue, sendBackward, sendToBack, sequentialColorScale, serializeWriteBack, seriesColor, setAnimationEmphasis, setAnimationEntrance, setAnimationExit, setAxis, setAxisLogScale, setAxisTitleStyle, setCategoryLabel, setCellText, setColorScheme, setDataLabels, setDataPointExplosion, setDataPointFill, setDataPointLabel, setDataPointMarker, setDelay, setDirection, setDuration, setElementPosition, setGridlineStyle, setLayout, setLegend, setNodeStyle, setNodeText, setRepeatCount, setRepeatMode, setSequence, setSeriesChartType, setSeriesColor, setSeriesErrorBars, setSeriesMarker, setSeriesName, setSeriesTrendline, setSeriesValue, setStyle, setTimingCurve, setTitle, setTrigger, setTriggerShapeId, shapeStylePatch, sheetAfterNavigate, shouldBlockClickAdvance, shouldUseSvgWarp, showDirectionPicker, showsTemplateAffordance, signatureCountLabel, signatureKey, signatureTimestamp, signerName, statusLabel as slideDiffStatusLabel, slideNumberOf, smartArtNodes, paletteColour as smartArtPaletteColour, snapToGridStep, splitCursorCell, splitMergedCell, statusKind, statusLabel$1 as statusLabel, storeAudienceContent, stringFromEvent, strokeColorOf, strokeToInkElement, strokeWidthOf, styleShadowFilter, textAdvancedPatch, textAdvancedStateFromStyle, textAdvancedStateOf, textColorOf, textDirectionPatch, textStyleOf, textStylePatch, themeStyle, themeToCssVars, thumbnailHeight, thumbnailZoom, toggleCommentResolvedInList, toggleNodeBold, toggleNodeItalic, toggleSheet, topLevelNodeCount, transformSelectedTextCase, translationsEn, ungroupElements, updateElementById, updateGlowPatch, updateGradientStopPatch, updateInnerShadowPatch, updateOuterShadowPatch, updateReflectionPatch, vAlignPatch, validatePassword, validatePrintSettings, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, waypointsToPathD, worstStatus, zoomTargetSlideIndex };
18866
- export type { AccessibilityIssueGroup, AccountAuthConfig, ActionDescriptor, AiCanvasHighlight, AiChatInitState, AiLogChat, AiLogExport, AiLogFormat, AiLogMessage, AiPanelSelectionAccessors, AlignBox, AlignMode, AnimationClickGroup, AnimationGroup, AnimationPresetCategory, AnimationPresetEntry, AnimationPresetPick, AnnotationInkInsert, AnnotationStroke, AttachTouchGesturesConfig, AwarenessLike, BarRect, Box, BridgeDeps, BroadcastConfig, BroadcastDefaults, CSSProperties, CanvasSize, CellCoord, CellParagraph, CellTextRun, ChartPartRef, ChartPartSelection, ChartValueDrag, ChartViewModel, ClassValue, ClrChangeParams, CollaborationConfig, CollaborationRole, RouterRect as ConnectorObstacle, RouterPoint as ConnectorPoint, ConnectorRouting, CopiedFormat, CornerHandleBox, CustomShow, CustomThemeEdit, DestroyableYDoc, DiagonalBorderInfo, DistributeMode, DocumentProperties, DrawingViewBox, DuotoneFilterDef, EffectsState, EmbeddedFontStyles, EquationTemplate, EyedropperResult, FindOptions, FindResult, FocusChip, FocusSelectionInput, GifFrame, GifFramePlan, GifPlanOptions, GlowState, GradientState, GradientStop$1 as GradientStop, GroupResult, HandleBox, HandoutSlidesPerPage, HyperlinkDraft, InkPoint, InkStroke, InlineEditState, InnerShadowState, LegendEntry, LinePoint, LinearFit, LocalIdentity, LocalStorageUsageSummary, LocaleCatalogEntry, MobileSheetKey, Model3DViewModel, MotionPathColumn, MotionPathEntry, NodeEditBox, NotesSegmentViewModel, ObjectUrlFactory, OleActionModel, OleInfoRow, OuterShadowState, OutlineCommit, OverallSignatureStatus, PartitionedSlides, PathPoint, PieSliceGeometry, PieSliceOptions, PlotLayout, PlotLayoutOptions, PositionUpdate, PowerPointViewerAPI, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiElementUpdate, PptxAiToolName, PptxAiUIMessage, PptxAiWritePolicy, PresentToolbarAction, PresentationTool, PresenterExitMessage, PresenterMessage, PresenterNotes, PresenterSlideChangeMessage, PresenterTimerProgress, PressureCircle, PrintColorMode, PrintHtmlDocumentOptions as PrintDocumentOptions, PrintOrientation, PrintSettings, PrintSlideRange, PrintWhat, PropertiesDraft, ProposalView, ProviderBundle, ProviderLike, RadarPoint, RecordWebmOptions, RecoveryVersion, ReflectionState, RemoteCursor, SanitizedPresence as RemotePresence, RenderedShape, ReplaceResult, ResizeHandle, ResolvedCaptionTrack, ResolvedFontVariant, ResolvedOleType, RulerUnit, ScatterDot, SelectionBox, ShapeStyleChanges, ShareDefaults$1 as ShareDefaults, ShareFormFields, ShortcutReferenceItem, SignatureStatusKind, SlideInspectorTab, SlideTransitionAnimations, SmartArtInsertEvent, SmartArtNodeBounds, SnapBox, SnapGuide, SnapResult, SoftEdgeState, SpeechAlternative, SpeechRecognitionCtor, SpeechRecognitionEventLite, SpeechRecognitionLite, SpeechResult, SpeechResultList, SpeechSupportState, StagedProposal, StrokeToInkElementOpts, StyleMap, SupportedChartKind, SvgAreaGradient, SvgCircle, SvgLine, SvgPath, SvgPolygon, SvgPolyline, SvgPrimitive, SvgRect, SvgText, SwipeDismissDrag, TableBooleanFlag, TableCellSelection, TableCellViewModel, TableRowViewModel, TemplateElementsBySlideId, Text3DBevelKeys, TextAdvancedChanges, TextAdvancedState, TextStyleChanges, TextWarpCssDef, TextWarpDef, TextWarpPathDef, ThemeCatalogEntry, Tick, ToolbarActionId, TouchGestureCallbacks, TranslationKey, UngroupResult, ValueRange, VideoPlanOptions, VideoSegmentPlan, ViewerMode, ViewerProfile, ViewerSettings, ViewerTheme, ViewerThemeColors, ZoomViewModel };
19256
+ export { ALIGN_OPTIONS, ANIMATION_PRESET_CATEGORIES, AUDIENCE_HASH, AUDIENCE_NONCE_KEY, AVATAR_COLOR_SWATCHES, AXIS_LABEL_COLOR, AccessibilityPanelComponent, AccessibilityService, AccountPageComponent, ActionSettingsPanelComponent, AdvancedChartEditorComponent, AiChangeOverlayComponent, AiChatPanelComponent, AiChatService, AiComposerComponent, AiFocusBarComponent, AiFocusHighlightOverlayComponent, AiHistoryMenuComponent, AiHistoryService, AiMessageListComponent, AiPanelStore, AiProposalCardComponent, AiSettingsSectionComponent, AiToolCallCardComponent, AnimationAuthorPanelComponent, AnimationPanelComponent, AnimationPlaybackService, AutosaveService, BroadcastDialogComponent, CHART_EDITOR_STYLES, CURSOR_PALETTE, CanvasFitService, ChartAxisOptionsComponent, ChartAxisStyleOptionsComponent, ChartComboTypeOptionsComponent, ChartDataEditorComponent, ChartDataLabelOptionsComponent, ChartDatapointMarkerOptionsComponent, ChartDatapointOptionsComponent, ChartDisplayOptionsComponent, ChartElementViewComponent, ChartErrorBarOptionsComponent, ChartMarkerOptionsComponent, ChartPartSelectionService, ChartPrimitivesComponent, ChartRendererComponent, ChartTrendlineOptionsComponent, CollaborationCursorsComponent, CollaborationService, ColorChangedImageComponent, CommentMarkersOverlayComponent, CommentsPanelComponent, CommentsService, ComparePanelComponent, ConnectorRendererComponent, ConnectorTextOverlayComponent, CustomShowsComponent, DATA_TABLE_HEADER_H, DATA_TABLE_KEY_W, DATA_TABLE_PADDING, DATA_TABLE_ROW_H, DEFAULT_BOUNDS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, DEFAULT_COLOR_SCHEME, DEFAULT_FILL_COLOR, DEFAULT_LAYOUT, DEFAULT_PALETTE$1 as DEFAULT_PALETTE, DEFAULT_PATTERN_FILL_PRESET, DEFAULT_PRINT_SETTINGS, DEFAULT_SLIDE_BACKGROUND, DEFAULT_STROKE_COLOR, DEFAULT_STYLE, DEFAULT_TABLE_ROW_HEIGHT, DEFAULT_TEXT_COLOR, DEFAULT_VIEWER_PROFILE, DIRECTIONAL_PRESETS, DIRECTION_OPTIONS, DocumentPropertiesCardComponent, EMBEDDED_FONTS_STYLE_ID, EMPHASIS_PRESETS, ENTRANCE_PRESETS, TEMPLATES as EQUATION_TEMPLATES, EXIT_PRESETS, EditorContextMenuComponent, EditorHistory, EditorStateService, EditorToolbarComponent, EffectsPanelComponent, ElementRendererComponent, EmbeddedFontsService, EncryptedFileDialogComponent, EquationEditorDialogComponent, EquationRendererComponent, EquationTemplateGalleryComponent, ExportProgressModalComponent, ExportService, FieldContextService, FindBarComponent, FindReplaceBarComponent, FollowModeBarComponent, FontEmbeddingListComponent, FontEmbeddingPanelComponent, GALLERY_THEME_PRESETS, GRIDLINE_COLOR, GradientPickerComponent, HANDOUT_OPTIONS, HeaderFooterDialogComponent, HyperlinkDialogComponent, ImagePropertiesPanelComponent, InkDrawingService, InkRendererComponent, InsertSmartArtDialogComponent, InspectorPaneHeaderComponent, InspectorPanelComponent, IsMobileService, KeepAnnotationsDialogComponent, LOCALE_CATALOG, LONG_PRESS_DURATION_MS, LONG_PRESS_MOVE_TOLERANCE_PX, LoadContentService, LocalPresencePublisher, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MOTION_PATH_COLUMNS, MediaPreviewComponent, MediaPropertiesPanelComponent, MediaRendererComponent, MediaTrimTimelineComponent, MobileBottomBarComponent, MobileMenuSheetComponent, MobilePresenterViewComponent, MobileSheetComponent, MobileSlidesSheetComponent, MobileToolbarComponent, ModalDialogComponent, Model3DRendererComponent, NotesHandoutCardComponent, NotesPanelComponent, NotesToolbarComponent, OleRendererComponent, OutlineViewOverlayComponent, POWER_POINT_VIEWER_PROVIDERS, PRESENTER_CHANNEL_NAME, PRESENTER_MSG_ORIGIN, PRESENTER_TIMER_SEGMENT_MS, PX_PER_CM, PX_PER_INCH, PasswordProtectionDialogComponent, PasswordStrengthMeterComponent, PowerPointViewerComponent, PresentToolbarAutoHide, PresentationAnnotationOverlayComponent, PresentationAnnotationsService, PresentationOverlayComponent, PresentationPropertiesPanelComponent, PresentationSettingsCardComponent, PresentationSubtitleBarComponent, PresentationToolbarComponent, PresentationTransitionOverlayComponent, PresenterViewComponent, PresenterWindowService, PrintDialogComponent, PrintService, PrintSettingsPanelComponent, PropertiesDialogComponent, REPEAT_MODE_OPTIONS, RESIZE_HANDLES, RULER_FONT_SIZE, RULER_THICKNESS, ReadingViewOverlayComponent, RemoteSelectionOverlayComponent, RibbonAnimationGalleryComponent, RibbonAnimationsSectionComponent, RibbonArrangeSectionComponent, RibbonColorPopoverComponent, RibbonComponent, RibbonDesignSectionComponent, RibbonDrawSectionComponent, RibbonDrawingGroupComponent, RibbonEditingSectionComponent, RibbonFileSectionComponent, RibbonFontControlsComponent, RibbonHomeSectionComponent, RibbonHyperlinkButtonComponent, RibbonInsertFieldsComponent, RibbonInsertSectionComponent, RibbonMotionPathGalleryComponent, RibbonParagraphControlsComponent, RibbonPrimaryRowComponent, RibbonReviewSectionComponent, RibbonShapeExtrasComponent, RibbonSlideshowSectionComponent, RibbonTransitionsSectionComponent, RibbonViewSectionComponent, RulerGuidesService, SEQUENCE_OPTIONS, SEVERITY_GROUPS, SEVERITY_LABELS, SHORTCUT_REFERENCE_ITEMS, SLIDE_TRANSITION_KEYFRAMES, DEFAULT_PALETTE as SMARTART_DEFAULT_PALETTE, PALETTES as SMARTART_PALETTES, SMART_ART_COLOR_SCHEMES, SMART_ART_STYLE_OPTIONS, SUB_ITEM_LABEL, SVG_WARP_PRESETS, SWIPE_MAX_VERTICAL_PX, SWIPE_THRESHOLD_PX, SelectionPaneComponent, SetUpSlideShowDialogComponent, SettingsAppearanceTabComponent, SettingsDialogComponent, SettingsLanguageTabComponent, ShareDialogComponent, ShortcutPanelComponent, ShowOptionsFieldsetComponent, ShowSlidesFieldsetComponent, SignatureStrippedDialogComponent, SignaturesPanelComponent, SignaturesService, SlideBackgroundCardComponent, SlideCanvasComponent, SlideDefaultInspectorComponent, SlideDiffChangesComponent, SlideDiffRowComponent, SlideDiffThumbnailsComponent, SlideSizeCardComponent, SlideSorterOverlayComponent, SlideThemeOverridePanelComponent, SlideTransitionCardComponent, SlidesPanelComponent, SmartArt3DRendererComponent, SmartArt3DService, SmartArtPreviewComponent, SmartArtPropertiesComponent, SmartArtRendererComponent, StatusBarComponent, TABLE_STRUCTURE_TOGGLES, TEXT_3D_BOTTOM_BEVEL_KEYS, TEXT_3D_TOP_BEVEL_KEYS, TEXT_DIRECTION_OPTIONS, THEME_CATALOG, TIMING_CURVE_OPTIONS, TRIGGER_OPTIONS, TYPE_LABELS, TableCellAdvancedFillComponent, TableCellFormattingComponent, TableDataEditorComponent, TablePropertiesComponent, TableRendererComponent, TableResizeOverlayComponent, TableSelectionService, TagsCardComponent, Text3DBevelSectionComponent, Text3DPanelComponent, TextAdvancedPanelComponent, ThemeEditorFieldsComponent, ThemeGalleryComponent, ThemeSelectorCardComponent, TitleBarComponent, TitleBarSearchComponent, TransitionDirectionPickerComponent, TransitionPreviewComponent, VALIGN_OPTIONS, VIEWER_THEME, VersionHistoryPanelComponent, ViewerCanvasEditingService, ViewerCollabCursorService, ViewerCollaborationSessionService, ViewerCompareService, ViewerCustomShowsService, ViewerDialogsService, ViewerDocumentPropertiesService, ViewerExportService, ViewerExtraDialogsComponent, ViewerFileIOService, ViewerFindReplaceService, ViewerFormatPainterService, ViewerInspectorPanelService, ViewerKeyboardService, ViewerMobileSheetService, ViewerPresentationModeService, ViewerThemeGalleryService, ViewerTouchGesturesService, ViewerZoomService, WEBM_MIME_CANDIDATES, WriteBackScheduler, ZERO_LINE_COLOR, ZoomNavigationService, ZoomRendererComponent, ZoomTargetService, addCategory, addCommentToList, addGradientStopPatch, addItem, addSeries, addSubItem, advanceStep, affordanceElements, aiToggleVisible, alignPatch, animationFor, animationPresetLabelKey, annotationMapToInkInserts, applyAcceptedDiff, applyAnimationPreset, applyFindReplacements, applyFormatToElement, applyMove, applyResize, applyTableStylePreset, asMediaElement, assignUserColor, attachShowVisibilityPause, attachTouchGestures, axisTickValues, beginNodeEdit, bevelSizePatch, boolFromEvent, bringForward, bringToFront, buildBarActions, buildBroadcastConfig, buildBroadcastViewerUrl, buildCategoryLabels, buildCellParagraphs, buildChartViewModel, buildChatLogExport, buildChatLogMarkdown, buildChromeStyle, buildClearHyperlinkPatch, buildClickGroups, buildColStyles, buildCollaborationConfig, buildComboViewModel, buildCssGradientFromShapeStyle, buildDuotoneFilter, buildDuotoneFilterId, buildEmbeddedFontStyles, buildEquationElement, buildEquationSegment, buildFallbackViewModel, buildFontFaceRule, buildGradientFillCss, buildGridlinesAndLabels, buildHyperlinkPatch, buildInkContainerStyle, buildInkStrokes, buildLegend, buildModel3DContainerStyle, buildModel3DViewModel, buildOleActionModel, buildOleInfoRows, buildPatternFillCss, buildPrintHtmlDocument as buildPrintDocument, buildPropertiesPatch, buildRegionMapViewModel, buildSaveSlides, buildShareUrl, buildSmartArtInsertElement, buildSmartArtNodes, buildStockViewModel, buildSurfaceViewModel, buildTableViewModel, buildTreemapViewModel, buildTrimFragment, buildWaterfallViewModel, buildZeroLine, buildZoomContainerStyle, buildZoomViewModel, bulletIndentPx, canAddTopLevelNode, canGroupSelection, canRemoveTopLevelNode, canSetStrokeWidth, canStartBroadcast, canStartShare, canUngroupSelection, canUseClipboard, captionDisplayText, cellRunStyle, cellStyleToStyleMap, cellTdStyle, changeCountLabel, changeIcon, characterSpacingPatch, checkFontAvailable, clampCursorPosition, clampGifDimensions, clampIndex, clampNotesFontSize, clampScale, clampStep, clearAllLocalViewerData, clearAudienceContent, cn, collectAccessibilityIssues, collectElementText, collectSlideText, collectStoredChats, collectUsedFontFamilies, columnWidthStyle, commitNodeText, computeAlign, computeAxisTitlePrimitives, computeBarRects, computeBubbleRadius, computeCornerHandle, computeDataTablePrimitives, computeDistribute, computeDrawingViewBox, computeErrorBarPrimitives, computeFocusTargets, computeHandleBoxes, computeHandoutLayout, computeIsMobile, computeIsTablet, computeLinePoints, computeLinearRegression, computePageCount, computePieLayout, computePieSlicePath, computePieSlices, computePlotLayout, computeRSquared, computeRadarPoints, computeScatterDots, computeSelectionBoxes, computeSingleSelected, computeSlideIndices, computeSnap, computeStackedBarRects, computeStackedValueRange, computeTextLines, computeTrendlinePrimitives, computeValueRange, convertOmmlToMathMl, copyFormatFromElement, countAccessibilityIssues, countAnnotationStrokes, createAngularAiBridge, createCustomShow, createSwipeDismissDrag, createWebrtcBundle, createWebsocketBundle, cssObjectToStyleMap, currentColorScheme, currentLayout, currentStyle, defaultCssVars, defaultRadius, defaultThemeColors, deleteElementsByIds, deleteVersion as deleteRecoveryVersion, demoteNode, deriveModel3DBlobUrl, derivePresenceList, describeSmartArtBounds, disableGlowPatch, disableInnerShadowPatch, disableOuterShadowPatch, disableReflectionPatch, disableSoftEdgePatch, duplicateElementById, durationOf, effectsStateOf, enableGlowPatch, enableInnerShadowPatch, enableOuterShadowPatch, enableReflectionPatch, enableSoftEdgePatch, encodeGif, endShowMediaCleanup, estimatePageCount, evenColumnWidths, evenRowHeights, exitPresentationFullscreen, exportAiChatLogs, extractPathPoints, eyedropperAvailable, fillColorOf, findInSlides, findOwningSlideIndex, findSlideIndexByElementId, firstVisibleIndex, fitPolynomial, fitZoom, focusTargetChips, fontMimeForFormat, fontSizeOf, formatAutoNumber, formatAxisValue, formatBytes, formatCursorLabel, formatElapsed, formatFileSize, formatPropertyDate, formatTime, fpsToFrameIntervalMs, generateBroadcastRoomId, generateCommentId, generateCustomShowId, generatePressureCircles, generateTicks, getClrChangeParams, getContainerStyle, getDuotoneFilterDef, getImageSrc, getLocalStorageUsageSummary, getOleAriaLabel, getOleBadgeLabel, getOleDisplayName, getOleDownloadFileName, getOleTypeColor, getOleTypeLabel, getPasswordStrength, getPatternSvg, getPlaceholderStyle, getVersions as getRecoveryVersions, getResolvedShapeClipPath, getResolvedShapeClipPathFor, getShapeFillStrokeStyle, getSlideBackgroundStyle, getSlideTransitionAnimations, getSmartArtNodeBounds, getSpeechRecognitionCtor, getTextBlockStyle, getTextWarp, getTouchDistance, getWarpCategory, getWarpPath, gradientStateFromStyle, gradientStateOf, gradientStatePatch, gridColumns, groupElements, groupIssuesBySeverity, hasAnimation, hasCopyableFormat, hasExistingLink, hasExitedFullscreen, hasGradientFill, hasPressureVariation, hasVisibleSlideAfter, headerLabel, imageDimensions, inkViewBox, insertTableElementColumn as insertColumn, insertTableElementRow as insertRow, interpolateWidth, isAudienceTab, isBold, isBrowserOpenableMime, isChildNode, isElementInteractive, isInjectableUrl, isItalic, isPpactionUrl, isPresenterMessage, isSigned, isTextElement, isTwoTableFocus, isUnderline, isUrlSafe, isValidRoomId, isViewportBackgroundPressTarget, isZoomActivationKey, issueTrackKey, issueTypeLabel, keyToLabel, lastVisibleIndex, latexToMathml, linePointsToSvgString, lineSpacingPatch, loadAudienceContent, mergeCaptionResults, mergeDown, mergeRight, mergeSelection, moveElementBy, moveNodeDown, moveNodeUp, msToFrameDelayCs, narrowToCircle, narrowToPolygon, narrowToRect, newChartElement, newEquationElement, newPresetShapeElement, newShapeElement, newSmartArtElement, newTableElement, newTextElement, nextVisibleIndex, nodeBold, nodeEditBox, nodeFillColor, nodeFontColor, nodeIdFromKey, nodeItalic, nodeStyle, normalizeFontFormat, normalizeSlidesPerPage, normalizeValue, numFromEvent, ommlToMathml, ooxmlDashToCssBorderStyle, openNativeEyeDropper, overallStatus, paletteColor, parseAudienceNonce, parseNodeTextarea, partitionSlides, patchChartData, patchChartStyle, patchTableData, patchTextStyle, patternPresetOptions, pendingElementStyles, pickColorByClickFallback, pickFile, pickSupportedMimeType, planGifFrames, planVideoSegments, pointsToSvgPathD, presenceToCursors, presentationStageStyle, presenterTimerProgress, presetByLayout, presetsForCategory, pressuresToWidths, prevVisibleIndex, projectDrawingShapes, promoteNode, provideViewerTheme, radarAngle, radarRingPoints, readAsDataUrl, recordWebm, redistributeColumnWidth, registerCrossSlideAudio, removeAnimation, removeCategory, removeTableElementColumn as removeColumn, removeCommentFromList, removeElementAnimation, removeGradientStopPatch, removeNode, removeTableElementRow as removeRow, removeSeries, renderToCanvas, reorderAnimationDown, reorderAnimationUp, replaceInSlides, replaceMatch, requestPresentationFullscreen, resizeElement, resolveCaptionTracks, resolveChartKind, resolveFontVariant, resolveHyperlinkHref, resolveInteractiveElementId, resolveMediaSrc, resolveOleType, resolveParagraphBullet, resolvePresenterNotes, resolveProfileInitial, resolveRegionCode, resolveSlideAutoAdvanceMs, resolvePalette as resolveSmartArtPalette, resolveThemeCatalogEntry, resolveTransitionDuration, revealedElementStyles, routeOrthogonalConnector, rowStyle, rulerDragToGuidePosition, rulerHighlight, rulerStripTicks, sampleColorFromSlide, sanitizeColor, sanitizeSlideIndex, sanitizeUserName, saveViewerProfile, scanAvailableFonts, searchSlides, seedBroadcastFields, seedHyperlinkDraft, seedPropertiesDraft, seedShareFields, segmentFrameCount, selectValue, sendBackward, sendToBack, sequentialColorScale, serializeWriteBack, seriesColor, setAnimationEmphasis, setAnimationEntrance, setAnimationExit, setAxis, setAxisLogScale, setAxisTitleStyle, setCategoryLabel, setCellText, setColorScheme, setDataLabels, setDataPointExplosion, setDataPointFill, setDataPointLabel, setDataPointMarker, setDelay, setDirection, setDuration, setElementPosition, setGridlineStyle, setLayout, setLegend, setNodeStyle, setNodeText, setRepeatCount, setRepeatMode, setSequence, setSeriesChartType, setSeriesColor, setSeriesErrorBars, setSeriesMarker, setSeriesName, setSeriesTrendline, setSeriesValue, setStyle, setTimingCurve, setTitle, setTrigger, setTriggerShapeId, shapeStylePatch, sheetAfterNavigate, shouldBlockClickAdvance, shouldUseSvgWarp, showDirectionPicker, showsTemplateAffordance, signatureCountLabel, signatureKey, signatureTimestamp, signerName, statusLabel as slideDiffStatusLabel, slideNumberOf, smartArtNodes, paletteColour as smartArtPaletteColour, snapToGridStep, splitCursorCell, splitMergedCell, statusKind, statusLabel$1 as statusLabel, storeAudienceContent, stringFromEvent, strokeColorOf, strokeToInkElement, strokeWidthOf, styleShadowFilter, textAdvancedPatch, textAdvancedStateFromStyle, textAdvancedStateOf, textColorOf, textDirectionPatch, textStyleOf, textStylePatch, themeStyle, themeToCssVars, thumbnailHeight, thumbnailZoom, toggleCommentResolvedInList, toggleNodeBold, toggleNodeItalic, toggleSheet, topLevelNodeCount, transformSelectedTextCase, translationsEn, ungroupElements, updateElementById, updateGlowPatch, updateGradientStopPatch, updateInnerShadowPatch, updateOuterShadowPatch, updateReflectionPatch, vAlignPatch, validatePassword, validatePrintSettings, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, waypointsToPathD, worstStatus, zoomTargetSlideIndex };
19257
+ export type { AccessibilityIssueGroup, AccountAuthConfig, ActionDescriptor, AiCanvasHighlight, AiChatInitState, AiHistoryInitDeps, AiLogChat, AiLogExport, AiLogFormat, AiLogMessage, AiPanelSelectionAccessors, AlignBox, AlignMode, AnimationClickGroup, AnimationGroup, AnimationPresetCategory, AnimationPresetEntry, AnimationPresetPick, AnnotationInkInsert, AnnotationStroke, AttachTouchGesturesConfig, AwarenessLike, BarRect, Box, BridgeDeps, BroadcastConfig, BroadcastDefaults, CSSProperties, CanvasSize, CellCoord, CellParagraph, CellTextRun, ChartPartRef, ChartPartSelection, ChartValueDrag, ChartViewModel, ClassValue, ClrChangeParams, CollaborationConfig, CollaborationRole, RouterRect as ConnectorObstacle, RouterPoint as ConnectorPoint, ConnectorRouting, CopiedFormat, CornerHandleBox, CustomShow, CustomThemeEdit, DestroyableYDoc, DiagonalBorderInfo, DistributeMode, DocumentProperties, DrawingViewBox, DuotoneFilterDef, EffectsState, EmbeddedFontStyles, EquationTemplate, EyedropperResult, FindOptions, FindResult, FocusChip, FocusSelectionInput, GifFrame, GifFramePlan, GifPlanOptions, GlowState, GradientState, GradientStop$1 as GradientStop, GroupResult, HandleBox, HandoutSlidesPerPage, HyperlinkDraft, InkPoint, InkStroke, InlineEditState, InnerShadowState, LegendEntry, LinePoint, LinearFit, LocalIdentity, LocalStorageUsageSummary, LocaleCatalogEntry, MobileSheetKey, Model3DViewModel, MotionPathColumn, MotionPathEntry, NodeEditBox, NotesSegmentViewModel, ObjectUrlFactory, OleActionModel, OleInfoRow, OuterShadowState, OutlineCommit, OverallSignatureStatus, PartitionedSlides, PathPoint, PieSliceGeometry, PieSliceOptions, PlotLayout, PlotLayoutOptions, PositionUpdate, PowerPointViewerAPI, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiElementUpdate, PptxAiToolName, PptxAiUIMessage, PptxAiWritePolicy, PresentToolbarAction, PresentationTool, PresenterExitMessage, PresenterMessage, PresenterNotes, PresenterSlideChangeMessage, PresenterTimerProgress, PressureCircle, PrintColorMode, PrintHtmlDocumentOptions as PrintDocumentOptions, PrintOrientation, PrintSettings, PrintSlideRange, PrintWhat, PropertiesDraft, ProposalView, ProviderBundle, ProviderLike, RadarPoint, RecordWebmOptions, RecoveryVersion, ReflectionState, RemoteCursor, SanitizedPresence as RemotePresence, RenderedShape, ReplaceResult, ResizeHandle, ResolvedCaptionTrack, ResolvedFontVariant, ResolvedOleType, RulerUnit, ScatterDot, SelectionBox, ShapeStyleChanges, ShareDefaults$1 as ShareDefaults, ShareFormFields, ShortcutReferenceItem, SignatureStatusKind, SlideInspectorTab, SlideTransitionAnimations, SmartArtInsertEvent, SmartArtNodeBounds, SnapBox, SnapGuide, SnapResult, SoftEdgeState, SpeechAlternative, SpeechRecognitionCtor, SpeechRecognitionEventLite, SpeechRecognitionLite, SpeechResult, SpeechResultList, SpeechSupportState, StagedProposal, StrokeToInkElementOpts, StyleMap, SupportedChartKind, SvgAreaGradient, SvgCircle, SvgLine, SvgPath, SvgPolygon, SvgPolyline, SvgPrimitive, SvgRect, SvgText, SwipeDismissDrag, TableBooleanFlag, TableCellSelection, TableCellViewModel, TableRowViewModel, TemplateElementsBySlideId, Text3DBevelKeys, TextAdvancedChanges, TextAdvancedState, TextStyleChanges, TextWarpCssDef, TextWarpDef, TextWarpPathDef, ThemeCatalogEntry, Tick, ToolbarActionId, TouchGestureCallbacks, TranslationKey, UngroupResult, ValueRange, VideoPlanOptions, VideoSegmentPlan, ViewerMode, ViewerProfile, ViewerSettings, ViewerTheme, ViewerThemeColors, ZoomTranslate, ZoomViewModel };