@office-kit/pptx 0.22.0 → 0.24.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.
@@ -329,6 +329,17 @@ interface ShadowOptions {
329
329
  readonly alignment?: 'tl' | 't' | 'tr' | 'l' | 'ctr' | 'r' | 'bl' | 'b' | 'br';
330
330
  /** Whether the shadow rotates with its shape; defaults to false. */
331
331
  readonly rotateWithShape?: boolean;
332
+ /**
333
+ * Horizontal scale (`sx`); defaults to one. The reference desktop app's Size field sets
334
+ * both scales, and its perspective presets flatten the shadow with `sy`.
335
+ */
336
+ readonly scaleX?: number;
337
+ /** Vertical scale (`sy`); defaults to one. Negative values mirror vertically. */
338
+ readonly scaleY?: number;
339
+ /** Horizontal skew (`kx`) in degrees, strictly between -90 and 90. */
340
+ readonly skewX?: number;
341
+ /** Vertical skew (`ky`) in degrees, strictly between -90 and 90. */
342
+ readonly skewY?: number;
332
343
  }
333
344
  /** Character or shape inner-shadow parameters from `<a:innerShdw>`. */
334
345
  interface InnerShadowOptions {
@@ -406,7 +417,7 @@ interface GradientStop {
406
417
  readonly colorTransforms?: readonly ColorTransform[];
407
418
  /** Opacity from 0 (transparent) to 1 (opaque). */
408
419
  readonly opacity?: number;
409
- /** PowerPoint brightness from -1 (black) to 1 (white); 0 leaves the color unchanged. */
420
+ /** The reference desktop app's brightness from -1 (black) to 1 (white); 0 leaves the color unchanged. */
410
421
  readonly brightness?: number;
411
422
  }
412
423
  interface GradientFillOptions {
@@ -444,7 +455,7 @@ interface GradientFillOptions {
444
455
  };
445
456
  /**
446
457
  * Gradient tile bounds as fractional insets from the shape's edges.
447
- * Negative values extend the tile beyond that edge. Mac PowerPoint uses
458
+ * Negative values extend the tile beyond that edge. The reference desktop app on Mac uses
448
459
  * right/bottom -1 for its bottom-right radial direction. Mirrors `<a:tileRect>`.
449
460
  */
450
461
  readonly tileRect?: GradientFillOptions['focus'];
@@ -476,6 +487,39 @@ interface PatternFillOptions {
476
487
  readonly backgroundTransforms?: readonly ColorTransform[];
477
488
  }
478
489
  //#endregion
490
+ //#region src/internal/drawingml/stroke.d.ts
491
+ /**
492
+ * A non-solid line paint — the fill choice of `CT_LineProperties` other than
493
+ * `<a:solidFill>` (which `color` spells) and `<a:noFill>`. Only gradients are
494
+ * modelled; the reference desktop app's Format pane offers no other kind for a line.
495
+ */
496
+ type LineFill = {
497
+ readonly kind: 'gradient';
498
+ } & GradientFillOptions;
499
+ /** A line paint read back from a deck; stop colors widen to `string`. */
500
+ type ReadLineFill = {
501
+ readonly kind: 'gradient';
502
+ } & ReadGradientFill;
503
+ /**
504
+ * ECMA-376 §20.1.10.49 `ST_PresetLineDashVal` tokens. The reference desktop app's
505
+ * "Dash type" dropdown maps to these.
506
+ */
507
+ type LineDash = 'solid' | 'dot' | 'dash' | 'lgDash' | 'dashDot' | 'lgDashDot' | 'lgDashDotDot' | 'sysDash' | 'sysDot' | 'sysDashDot' | 'sysDashDotDot';
508
+ /** ECMA-376 §20.1.10.39 `ST_LineEndType`. */
509
+ type LineEndType = 'none' | 'triangle' | 'stealth' | 'diamond' | 'oval' | 'arrow';
510
+ /** ECMA-376 `ST_LineEndWidth` / `ST_LineEndLength`. */
511
+ type LineEndSize = 'sm' | 'med' | 'lg';
512
+ interface ArrowOptions {
513
+ readonly type: LineEndType;
514
+ readonly width?: LineEndSize;
515
+ readonly length?: LineEndSize;
516
+ }
517
+ /**
518
+ * The reference desktop app's Sketched style presets ([MS-ODRAWXML] §2.38,
519
+ * `EG_LineSketchType`), named after their `ask:lineSketch*` elements.
520
+ */
521
+ type LineSketch = 'curved' | 'freehand' | 'scribble';
522
+ //#endregion
479
523
  //#region src/internal/drawingml/text-format.d.ts
480
524
  interface TextFormat {
481
525
  /** Latin font family (`Calibri`, `Arial`, ...). Sets `<a:latin>`. */
@@ -502,7 +546,7 @@ interface TextFormat {
502
546
  color?: Color | null;
503
547
  /**
504
548
  * Ordered adjustments to `color` (`<a:lumMod>`, `<a:tint>`, `<a:alpha>`,
505
- * ...), written as children of its color element — PowerPoint's theme
549
+ * ...), written as children of its color element — the reference desktop app's theme
506
550
  * tints, such as Accent 2 Lighter 60%. Same field as on gradient stops;
507
551
  * requires `color`, and replaces any transforms the run's color had.
508
552
  */
@@ -512,7 +556,11 @@ interface TextFormat {
512
556
  * fill. Both are the same OOXML fill choice, so supplying both is rejected.
513
557
  */
514
558
  textFill?: TextFill;
515
- bold?: boolean;
559
+ /**
560
+ * `null` removes `b`, so the run inherits its weight again; `false` writes
561
+ * `b="0"`, which overrides an inherited bold.
562
+ */
563
+ bold?: boolean | null;
516
564
  italic?: boolean;
517
565
  /**
518
566
  * Underline style. `true` is shorthand for `'sng'` (single). Pass the
@@ -534,21 +582,22 @@ interface TextFormat {
534
582
  strike?: boolean | string;
535
583
  /**
536
584
  * Character spacing in 1/100 points (`0` = default). Negative values
537
- * tighten, positive values loosen. Mirrors `<a:rPr spc="…"/>`.
585
+ * tighten, positive values loosen. Mirrors `<a:rPr spc="…"/>`. `null`
586
+ * removes it, so the run inherits its spacing again.
538
587
  */
539
- spc?: number;
588
+ spc?: number | null;
540
589
  /**
541
590
  * Kerning threshold in 1/100 points (`ST_TextNonNegativePoint`, the same
542
591
  * unit as `spc`): `0` disables kerning, `1200` = apply kerning for runs
543
- * ≥12pt. Mirrors `<a:rPr kern="…"/>`. Mac PowerPoint was observed to
592
+ * ≥12pt. Mirrors `<a:rPr kern="…"/>`. The reference desktop app on Mac was observed to
544
593
  * save the value as `kern="0"` when its Use kerning checkbox is cleared.
545
594
  */
546
595
  kern?: number;
547
- /** Normalize character heights (`<a:rPr normalizeH>`; PowerPoint's Equalize character height). */
596
+ /** Normalize character heights (`<a:rPr normalizeH>`; the reference desktop app's Equalize character height). */
548
597
  normalizeHeight?: boolean;
549
598
  /**
550
599
  * Baseline offset as a fraction of 1 (`0.3` = superscript ~30% up,
551
- * `-0.25` = subscript). PowerPoint emits ST_Percentage; this getter
600
+ * `-0.25` = subscript). The reference desktop app emits ST_Percentage; this getter
552
601
  * returns the unit-fraction form for ergonomic comparisons.
553
602
  */
554
603
  baseline?: number;
@@ -583,11 +632,22 @@ interface TextFormat {
583
632
  /** Reflection below the glyphs — `<a:reflection>` in the run's effect list. */
584
633
  reflection?: ReflectionOptions | null;
585
634
  }
635
+ /**
636
+ * Non-solid glyph fill. `none` is `<a:noFill>` (glyphs show only their
637
+ * outline); `image` is `<a:blipFill>`, the picture stretched over the text
638
+ * block — the reference desktop app's Picture or texture fill. Its `bytes` must be PNG, JPEG,
639
+ * GIF, BMP, TIFF or WebP, and each edit embeds them once per part.
640
+ */
586
641
  type TextFill = ({
587
642
  readonly kind: 'gradient';
588
643
  } & GradientFillOptions) | ({
589
644
  readonly kind: 'pattern';
590
- } & PatternFillOptions);
645
+ } & PatternFillOptions) | {
646
+ readonly kind: 'none';
647
+ } | {
648
+ readonly kind: 'image';
649
+ readonly bytes: Uint8Array;
650
+ };
591
651
  type ReadTextFill = ({
592
652
  readonly kind: 'gradient';
593
653
  } & ReadGradientFill) | {
@@ -597,6 +657,16 @@ type ReadTextFill = ({
597
657
  readonly background: string;
598
658
  readonly foregroundTransforms?: PatternFillOptions['foregroundTransforms'];
599
659
  readonly backgroundTransforms?: PatternFillOptions['backgroundTransforms'];
660
+ } | {
661
+ readonly kind: 'none';
662
+ } | {
663
+ readonly kind: 'image';
664
+ /**
665
+ * The picture, when the reader can reach the part that holds it — the
666
+ * run's own slide. A picture inherited from a layout or master, or one
667
+ * behind a broken relationship, reads without bytes.
668
+ */
669
+ readonly bytes?: Uint8Array;
600
670
  };
601
671
  /** A run's outline: `CT_LineProperties` as far as text uses it. */
602
672
  interface TextOutline {
@@ -604,15 +674,22 @@ interface TextOutline {
604
674
  readonly color?: Color;
605
675
  /** Ordered adjustments to `color`, as on `TextFormat.colorTransforms`. Requires `color`. */
606
676
  readonly colorTransforms?: readonly ColorTransform[];
607
- /** Line width in EMU. PowerPoint's thinnest visible text outline is 9525 (0.75pt). */
677
+ /** Line width in EMU. The reference desktop app's thinnest visible text outline is 9525 (0.75pt). */
608
678
  readonly widthEmu?: number;
679
+ /**
680
+ * Gradient outline (`<a:gradFill>` in the run's `<a:ln>`), as on
681
+ * `setShapeStroke`. Exclusive with `color`.
682
+ */
683
+ readonly fill?: LineFill;
609
684
  }
610
685
  /**
611
686
  * A run format read back from a deck. `color` and `highlight` widen to
612
687
  * `string`: when no theme is supplied, or a token is not in the scheme, the
613
688
  * readers surface the raw `<a:schemeClr val>` token as-is.
614
689
  */
615
- type ReadTextFormat = Omit<TextFormat, 'color' | 'textFill' | 'underlineColor' | 'highlight' | 'outline' | 'shadow' | 'innerShadow' | 'glow' | 'reflection'> & {
690
+ type ReadTextFormat = Omit<TextFormat, 'bold' | 'spc' | 'color' | 'textFill' | 'underlineColor' | 'highlight' | 'outline' | 'shadow' | 'innerShadow' | 'glow' | 'reflection'> & {
691
+ bold?: boolean;
692
+ spc?: number;
616
693
  color?: string | null;
617
694
  underlineColor?: string | null;
618
695
  highlight?: string | null;
@@ -630,8 +707,9 @@ type ReadTextFormat = Omit<TextFormat, 'color' | 'textFill' | 'underlineColor' |
630
707
  textFill?: ReadTextFill;
631
708
  };
632
709
  /** A run outline read back from a deck. `color` widens for the same reason. */
633
- type ReadTextOutline = Omit<TextOutline, 'color'> & {
710
+ type ReadTextOutline = Omit<TextOutline, 'color' | 'fill'> & {
634
711
  readonly color?: string;
712
+ readonly fill?: ReadLineFill;
635
713
  };
636
714
  /**
637
715
  * Converts a format read back from a deck into one a writer accepts. The
@@ -677,7 +755,7 @@ type ParagraphAlignmentToken = (typeof ALIGNMENT_TOKENS)[number];
677
755
  interface RunSpec {
678
756
  /**
679
757
  * Run text, written verbatim — unlike `setShapeText`, newlines are not
680
- * split into paragraphs (PowerPoint shows a CR LF inside a run as a line
758
+ * split into paragraphs (the reference desktop app shows a CR LF inside a run as a line
681
759
  * break, which some exporters rely on).
682
760
  */
683
761
  readonly text: string;
@@ -695,7 +773,7 @@ interface ParagraphSpec {
695
773
  }
696
774
  //#endregion
697
775
  //#region src/internal/drawingml/text-3d.d.ts
698
- /** ECMA-376 `ST_PresetCameraType`; PowerPoint's flat WordArt uses `'orthographicFront'`. */
776
+ /** ECMA-376 `ST_PresetCameraType`; the reference desktop app's flat text-art presets use `'orthographicFront'`. */
699
777
  type CameraPreset = (typeof CAMERA_PRESETS)[number];
700
778
  /** ECMA-376 `ST_LightRigType` (`'threePt'`, `'soft'`, `'harsh'`, ...). */
701
779
  type LightRigType = (typeof LIGHT_RIG_TYPES)[number];
@@ -721,6 +799,13 @@ interface LightRig {
721
799
  /** `<a:scene3d>`: the camera and light the 3-D text is rendered with. */
722
800
  interface Scene3D {
723
801
  readonly camera: CameraPreset;
802
+ /**
803
+ * The camera's `<a:rot>`, which overrides the preset's orientation —
804
+ * the reference desktop app's X / Y / Z Rotation fields.
805
+ */
806
+ readonly cameraRotation?: Rotation3D;
807
+ /** The camera's field of view (`fov`) in degrees, `[0, 180]`; the reference desktop app's Perspective field. */
808
+ readonly fieldOfViewDeg?: number;
724
809
  readonly lightRig: LightRig;
725
810
  }
726
811
  /** `CT_Bevel`. Omitted fields take the schema defaults: `circle`, 76200 × 76200 EMU. */
@@ -730,7 +815,7 @@ interface Bevel {
730
815
  readonly heightEmu?: number;
731
816
  }
732
817
  /**
733
- * 3-D on a text body — what PowerPoint writes for WordArt bevels. `scene`
818
+ * 3-D on a text body — what the reference desktop app writes for text-art bevels. `scene`
734
819
  * becomes `<a:scene3d>`; the other fields become `<a:sp3d>`, written when any
735
820
  * of them is set.
736
821
  */
@@ -738,8 +823,18 @@ interface Text3D {
738
823
  readonly scene?: Scene3D;
739
824
  /** Top bevel (`<a:bevelT>`). */
740
825
  readonly bevelTop?: Bevel;
826
+ /** Bottom bevel (`<a:bevelB>`). */
827
+ readonly bevelBottom?: Bevel;
741
828
  /** Extrusion depth (`extrusionH`) in EMU. */
742
829
  readonly extrusionHeightEmu?: number;
830
+ /** Extrusion color (`<a:extrusionClr>`). Same accepted forms as `TextFormat.color`. */
831
+ readonly extrusionColor?: Color;
832
+ /** Ordered adjustments to `extrusionColor`. Requires `extrusionColor`. */
833
+ readonly extrusionColorTransforms?: readonly ColorTransform[];
834
+ /** Contour width (`contourW`) in EMU. */
835
+ readonly contourWidthEmu?: number;
836
+ /** Distance from the ground (`z`) in EMU; may be negative. */
837
+ readonly distanceFromGroundEmu?: number;
743
838
  /** Surface material (`prstMaterial`). */
744
839
  readonly material?: PresetMaterial;
745
840
  /** Contour color (`<a:contourClr>`). Same accepted forms as `TextFormat.color`. */
@@ -747,26 +842,14 @@ interface Text3D {
747
842
  /** Ordered adjustments to `contourColor`. Requires `contourColor`. */
748
843
  readonly contourColorTransforms?: readonly ColorTransform[];
749
844
  }
750
- /** A text body's 3-D read back from a deck; `contourColor` is the raw `#RRGGBB` or scheme token. */
751
- type ReadText3D = Omit<Text3D, 'contourColor'> & {
752
- readonly contourColor?: string;
753
- };
754
- //#endregion
755
- //#region src/internal/drawingml/stroke.d.ts
756
845
  /**
757
- * ECMA-376 §20.1.10.49 `ST_PresetLineDashVal` tokens. PowerPoint's
758
- * "Dash type" dropdown maps to these.
846
+ * A 3-D read back from a deck; `contourColor` and `extrusionColor` are the raw
847
+ * `#RRGGBB` or scheme token.
759
848
  */
760
- type LineDash = 'solid' | 'dot' | 'dash' | 'lgDash' | 'dashDot' | 'lgDashDot' | 'lgDashDotDot' | 'sysDash' | 'sysDot' | 'sysDashDot' | 'sysDashDotDot';
761
- /** ECMA-376 §20.1.10.39 `ST_LineEndType`. */
762
- type LineEndType = 'none' | 'triangle' | 'stealth' | 'diamond' | 'oval' | 'arrow';
763
- /** ECMA-376 `ST_LineEndWidth` / `ST_LineEndLength`. */
764
- type LineEndSize = 'sm' | 'med' | 'lg';
765
- interface ArrowOptions {
766
- readonly type: LineEndType;
767
- readonly width?: LineEndSize;
768
- readonly length?: LineEndSize;
769
- }
849
+ type ReadText3D = Omit<Text3D, 'contourColor' | 'extrusionColor'> & {
850
+ readonly contourColor?: string;
851
+ readonly extrusionColor?: string;
852
+ };
770
853
  //#endregion
771
854
  //#region src/internal/drawingml/custom-geometry.d.ts
772
855
  /** A point in the path's own coordinate space, fully evaluated. */
@@ -837,6 +920,14 @@ interface CustomGeometry {
837
920
  readonly textRect: GeomTextRect | null;
838
921
  }
839
922
  //#endregion
923
+ //#region src/internal/drawingml/builtin-picture-styles.generated.d.ts
924
+ /** The reference desktop app's built-in picture styles, in the order of its Picture Styles gallery. */
925
+ declare const BUILTIN_PICTURE_STYLES: readonly ["Simple Frame, White", "Beveled Matte, White", "Metal Frame", "Drop Shadow Rectangle", "Reflected Rounded Rectangle", "Soft Edge Rectangle", "Double Frame, Black", "Thick Matte, Black", "Simple Frame, Black", "Beveled Oval, Black", "Compound Frame, Black", "Moderate Frame, Black", "Center Shadow Rectangle", "Rounded Diagonal Corner, White", "Snip Diagonal Corner, White", "Moderate Frame, White", "Rotated, White", "Perspective Shadow, White", "Relaxed Perspective, White", "Soft Edge Oval", "Bevel Rectangle", "Bevel Perspective", "Reflected Perspective Right", "Bevel Perspective Left, White", "Reflected Bevel, Black", "Reflected Bevel, White", "Metal Rounded Rectangle", "Metal Oval"];
926
+ //#endregion
927
+ //#region src/internal/drawingml/picture-styles.d.ts
928
+ /** English name of one of the reference desktop app's built-in picture styles (its gallery tooltip). */
929
+ type BuiltinPictureStyleName = (typeof BUILTIN_PICTURE_STYLES)[number];
930
+ //#endregion
840
931
  //#region src/internal/drawingml/geometry.d.ts
841
932
  interface Position {
842
933
  /** Left edge offset from the slide origin, in EMU. */
@@ -851,43 +942,399 @@ interface Size {
851
942
  readonly h: number;
852
943
  }
853
944
  //#endregion
945
+ //#region src/internal/presentationml/builtin-table-styles.generated.d.ts
946
+ /** The reference desktop app’s built-in table styles, in the order of its Table Styles gallery. */
947
+ declare const BUILTIN_TABLE_STYLES: readonly [{
948
+ readonly id: "{2D5ABB26-0587-4C30-8999-92F81FD0307C}";
949
+ readonly name: "No Style, No Grid";
950
+ readonly category: "bestMatch";
951
+ }, {
952
+ readonly id: "{3C2FFA5D-87B4-456A-9821-1D502468CF0F}";
953
+ readonly name: "Themed Style 1 - Accent 1";
954
+ readonly category: "bestMatch";
955
+ }, {
956
+ readonly id: "{284E427A-3D55-4303-BF80-6455036E1DE7}";
957
+ readonly name: "Themed Style 1 - Accent 2";
958
+ readonly category: "bestMatch";
959
+ }, {
960
+ readonly id: "{69C7853C-536D-4A76-A0AE-DD22124D55A5}";
961
+ readonly name: "Themed Style 1 - Accent 3";
962
+ readonly category: "bestMatch";
963
+ }, {
964
+ readonly id: "{775DCB02-9BB8-47FD-8907-85C794F793BA}";
965
+ readonly name: "Themed Style 1 - Accent 4";
966
+ readonly category: "bestMatch";
967
+ }, {
968
+ readonly id: "{35758FB7-9AC5-4552-8A53-C91805E547FA}";
969
+ readonly name: "Themed Style 1 - Accent 5";
970
+ readonly category: "bestMatch";
971
+ }, {
972
+ readonly id: "{08FB837D-C827-4EFA-A057-4D05807E0F7C}";
973
+ readonly name: "Themed Style 1 - Accent 6";
974
+ readonly category: "bestMatch";
975
+ }, {
976
+ readonly id: "{5940675A-B579-460E-94D1-54222C63F5DA}";
977
+ readonly name: "No Style, Table Grid";
978
+ readonly category: "bestMatch";
979
+ }, {
980
+ readonly id: "{D113A9D2-9D6B-4929-AA2D-F23B5EE8CBE7}";
981
+ readonly name: "Themed Style 2 - Accent 1";
982
+ readonly category: "bestMatch";
983
+ }, {
984
+ readonly id: "{18603FDC-E32A-4AB5-989C-0864C3EAD2B8}";
985
+ readonly name: "Themed Style 2 - Accent 2";
986
+ readonly category: "bestMatch";
987
+ }, {
988
+ readonly id: "{306799F8-075E-4A3A-A7F6-7FBC6576F1A4}";
989
+ readonly name: "Themed Style 2 - Accent 3";
990
+ readonly category: "bestMatch";
991
+ }, {
992
+ readonly id: "{E269D01E-BC32-4049-B463-5C60D7B0CCD2}";
993
+ readonly name: "Themed Style 2 - Accent 4";
994
+ readonly category: "bestMatch";
995
+ }, {
996
+ readonly id: "{327F97BB-C833-4FB7-BDE5-3F7075034690}";
997
+ readonly name: "Themed Style 2 - Accent 5";
998
+ readonly category: "bestMatch";
999
+ }, {
1000
+ readonly id: "{638B1855-1B75-4FBE-930C-398BA8C253C6}";
1001
+ readonly name: "Themed Style 2 - Accent 6";
1002
+ readonly category: "bestMatch";
1003
+ }, {
1004
+ readonly id: "{9D7B26C5-4107-4FEC-AEDC-1716B250A1EF}";
1005
+ readonly name: "Light Style 1";
1006
+ readonly category: "light";
1007
+ }, {
1008
+ readonly id: "{3B4B98B0-60AC-42C2-AFA5-B58CD77FA1E5}";
1009
+ readonly name: "Light Style 1 - Accent 1";
1010
+ readonly category: "light";
1011
+ }, {
1012
+ readonly id: "{0E3FDE45-AF77-4B5C-9715-49D594BDF05E}";
1013
+ readonly name: "Light Style 1 - Accent 2";
1014
+ readonly category: "light";
1015
+ }, {
1016
+ readonly id: "{C083E6E3-FA7D-4D7B-A595-EF9225AFEA82}";
1017
+ readonly name: "Light Style 1 - Accent 3";
1018
+ readonly category: "light";
1019
+ }, {
1020
+ readonly id: "{D27102A9-8310-4765-A935-A1911B00CA55}";
1021
+ readonly name: "Light Style 1 - Accent 4";
1022
+ readonly category: "light";
1023
+ }, {
1024
+ readonly id: "{5FD0F851-EC5A-4D38-B0AD-8093EC10F338}";
1025
+ readonly name: "Light Style 1 - Accent 5";
1026
+ readonly category: "light";
1027
+ }, {
1028
+ readonly id: "{68D230F3-CF80-4859-8CE7-A43EE81993B5}";
1029
+ readonly name: "Light Style 1 - Accent 6";
1030
+ readonly category: "light";
1031
+ }, {
1032
+ readonly id: "{7E9639D4-E3E2-4D34-9284-5A2195B3D0D7}";
1033
+ readonly name: "Light Style 2";
1034
+ readonly category: "light";
1035
+ }, {
1036
+ readonly id: "{69012ECD-51FC-41F1-AA8D-1B2483CD663E}";
1037
+ readonly name: "Light Style 2 - Accent 1";
1038
+ readonly category: "light";
1039
+ }, {
1040
+ readonly id: "{72833802-FEF1-4C79-8D5D-14CF1EAF98D9}";
1041
+ readonly name: "Light Style 2 - Accent 2";
1042
+ readonly category: "light";
1043
+ }, {
1044
+ readonly id: "{F2DE63D5-997A-4646-A377-4702673A728D}";
1045
+ readonly name: "Light Style 2 - Accent 3";
1046
+ readonly category: "light";
1047
+ }, {
1048
+ readonly id: "{17292A2E-F333-43FB-9621-5CBBE7FDCDCB}";
1049
+ readonly name: "Light Style 2 - Accent 4";
1050
+ readonly category: "light";
1051
+ }, {
1052
+ readonly id: "{5A111915-BE36-4E01-A7E5-04B1672EAD32}";
1053
+ readonly name: "Light Style 2 - Accent 5";
1054
+ readonly category: "light";
1055
+ }, {
1056
+ readonly id: "{912C8C85-51F0-491E-9774-3900AFEF0FD7}";
1057
+ readonly name: "Light Style 2 - Accent 6";
1058
+ readonly category: "light";
1059
+ }, {
1060
+ readonly id: "{616DA210-FB5B-4158-B5E0-FEB733F419BA}";
1061
+ readonly name: "Light Style 3";
1062
+ readonly category: "light";
1063
+ }, {
1064
+ readonly id: "{BC89EF96-8CEA-46FF-86C4-4CE0E7609802}";
1065
+ readonly name: "Light Style 3 - Accent 1";
1066
+ readonly category: "light";
1067
+ }, {
1068
+ readonly id: "{5DA37D80-6434-44D0-A028-1B22A696006F}";
1069
+ readonly name: "Light Style 3 - Accent 2";
1070
+ readonly category: "light";
1071
+ }, {
1072
+ readonly id: "{8799B23B-EC83-4686-B30A-512413B5E67A}";
1073
+ readonly name: "Light Style 3 - Accent 3";
1074
+ readonly category: "light";
1075
+ }, {
1076
+ readonly id: "{ED083AE6-46FA-4A59-8FB0-9F97EB10719F}";
1077
+ readonly name: "Light Style 3 - Accent 4";
1078
+ readonly category: "light";
1079
+ }, {
1080
+ readonly id: "{BDBED569-4797-4DF1-A0F4-6AAB3CD982D8}";
1081
+ readonly name: "Light Style 3 - Accent 5";
1082
+ readonly category: "light";
1083
+ }, {
1084
+ readonly id: "{E8B1032C-EA38-4F05-BA0D-38AFFFC7BED3}";
1085
+ readonly name: "Light Style 3 - Accent 6";
1086
+ readonly category: "light";
1087
+ }, {
1088
+ readonly id: "{793D81CF-94F2-401A-BA57-92F5A7B2D0C5}";
1089
+ readonly name: "Medium Style 1";
1090
+ readonly category: "medium";
1091
+ }, {
1092
+ readonly id: "{B301B821-A1FF-4177-AEE7-76D212191A09}";
1093
+ readonly name: "Medium Style 1 - Accent 1";
1094
+ readonly category: "medium";
1095
+ }, {
1096
+ readonly id: "{9DCAF9ED-07DC-4A11-8D7F-57B35C25682E}";
1097
+ readonly name: "Medium Style 1 - Accent 2";
1098
+ readonly category: "medium";
1099
+ }, {
1100
+ readonly id: "{1FECB4D8-DB02-4DC6-A0A2-4F2EBAE1DC90}";
1101
+ readonly name: "Medium Style 1 - Accent 3";
1102
+ readonly category: "medium";
1103
+ }, {
1104
+ readonly id: "{1E171933-4619-4E11-9A3F-F7608DF75F80}";
1105
+ readonly name: "Medium Style 1 - Accent 4";
1106
+ readonly category: "medium";
1107
+ }, {
1108
+ readonly id: "{FABFCF23-3B69-468F-B69F-88F6DE6A72F2}";
1109
+ readonly name: "Medium Style 1 - Accent 5";
1110
+ readonly category: "medium";
1111
+ }, {
1112
+ readonly id: "{10A1B5D5-9B99-4C35-A422-299274C87663}";
1113
+ readonly name: "Medium Style 1 - Accent 6";
1114
+ readonly category: "medium";
1115
+ }, {
1116
+ readonly id: "{073A0DAA-6AF3-43AB-8588-CEC1D06C72B9}";
1117
+ readonly name: "Medium Style 2";
1118
+ readonly category: "medium";
1119
+ }, {
1120
+ readonly id: "{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}";
1121
+ readonly name: "Medium Style 2 - Accent 1";
1122
+ readonly category: "medium";
1123
+ }, {
1124
+ readonly id: "{21E4AEA4-8DFA-4A89-87EB-49C32662AFE0}";
1125
+ readonly name: "Medium Style 2 - Accent 2";
1126
+ readonly category: "medium";
1127
+ }, {
1128
+ readonly id: "{F5AB1C69-6EDB-4FF4-983F-18BD219EF322}";
1129
+ readonly name: "Medium Style 2 - Accent 3";
1130
+ readonly category: "medium";
1131
+ }, {
1132
+ readonly id: "{00A15C55-8517-42AA-B614-E9B94910E393}";
1133
+ readonly name: "Medium Style 2 - Accent 4";
1134
+ readonly category: "medium";
1135
+ }, {
1136
+ readonly id: "{7DF18680-E054-41AD-8BC1-D1AEF772440D}";
1137
+ readonly name: "Medium Style 2 - Accent 5";
1138
+ readonly category: "medium";
1139
+ }, {
1140
+ readonly id: "{93296810-A885-4BE3-A3E7-6D5BEEA58F35}";
1141
+ readonly name: "Medium Style 2 - Accent 6";
1142
+ readonly category: "medium";
1143
+ }, {
1144
+ readonly id: "{8EC20E35-A176-4012-BC5E-935CFFF8708E}";
1145
+ readonly name: "Medium Style 3";
1146
+ readonly category: "medium";
1147
+ }, {
1148
+ readonly id: "{6E25E649-3F16-4E02-A733-19D2CDBF48F0}";
1149
+ readonly name: "Medium Style 3 - Accent 1";
1150
+ readonly category: "medium";
1151
+ }, {
1152
+ readonly id: "{85BE263C-DBD7-4A20-BB59-AAB30ACAA65A}";
1153
+ readonly name: "Medium Style 3 - Accent 2";
1154
+ readonly category: "medium";
1155
+ }, {
1156
+ readonly id: "{EB344D84-9AFB-497E-A393-DC336BA19D2E}";
1157
+ readonly name: "Medium Style 3 - Accent 3";
1158
+ readonly category: "medium";
1159
+ }, {
1160
+ readonly id: "{EB9631B5-78F2-41C9-869B-9F39066F8104}";
1161
+ readonly name: "Medium Style 3 - Accent 4";
1162
+ readonly category: "medium";
1163
+ }, {
1164
+ readonly id: "{74C1A8A3-306A-4EB7-A6B1-4F7E0EB9C5D6}";
1165
+ readonly name: "Medium Style 3 - Accent 5";
1166
+ readonly category: "medium";
1167
+ }, {
1168
+ readonly id: "{2A488322-F2BA-4B5B-9748-0D474271808F}";
1169
+ readonly name: "Medium Style 3 - Accent 6";
1170
+ readonly category: "medium";
1171
+ }, {
1172
+ readonly id: "{D7AC3CCA-C797-4891-BE02-D94E43425B78}";
1173
+ readonly name: "Medium Style 4";
1174
+ readonly category: "medium";
1175
+ }, {
1176
+ readonly id: "{69CF1AB2-1976-4502-BF36-3FF5EA218861}";
1177
+ readonly name: "Medium Style 4 - Accent 1";
1178
+ readonly category: "medium";
1179
+ }, {
1180
+ readonly id: "{8A107856-5554-42FB-B03E-39F5DBC370BA}";
1181
+ readonly name: "Medium Style 4 - Accent 2";
1182
+ readonly category: "medium";
1183
+ }, {
1184
+ readonly id: "{0505E3EF-67EA-436B-97B2-0124C06EBD24}";
1185
+ readonly name: "Medium Style 4 - Accent 3";
1186
+ readonly category: "medium";
1187
+ }, {
1188
+ readonly id: "{C4B1156A-380E-4F78-BDF5-A606A8083BF9}";
1189
+ readonly name: "Medium Style 4 - Accent 4";
1190
+ readonly category: "medium";
1191
+ }, {
1192
+ readonly id: "{22838BEF-8BB2-4498-84A7-C5851F593DF1}";
1193
+ readonly name: "Medium Style 4 - Accent 5";
1194
+ readonly category: "medium";
1195
+ }, {
1196
+ readonly id: "{16D9F66E-5EB9-4882-86FB-DCBF35E3C3E4}";
1197
+ readonly name: "Medium Style 4 - Accent 6";
1198
+ readonly category: "medium";
1199
+ }, {
1200
+ readonly id: "{E8034E78-7F5D-4C2E-B375-FC64B27BC917}";
1201
+ readonly name: "Dark Style 1";
1202
+ readonly category: "dark";
1203
+ }, {
1204
+ readonly id: "{125E5076-3810-47DD-B79F-674D7AD40C01}";
1205
+ readonly name: "Dark Style 1 - Accent 1";
1206
+ readonly category: "dark";
1207
+ }, {
1208
+ readonly id: "{37CE84F3-28C3-443E-9E96-99CF82512B78}";
1209
+ readonly name: "Dark Style 1 - Accent 2";
1210
+ readonly category: "dark";
1211
+ }, {
1212
+ readonly id: "{D03447BB-5D67-496B-8E87-E561075AD55C}";
1213
+ readonly name: "Dark Style 1 - Accent 3";
1214
+ readonly category: "dark";
1215
+ }, {
1216
+ readonly id: "{E929F9F4-4A8F-4326-A1B4-22849713DDAB}";
1217
+ readonly name: "Dark Style 1 - Accent 4";
1218
+ readonly category: "dark";
1219
+ }, {
1220
+ readonly id: "{8FD4443E-F989-4FC4-A0C8-D5A2AF1F390B}";
1221
+ readonly name: "Dark Style 1 - Accent 5";
1222
+ readonly category: "dark";
1223
+ }, {
1224
+ readonly id: "{AF606853-7671-496A-8E4F-DF71F8EC918B}";
1225
+ readonly name: "Dark Style 1 - Accent 6";
1226
+ readonly category: "dark";
1227
+ }, {
1228
+ readonly id: "{5202B0CA-FC54-4496-8BCA-5EF66A818D29}";
1229
+ readonly name: "Dark Style 2";
1230
+ readonly category: "dark";
1231
+ }, {
1232
+ readonly id: "{0660B408-B3CF-4A94-85FC-2B1E0A45F4A2}";
1233
+ readonly name: "Dark Style 2 - Accent 1/Accent 2";
1234
+ readonly category: "dark";
1235
+ }, {
1236
+ readonly id: "{91EBBBCC-DAD2-459C-BE2E-F6DE35CF9A28}";
1237
+ readonly name: "Dark Style 2 - Accent 3/Accent 4";
1238
+ readonly category: "dark";
1239
+ }, {
1240
+ readonly id: "{46F890A9-2807-4EBB-B81D-B2AA78EC7F39}";
1241
+ readonly name: "Dark Style 2 - Accent 5/Accent 6";
1242
+ readonly category: "dark";
1243
+ }];
1244
+ //#endregion
1245
+ //#region src/internal/presentationml/table-styles.d.ts
1246
+ /** English name the reference desktop app writes as `styleName` for a built-in table style. */
1247
+ type BuiltinTableStyleName = (typeof BUILTIN_TABLE_STYLES)[number]['name'];
1248
+ /** One entry of {@link BUILTIN_TABLE_STYLES}. */
1249
+ type BuiltinTableStyle = (typeof BUILTIN_TABLE_STYLES)[number];
1250
+ //#endregion
1251
+ //#region src/internal/presentationml/default-masters.d.ts
1252
+ type MasterPlaceholderType = 'title' | 'body' | 'dt' | 'ftr' | 'sldNum';
1253
+ /** Insert Placeholder's menu, in the reference desktop app's order. */
1254
+ type LayoutPlaceholderKind = 'content' | 'verticalContent' | 'text' | 'verticalText' | 'picture' | 'chart' | 'table' | 'smartArt' | 'media' | 'onlineImage';
1255
+ type NotesMasterPlaceholderType = 'hdr' | 'dt' | 'sldImg' | 'body' | 'ftr' | 'sldNum';
1256
+ type HandoutMasterPlaceholderType = 'hdr' | 'dt' | 'ftr' | 'sldNum';
1257
+ //#endregion
854
1258
  //#region src/internal/presentationml/transition-builder.d.ts
1259
+ type TransitionSpeed = 'slow' | 'med' | 'fast';
855
1260
  /**
856
1261
  * Every transition effect element name in `CT_SlideTransition`'s choice
857
- * (ECMA-376 pml.xsd). The token is emitted verbatim as `<p:{token}/>`, so this
858
- * list is both the type's domain and the write-time validation domain —
859
- * keeping them one declaration stops them drifting apart.
1262
+ * (ECMA-376 pml.xsd), emitted verbatim as `<p:{token}/>`.
860
1263
  */
861
- declare const TRANSITION_EFFECTS: readonly ["blinds", "checker", "circle", "dissolve", "comb", "cover", "cut", "diamond", "fade", "newsflash", "plus", "pull", "push", "random", "randomBar", "split", "strips", "wedge", "wheel", "wipe", "zoom"];
862
1264
  /**
863
- * Transition effect token. Maps to a `<p:{token}/>` child of
864
- * `<p:transition>`, except `'none'`: that is the library-level sentinel for
865
- * "no effect element", which the schema's choice has no member for.
1265
+ * Every effect element `setSlideTransition` writes, ECMA-376 and extensions
1266
+ * alike. The list is both the type's domain and the write-time validation
1267
+ * domain — keeping them one declaration stops them drifting apart.
1268
+ */
1269
+ declare const TRANSITION_EFFECTS: readonly ["blinds", "checker", "circle", "dissolve", "comb", "cover", "cut", "diamond", "fade", "newsflash", "plus", "pull", "push", "random", "randomBar", "split", "strips", "wedge", "wheel", "wipe", "zoom", "conveyor", "doors", "ferris", "flash", "flip", "flythrough", "gallery", "glitter", "honeycomb", "pan", "prism", "reveal", "ripple", "shred", "switch", "vortex", "warp", "wheelReverse", "window", "prstTrans", "morph"];
1270
+ /**
1271
+ * Transition effect token. Maps to the `<p:{token}/>` (or `<p14:…>`,
1272
+ * `<p15:prstTrans>`, `<p159:morph>`) child of `<p:transition>`, except
1273
+ * `'none'`: that is the library-level sentinel for "no effect element", which
1274
+ * the schema's choice has no member for.
866
1275
  */
867
1276
  type TransitionEffect = 'none' | (typeof TRANSITION_EFFECTS)[number];
1277
+ /**
1278
+ * The `prst` names [MS-PPTX] §2.4.3.8 defines for `p15:prstTrans`. The
1279
+ * attribute is an `xsd:string` naming "the internal resource to use", so a
1280
+ * name outside this list is one the reference desktop app has no transition for.
1281
+ */
1282
+ declare const TRANSITION_PRESETS: readonly ["fallOver", "drape", "curtains", "wind", "prestige", "fracture", "crush", "peelOff", "pageCurlDouble", "pageCurlSingle", "airplane", "origami"];
1283
+ /** A `p15:prstTrans` preset name. */
1284
+ type TransitionPreset = (typeof TRANSITION_PRESETS)[number];
1285
+ /** ST_TransitionMorphOption ([MS-PPTX] §2.6.4.1): what Morph matches between slides. */
1286
+ type MorphOption = 'byObject' | 'byWord' | 'byChar';
868
1287
  interface TransitionOptions {
869
1288
  effect: TransitionEffect;
870
- /** Effect speed. Defaults to omitted (PowerPoint treats absence as `med`). */
871
- speed?: 'slow' | 'med' | 'fast';
1289
+ /**
1290
+ * Effect speed: 0.5 s (`fast`), 0.75 s (`med`) or 1 s (`slow`). Omitted, it
1291
+ * is the schema default `fast` (ECMA-376 pml.xsd, CT_SlideTransition).
1292
+ */
1293
+ speed?: TransitionSpeed;
872
1294
  /**
873
1295
  * Direction, valid only for effects that carry a `dir` attribute and only
874
- * within that effect's domain (validated on write):
875
- * - `blinds`/`checker`/`comb`/`randomBar`: `horz` | `vert`
876
- * - `push`/`wipe`: `l` | `r` | `u` | `d`
1296
+ * within that effect's domain (validated on write). The side tokens name
1297
+ * the way the slide moves, so the reference desktop app's "From Right" is `l`.
1298
+ * - `blinds`/`checker`/`comb`/`randomBar`/`doors`/`window`: `horz` | `vert`
1299
+ * - `push`/`wipe`/`vortex`/`pan`/`glitter`/`prism`: `l` | `r` | `u` | `d`
877
1300
  * - `cover`/`pull`: the above plus `lu` | `ru` | `ld` | `rd`
878
1301
  * - `strips`: `lu` | `ru` | `ld` | `rd`
879
- * - `zoom`/`split`: `in` | `out`
1302
+ * - `ripple`: `center` | `lu` | `ru` | `ld` | `rd`
1303
+ * - `switch`/`flip`/`ferris`/`gallery`/`conveyor`/`reveal`: `l` | `r`
1304
+ * - `zoom`/`split`/`warp`/`flythrough`/`shred`: `in` | `out`
880
1305
  * A mismatched effect/direction pair throws; on any other effect a stray
881
1306
  * `direction` is ignored.
882
1307
  */
883
1308
  direction?: string;
884
- /** For `wheel`: number of spokes (unsigned integer). Omitted means 4. */
1309
+ /** For `wheel` and `wheelReverse`: number of spokes (unsigned integer). Omitted means 4. */
885
1310
  spokes?: number;
886
1311
  /** For `split`: orientation token (`horz` / `vert`). */
887
1312
  orientation?: 'horz' | 'vert';
888
- /** For `fade`: pass `true` to fade through black. */
1313
+ /** For `fade`, `cut` and `reveal`: pass `true` to go through black. */
889
1314
  thruBlack?: boolean;
890
- /** Whether clicking advances; default `true` (PowerPoint's default). */
1315
+ /**
1316
+ * For `glitter`: `diamond` (the default) or `hexagon`. For `shred`: `strip`
1317
+ * (the default) or `rectangle` — the reference desktop app's "Strips" and "Particles".
1318
+ */
1319
+ pattern?: 'diamond' | 'hexagon' | 'strip' | 'rectangle';
1320
+ /**
1321
+ * For `prism`: the slide's content turns rather than the slide itself
1322
+ * (the reference desktop app's Rotate and Orbit, against Cube and Box).
1323
+ */
1324
+ isContent?: boolean;
1325
+ /** For `prism`: the turn faces inwards (the reference desktop app's Box and Orbit). */
1326
+ isInverted?: boolean;
1327
+ /** For `flythrough`: the slides bounce at the end. */
1328
+ hasBounce?: boolean;
1329
+ /** For `prstTrans`: which preset transition. Required for that effect. */
1330
+ preset?: TransitionPreset;
1331
+ /** For `prstTrans`: mirror the preset left to right ("Right" instead of "Left"). */
1332
+ invertX?: boolean;
1333
+ /** For `prstTrans`: mirror the preset top to bottom. */
1334
+ invertY?: boolean;
1335
+ /** For `morph`: what is matched between the slides. Defaults to `byObject`. */
1336
+ morphOption?: MorphOption;
1337
+ /** Whether clicking advances; default `true` (the reference desktop app's default). */
891
1338
  advanceOnClick?: boolean;
892
1339
  /**
893
1340
  * Milliseconds to auto-advance after this slide. Omit for click-only
@@ -895,53 +1342,157 @@ interface TransitionOptions {
895
1342
  */
896
1343
  advanceAfterMs?: number;
897
1344
  /**
898
- * Effect duration in milliseconds (PowerPoint 2010's `p14:dur`). ECMA-376
1345
+ * Effect duration in milliseconds (`p14:dur`, [MS-PPTX]). ECMA-376
899
1346
  * only has the three `speed` steps, so the transition is written as
900
- * PowerPoint writes it: an `mc:AlternateContent` whose `p14` choice carries
901
- * the duration and whose fallback carries the nearest `speed`.
1347
+ * the reference desktop app writes it:
1348
+ * - `spd` is the fastest speed at least this long (≤ 500 ms `fast`,
1349
+ * ≤ 750 ms `med`, otherwise `slow`) unless `speed` is given; a derived
1350
+ * `fast` is left out, being the schema default.
1351
+ * - A duration equal to its speed's own (500, 750 or 1000 ms) is that
1352
+ * speed alone: no `p14:dur`, and it reads back as `speed`.
1353
+ * - Any other duration is an `mc:AlternateContent` whose `p14` choice
1354
+ * carries `p14:dur` and whose fallback carries only `spd`.
902
1355
  */
903
1356
  durationMs?: number;
904
1357
  }
905
1358
  /**
906
1359
  * A transition read back from a deck. `effect` widens to `string` because a
907
1360
  * file authored elsewhere can carry an effect element this library does not
908
- * model; writing one still requires a `TransitionEffect`.
1361
+ * model; writing one still requires a `TransitionEffect`. `preset` widens the
1362
+ * same way.
909
1363
  */
910
- type SlideTransition = Omit<TransitionOptions, 'effect'> & {
1364
+ type SlideTransition = Omit<TransitionOptions, 'effect' | 'preset'> & {
911
1365
  effect: string;
1366
+ preset?: string;
1367
+ };
1368
+ //#endregion
1369
+ //#region src/internal/presentationml/animation-emphasis-options.d.ts
1370
+ /** Which way Spin turns — the reference desktop app's Effect Options "Direction". */
1371
+ type AnimationSpinDirection = 'clockwise' | 'counterclockwise';
1372
+ /**
1373
+ * Which way Grow/Shrink scales: both axes, or only the width (`'horizontal'`)
1374
+ * or only the height (`'vertical'`).
1375
+ */
1376
+ type AnimationScaleDirection = 'both' | 'horizontal' | 'vertical';
1377
+ /**
1378
+ * The colour a colour emphasis effect changes to: a theme slot or an sRGB
1379
+ * value, optionally with DrawingML colour transforms — the tints and shades
1380
+ * of a theme colour palette are `lumMod` / `lumOff` on the theme slot.
1381
+ */
1382
+ type AnimationColor = Color | {
1383
+ readonly color: Color;
1384
+ readonly colorTransforms?: readonly ColorTransform[];
912
1385
  };
913
1386
  //#endregion
914
1387
  //#region src/internal/presentationml/animation-builder.d.ts
915
1388
  /**
916
- * What kind of effect to apply.
1389
+ * What kind of effect to apply — one token per entry of the reference desktop app's Entrance,
1390
+ * Emphasis and Exit galleries, named after the gallery entry.
917
1391
  *
918
- * Entrance effects put the shape on the slide and exit effects take it off.
919
- * `spin` is the one emphasis effect modelled here: it turns a shape that is
920
- * already on the slide and leaves it exactly where it was, so it never decides
921
- * whether the shape is shown.
1392
+ * Entrance effects put the shape on the slide and end in `In` (`appear` aside);
1393
+ * exit effects take it off and end in `Out` (`disappear` aside). Emphasis
1394
+ * effects animate a shape that is already on the slide and never decide
1395
+ * whether it is shown.
1396
+ *
1397
+ * Where a gallery name would not tell two presets apart, the token does:
1398
+ * `zoomIn` is the reference desktop app's "Zoom" (preset 53, which fades as it grows) and
1399
+ * `basicZoomIn` its "Basic Zoom" (preset 23); `floatIn` / `floatOut` are
1400
+ * "Float In" / "Float Out" (preset 42) and `floatingIn` / `floatingOut` the
1401
+ * "Float" entrance and exit (preset 30).
922
1402
  */
923
- type AnimationEffect = 'appear' | 'fadeIn' | 'flyIn' | 'zoomIn' | 'disappear' | 'fadeOut' | 'flyOut' | 'zoomOut' | 'spin';
1403
+ type AnimationEffect = 'appear' | 'blindsIn' | 'checkerboardIn' | 'dissolveIn' | 'flyIn' | 'peekIn' | 'randomBarsIn' | 'shapeIn' | 'splitIn' | 'stripsIn' | 'wedgeIn' | 'wheelIn' | 'wipeIn' | 'expandIn' | 'fadeIn' | 'swivelIn' | 'zoomIn' | 'centerRevolveIn' | 'floatIn' | 'growTurnIn' | 'riseUpIn' | 'spinnerIn' | 'basicZoomIn' | 'stretchIn' | 'boomerangIn' | 'bounceIn' | 'creditsIn' | 'curveUpIn' | 'dropIn' | 'flipIn' | 'floatingIn' | 'pinwheelIn' | 'spiralIn' | 'basicSwivelIn' | 'whipIn' | 'blindsOut' | 'checkerboardOut' | 'disappear' | 'dissolveOut' | 'flyOut' | 'peekOut' | 'randomBarsOut' | 'shapeOut' | 'splitOut' | 'stripsOut' | 'wedgeOut' | 'wheelOut' | 'wipeOut' | 'contractOut' | 'fadeOut' | 'swivelOut' | 'zoomOut' | 'centerRevolveOut' | 'collapseOut' | 'floatOut' | 'shrinkTurnOut' | 'sinkDownOut' | 'spinnerOut' | 'basicZoomOut' | 'stretchyOut' | 'boomerangOut' | 'bounceOut' | 'creditsOut' | 'curveDownOut' | 'dropOut' | 'flipOut' | 'floatingOut' | 'pinwheelOut' | 'spiralOut' | 'basicSwivelOut' | 'whipOut' | 'fillColor' | 'fontColor' | 'growShrink' | 'lineColor' | 'spin' | 'transparency' | 'boldFlash' | 'brushColor' | 'complementaryColor' | 'complementaryColor2' | 'contrastingColor' | 'darken' | 'desaturate' | 'lighten' | 'objectColor' | 'pulse' | 'underline' | 'colorPulse' | 'growWithColor' | 'shimmer' | 'teeter' | 'blink' | 'boldReveal' | 'wave';
924
1404
  /**
925
1405
  * Which edge of the slide a `flyIn` comes from, or a `flyOut` leaves by —
926
- * PowerPoint's "From Bottom" / Google Slides' "Fly in from bottom".
927
- */
928
- type AnimationDirection = 'top' | 'right' | 'bottom' | 'left';
1406
+ * the reference desktop app's "From Bottom" / Google Slides' "Fly in from bottom" — or, for
1407
+ * the four corners, the corner. A wipe or a peek names an edge too; strips
1408
+ * name a corner.
1409
+ */
1410
+ type AnimationDirection = 'top' | 'right' | 'bottom' | 'left' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
1411
+ /** Which way blinds, random bars and a split run — and a checkerboard: across or down. */
1412
+ type AnimationOrientation = 'horizontal' | 'vertical';
1413
+ /** Whether a shape or split effect opens from the centre outwards or closes inwards. */
1414
+ type AnimationInOut = 'in' | 'out';
1415
+ /** The outline a `shapeIn` / `shapeOut` reveals the object through. */
1416
+ type AnimationShape = 'circle' | 'box' | 'diamond' | 'plus';
1417
+ /**
1418
+ * How an effect on a shape with text treats the text — the reference desktop app's Effect
1419
+ * Options "Sequence":
1420
+ *
1421
+ * - `'asOneObject'` animates the shape and its text together, as one effect.
1422
+ * - `'allAtOnce'` gives each paragraph an effect of its own, all starting
1423
+ * together (`<p:bldP build="allAtOnce">`).
1424
+ * - `'byParagraph'` gives each paragraph an effect of its own, one click (or
1425
+ * start condition) apiece (`<p:bldP build="p">`).
1426
+ */
1427
+ type AnimationTextBuild = 'asOneObject' | 'allAtOnce' | 'byParagraph';
929
1428
  /** When an effect runs relative to the one before it. */
930
1429
  type AnimationStartCondition = 'click' | 'withPrevious' | 'afterPrevious';
931
1430
  interface AnimationOptions {
932
1431
  /** Which preset effect to apply. */
933
1432
  readonly effect: AnimationEffect;
934
1433
  /**
935
- * Which edge of the slide a `'flyIn'` comes from, or a `'flyOut'` leaves by.
936
- * Defaults to `'bottom'`, PowerPoint's own default for the preset. Passing it
937
- * for an effect that does not fly is an error rather than a no-op: it would
938
- * otherwise read as a direction the file never records.
1434
+ * Which edge of the slide a `'flyIn'` comes from, or a `'flyOut'` leaves by
1435
+ * — any of the eight. `'wipeIn'`, `'wipeOut'`, `'peekIn'` and `'peekOut'`
1436
+ * take one of the four edges, `'stripsIn'` and `'stripsOut'` one of the four
1437
+ * corners. Defaults to the reference desktop app's own default for the preset (`'bottom'`;
1438
+ * `'bottomLeft'` for strips). Passing it for an effect that takes no
1439
+ * direction is an error rather than a no-op: it would otherwise read as a
1440
+ * direction the file never records. The same holds for the options below.
939
1441
  */
940
1442
  readonly direction?: AnimationDirection;
941
1443
  /**
942
- * Animation length in milliseconds. Defaults to 500ms. `'appear'` and
943
- * `'disappear'` are instantaneous by definition of the preset and write no
944
- * timed behaviour at all, so it does not reach them.
1444
+ * For blinds, random bars and split: which way the bars run. For a
1445
+ * checkerboard, `'horizontal'` is the reference desktop app's "Across" and `'vertical'` its
1446
+ * "Down". Defaults to `'horizontal'` (`'vertical'` for split).
1447
+ */
1448
+ readonly orientation?: AnimationOrientation;
1449
+ /**
1450
+ * For shape and split: open from the centre (`'out'`) or close in on it
1451
+ * (`'in'`). Defaults to `'in'` — `'out'` for `'shapeOut'`, as in the reference desktop app.
1452
+ */
1453
+ readonly inOut?: AnimationInOut;
1454
+ /** For `'shapeIn'` / `'shapeOut'`: the outline. Defaults to `'circle'`. */
1455
+ readonly shape?: AnimationShape;
1456
+ /** For `'wheelIn'` / `'wheelOut'`: 1, 2, 3, 4 or 8 spokes. Defaults to 1. */
1457
+ readonly spokes?: number;
1458
+ /** For `'spin'`: which way it turns. Defaults to `'clockwise'`. */
1459
+ readonly spinDirection?: AnimationSpinDirection;
1460
+ /**
1461
+ * For `'spin'`: how far it turns, in degrees. The reference desktop app's menu offers 90
1462
+ * (Quarter Spin), 180 (Half Spin), 360 (Full Spin, the default) and 720
1463
+ * (Two Spins); any positive angle can be written.
1464
+ */
1465
+ readonly spinDegrees?: number;
1466
+ /**
1467
+ * For `'growShrink'`: scale both axes (the default), or only the width
1468
+ * (`'horizontal'`) or only the height (`'vertical'`).
1469
+ */
1470
+ readonly scaleDirection?: AnimationScaleDirection;
1471
+ /**
1472
+ * For `'growShrink'`: the size to reach, in percent of the shape's own.
1473
+ * The reference desktop app's menu offers 25 (Tiny), 50 (Smaller), 150 (Larger, the
1474
+ * default) and 400 (Huge).
1475
+ */
1476
+ readonly scalePercent?: number;
1477
+ /**
1478
+ * For `'transparency'`: how transparent the shape becomes, 0–100. The reference desktop app
1479
+ * offers 25, 50 (the default), 75 and 100.
1480
+ */
1481
+ readonly transparencyPercent?: number;
1482
+ /**
1483
+ * For the colour emphasis effects — `'fillColor'`, `'fontColor'`,
1484
+ * `'lineColor'`, `'brushColor'`, `'objectColor'`, `'colorPulse'` and
1485
+ * `'growWithColor'` — the colour to change to. Defaults to Accent 2, and to
1486
+ * Background 1 for `'colorPulse'`, as the reference desktop app's gallery does.
1487
+ */
1488
+ readonly color?: AnimationColor;
1489
+ /**
1490
+ * How long the effect runs, in milliseconds. Defaults to the reference desktop app's default
1491
+ * for the preset (`defaultAnimationDurationMs`). An effect made of several
1492
+ * behaviours is scaled as a whole, the way the reference desktop app's Duration box does.
1493
+ * `'appear'` and `'disappear'` are instantaneous and write no timed
1494
+ * behaviour, so it does not reach them; `'transparency'` and `'boldReveal'`
1495
+ * hold until the end of the slide and take none.
945
1496
  */
946
1497
  readonly durationMs?: number;
947
1498
  /**
@@ -955,12 +1506,13 @@ interface AnimationOptions {
955
1506
  /** How long to wait once the start condition is met. Defaults to 0ms. */
956
1507
  readonly delayMs?: number;
957
1508
  /**
958
- * Reveal the shape's text one paragraph at a time instead of animating the
959
- * shape as a whole — PowerPoint's "By paragraph", Google Slides' "By
960
- * paragraph". Each paragraph gets its own effect with the same `start`, so
961
- * the default `'click'` advances one paragraph per click.
1509
+ * How the shape's text is animated — the reference desktop app's Effect Options "Sequence".
1510
+ * Defaults to `'asOneObject'`, the gallery's own default. `'allAtOnce'` and
1511
+ * `'byParagraph'` give every paragraph an effect of its own: started together
1512
+ * for the first, each on its own start (a click apiece by default) for the
1513
+ * second. Fill Color and Line Color animate the shape and take neither.
962
1514
  */
963
- readonly byParagraph?: boolean;
1515
+ readonly build?: AnimationTextBuild;
964
1516
  }
965
1517
  //#endregion
966
1518
  //#region src/internal/presentationml/comments-part.d.ts
@@ -1112,15 +1664,15 @@ type PresentationSize = '16:9' | '4:3';
1112
1664
  /**
1113
1665
  * Creates a fresh, immediately-authorable `PresentationData`.
1114
1666
  *
1115
- * The returned deck carries a slide master, the Office theme, and three
1667
+ * The returned deck carries a slide master, the default theme, and three
1116
1668
  * slide layouts — `'Blank'`, `'Title Slide'`, and `'Title and Content'` —
1117
1669
  * but no slides yet. Add one with {@link addSlide} (or the
1118
1670
  * `addBlankSlide` / `addTitleSlide` / `addContentSlide` helpers), then
1119
- * `savePresentation` to emit a `.pptx` that opens cleanly in PowerPoint,
1671
+ * `savePresentation` to emit a `.pptx` that opens cleanly in the reference desktop app,
1120
1672
  * Keynote, Google Slides, and LibreOffice.
1121
1673
  *
1122
1674
  * @param options.size Slide aspect ratio. `'16:9'` (12192000×6858000 EMU,
1123
- * PowerPoint's modern default) or `'4:3'` (9144000×6858000). Defaults to
1675
+ * The reference desktop app's modern default) or `'4:3'` (9144000×6858000). Defaults to
1124
1676
  * `'16:9'`.
1125
1677
  */
1126
1678
  declare const createPresentation: (options?: {
@@ -1148,7 +1700,7 @@ interface SlideSection {
1148
1700
  declare const getSlideSections: (pres: PresentationData) => ReadonlyArray<SlideSection>;
1149
1701
  /**
1150
1702
  * Replaces the deck's section list with `sections`. Each section is
1151
- * given a fresh GUID `id` attribute (PowerPoint generates one per
1703
+ * given a fresh GUID `id` attribute (the reference desktop app generates one per
1152
1704
  * section; we synthesize a deterministic-ish one based on index +
1153
1705
  * timestamp for v1).
1154
1706
  *
@@ -1209,6 +1761,21 @@ declare const getShapeAdjustValues: (shape: SlideShapeData) => Record<string, nu
1209
1761
  * this when it gets `null`.
1210
1762
  */
1211
1763
  declare const getShapeCustomGeometry: (shape: SlideShapeData) => CustomGeometry | null;
1764
+ /**
1765
+ * Evaluates a preset shape's outline (`<a:prstGeom>`, ECMA-376 §20.1.9.18)
1766
+ * at `size`, from the standard's own preset definitions: the same paths,
1767
+ * shading modes (`lighten` / `darken` …) and text rectangle the reference desktop app uses.
1768
+ * The result has the shape of {@link getShapeCustomGeometry}'s, so a
1769
+ * renderer draws presets and custom geometry the same way.
1770
+ *
1771
+ * `adjustValues` are the shape's adjust handles (`getShapeAdjustValues`);
1772
+ * each replaces the preset default of the same name. Returns `null` for a
1773
+ * preset name ECMA-376 does not define.
1774
+ */
1775
+ declare const getPresetGeometry: (preset: PresetShape | string, size: {
1776
+ readonly w: Emu;
1777
+ readonly h: Emu;
1778
+ }, adjustValues?: Readonly<Record<string, number>>) => CustomGeometry | null;
1212
1779
  /**
1213
1780
  * Returns the highest `cNvPr@id` used by any shape on the slide,
1214
1781
  * or `0` when the slide has no shapes with non-negative ids.
@@ -1276,13 +1843,13 @@ declare const getUnusedSlideMasters: (pres: PresentationData) => ReadonlyArray<s
1276
1843
  declare const getShapeName: (shape: SlideShapeData) => string;
1277
1844
  /**
1278
1845
  * Renames the shape's `cNvPr@name`. The display name is what
1279
- * PowerPoint shows in the Selection Pane and what `findShapeByName`
1280
- * matches on. Empty strings are allowed (matches PowerPoint behavior).
1846
+ * the reference desktop app shows in the Selection Pane and what `findShapeByName`
1847
+ * matches on. Empty strings are allowed (matches the reference desktop app's behavior).
1281
1848
  */
1282
1849
  /**
1283
1850
  * Reads the shape's alt-text description (`<p:cNvPr descr="...">`).
1284
1851
  * Accessibility tools (screen readers, contrast checkers) and
1285
- * PowerPoint's "Alt Text" pane look at this field. Returns `null`
1852
+ * the reference desktop app's "Alt Text" pane look at this field. Returns `null`
1286
1853
  * when no description is set.
1287
1854
  */
1288
1855
  declare const getShapeDescription: (shape: SlideShapeData) => string | null;
@@ -1295,7 +1862,7 @@ declare const getShapeDescription: (shape: SlideShapeData) => string | null;
1295
1862
  declare const setShapeDescription: (shape: SlideShapeData, description: string | null) => void;
1296
1863
  /**
1297
1864
  * Reads the shape's alt-text title (`<p:cNvPr title="...">`).
1298
- * PowerPoint surfaces this alongside `descr` in its Alt Text pane
1865
+ * The reference desktop app surfaces this alongside `descr` in its Alt Text pane
1299
1866
  * as a short heading. Returns `null` when no title is set.
1300
1867
  */
1301
1868
  declare const getShapeAltTitle: (shape: SlideShapeData) => string | null;
@@ -1307,17 +1874,18 @@ declare const getShapeAltTitle: (shape: SlideShapeData) => string | null;
1307
1874
  declare const setShapeAltTitle: (shape: SlideShapeData, title: string | null) => void;
1308
1875
  /**
1309
1876
  * `true` when the shape's `<p:cNvPr hidden="1">` is set. Hidden
1310
- * shapes are skipped by PowerPoint's renderer but stay in the
1877
+ * shapes are skipped by the reference desktop app's renderer but stay in the
1311
1878
  * shape tree — useful for variant slides that toggle which boxes
1312
1879
  * are visible.
1313
1880
  */
1314
1881
  declare const isShapeHidden: (shape: SlideShapeData) => boolean;
1315
1882
  /**
1316
1883
  * Sets or clears `<p:cNvPr hidden="...">` on the shape. Hidden
1317
- * shapes remain in the document but PowerPoint doesn't render them.
1884
+ * shapes remain in the document but the reference desktop app doesn't render them.
1318
1885
  */
1319
1886
  declare function setShapeHidden(shape: SlideShapeData, hidden: boolean): void;
1320
1887
  declare function setShapeHidden(shapes: readonly SlideShapeData[], hidden: boolean): void;
1888
+ /** Renames the shape: the name the Selection Pane shows (`<p:cNvPr name>`). */
1321
1889
  declare const renameShape: (shape: SlideShapeData, newName: string) => void;
1322
1890
  declare const getShapePlaceholderType: (shape: SlideShapeData) => string | null;
1323
1891
  declare const getShapePlaceholderIdx: (shape: SlideShapeData) => number | null;
@@ -1331,7 +1899,7 @@ declare const getShapePlaceholderIdx: (shape: SlideShapeData) => number | null;
1331
1899
  declare const isShapePlaceholder: (shape: SlideShapeData) => boolean;
1332
1900
  /**
1333
1901
  * `true` when the shape is a **text box** (`<p:cNvSpPr txBox="1">`) rather than
1334
- * an autoshape. The distinction drives default text formatting: PowerPoint /
1902
+ * an autoshape. The distinction drives default text formatting: the reference desktop app and
1335
1903
  * LibreOffice left-align and top-anchor text-box text, but center-align and
1336
1904
  * middle-anchor autoshape text when the deck author left those unset.
1337
1905
  */
@@ -1467,7 +2035,7 @@ declare const getSlideShapes: (slide: SlideData) => ReadonlyArray<SlideShapeData
1467
2035
  /**
1468
2036
  * Rebinds the slide to a different layout. The slide's own content
1469
2037
  * (shapes, text, geometry) is preserved verbatim; only the
1470
- * `slideLayout` rel is updated so PowerPoint re-renders with the new
2038
+ * `slideLayout` rel is updated so the reference desktop app re-renders with the new
1471
2039
  * layout's placeholder positions and theme.
1472
2040
  *
1473
2041
  * The new layout must already be a part of the package — pass one
@@ -1620,7 +2188,7 @@ declare const findShapeInPresentation: (pres: PresentationData, name: string | R
1620
2188
  *
1621
2189
  * Tokens must fit within a single text run (see `replaceTokensInTree`
1622
2190
  * in `drawingml/`). Cross-run replacements aren't supported — use
1623
- * `findSlidePlaceholder` + a setText path when PowerPoint has
2191
+ * `findSlidePlaceholder` + a setText path when the reference desktop app has
1624
2192
  * fragmented the run sequence.
1625
2193
  */
1626
2194
  declare const replaceTokensInSlide: (slide: SlideData, tokens: Record<string, string>) => number;
@@ -1646,6 +2214,8 @@ type ShapeFill = {
1646
2214
  * Reads back the shape's stroke (`<a:ln>`). Returns:
1647
2215
  *
1648
2216
  * - `{ kind: 'solid', color, widthEmu? }` for a solid-color outline.
2217
+ * - `{ kind: 'gradient', widthEmu? }` for a gradient line; read its stops
2218
+ * with `getShapeStrokeGradient`.
1649
2219
  * - `{ kind: 'none' }` when an `<a:noFill>` sits inside `<a:ln>`.
1650
2220
  * - `{ kind: 'inherit' }` when no `<a:ln>` is present.
1651
2221
  */
@@ -1653,6 +2223,9 @@ type ShapeStroke = {
1653
2223
  readonly kind: 'solid';
1654
2224
  readonly color: string;
1655
2225
  readonly widthEmu?: number;
2226
+ } | {
2227
+ readonly kind: 'gradient';
2228
+ readonly widthEmu?: number;
1656
2229
  } | {
1657
2230
  readonly kind: 'none';
1658
2231
  } | {
@@ -1679,7 +2252,7 @@ declare const getShapeStrokeWidth: (shape: SlideShapeData) => number | null;
1679
2252
  *
1680
2253
  * Companion to `getShapeStrokeColor`, which surfaces only the raw
1681
2254
  * `#RRGGBB` / `scheme:<token>` string — fine for round-tripping but
1682
- * wrong for rendering, because PowerPoint paints the *transformed*
2255
+ * wrong for rendering, because the reference desktop app paints the *transformed*
1683
2256
  * color, not the base one.
1684
2257
  */
1685
2258
  declare const getShapeStrokeColorResolved: (pres: PresentationData, shape: SlideShapeData) => string | null;
@@ -1687,7 +2260,7 @@ declare const getShapeStrokeColorResolved: (pres: PresentationData, shape: Slide
1687
2260
  * Returns the opacity (`0`–`1`) of the shape's own solid outline, read from
1688
2261
  * the `<a:alpha>` / `<a:alphaMod>` / `<a:alphaOff>` children of its color
1689
2262
  * element, or `null` when the outline isn't a solid color or carries no
1690
- * alpha transform (PowerPoint draws it fully opaque). Companion to
2263
+ * alpha transform (the reference desktop app draws it fully opaque). Companion to
1691
2264
  * `getShapeStrokeColorResolved`, which never carries the alpha channel.
1692
2265
  */
1693
2266
  declare const getShapeStrokeOpacity: (shape: SlideShapeData, pres?: PresentationData) => number | null;
@@ -1715,6 +2288,14 @@ declare const getShapeStrokeCompound: (shape: SlideShapeData, pres?: Presentatio
1715
2288
  * stroke layer wins.
1716
2289
  */
1717
2290
  declare const getShapeStrokeEffective: (pres: PresentationData, shape: SlideShapeData) => ShapeStroke;
2291
+ /**
2292
+ * Returns the full gradient (`stops`, direction, rotation) of a gradient line,
2293
+ * or `null` when the line is not one. Without `pres` only the shape's own
2294
+ * `<a:ln>` is read; with it, the line `getShapeStrokeEffective` resolves —
2295
+ * style matrix and placeholder cascade included — and every stop carries its
2296
+ * theme- and transform-resolved `resolvedColor`.
2297
+ */
2298
+ declare const getShapeStrokeGradient: (shape: SlideShapeData, pres?: PresentationData) => ReadGradientFill | null;
1718
2299
  declare const getShapeStroke: (shape: SlideShapeData) => ShapeStroke;
1719
2300
  /**
1720
2301
  * Convenience over `getShapeFill(shape)`: returns the solid-fill
@@ -1733,14 +2314,14 @@ declare const getShapeFillColor: (shape: SlideShapeData) => string | null;
1733
2314
  *
1734
2315
  * Companion to `getShapeFillColor`, which surfaces only the raw
1735
2316
  * `#RRGGBB` / `scheme:<token>` string. Renderers and exporters that
1736
- * need the color PowerPoint actually paints should call this.
2317
+ * need the color the reference desktop app actually paints should call this.
1737
2318
  */
1738
2319
  declare const getShapeFillColorResolved: (pres: PresentationData, shape: SlideShapeData) => string | null;
1739
2320
  /**
1740
2321
  * Returns the opacity (`0`–`1`) of the shape's solid fill, read from
1741
2322
  * the `<a:alpha>` / `<a:alphaMod>` / `<a:alphaOff>` children of its color
1742
2323
  * element, or `null` when the fill isn't solid or carries no alpha
1743
- * transform (PowerPoint paints it fully opaque). Companion to
2324
+ * transform (the reference desktop app paints it fully opaque). Companion to
1744
2325
  * `getShapeFillColorResolved`, which never carries the alpha channel —
1745
2326
  * OOXML encodes color and alpha independently. Pass `pres` to resolve the
1746
2327
  * shape's theme fill reference when no direct fill is present.
@@ -1901,7 +2482,7 @@ declare const setShapeRotation: (shape: SlideShapeData, degrees: number) => void
1901
2482
  *
1902
2483
  * The common use is the corner radius of the `roundRect` preset, whose `adj`
1903
2484
  * guide runs `0..50000` (thousandths of a percent of the shorter side;
1904
- * `16667` ≈ the PowerPoint default, `0` = square corners, `50000` = fully
2485
+ * `16667` ≈ the reference desktop app's default, `0` = square corners, `50000` = fully
1905
2486
  * rounded). For example, `setShapeAdjustValues(shape, { adj: 5000 })` gives a
1906
2487
  * subtle 5% rounding.
1907
2488
  *
@@ -1949,7 +2530,7 @@ declare const setShapeGradientFill: (shape: SlideShapeData, options: GradientFil
1949
2530
  * the pattern. Both accept `#RRGGBB`, bare `RRGGBB`, or scheme tokens
1950
2531
  * (`accent1`, `bg1`, ...). Omitted settings preserve existing pattern XML,
1951
2532
  * including theme references and color transforms. A new pattern defaults to
1952
- * `pct5`, foreground `accent1` and background `bg1`, as in Mac PowerPoint.
2533
+ * `pct5`, foreground `accent1` and background `bg1`, as in the reference desktop app on Mac.
1953
2534
  */
1954
2535
  declare const setShapePatternFill: (shape: SlideShapeData, options: Partial<PatternFillOptions>) => void;
1955
2536
  /**
@@ -1963,7 +2544,7 @@ declare const setShapePatternFill: (shape: SlideShapeData, options: Partial<Patt
1963
2544
  * e.g. `'pct50'`, `'dkUpDiag'`, `'cross'`, `'wave'`. Renderers can map it onto
1964
2545
  * an SVG `<pattern>` definition, and the result can be handed straight back to
1965
2546
  * `setShapePatternFill`. A missing or unrecognised `prst` reads as `'pct50'`,
1966
- * which is what PowerPoint paints when the attribute is absent.
2547
+ * which is what the reference desktop app paints when the attribute is absent.
1967
2548
  */
1968
2549
  declare const getShapePatternFill: (pres: PresentationData, shape: SlideShapeData, options?: {
1969
2550
  readonly preserveTheme?: boolean;
@@ -1993,12 +2574,36 @@ declare const setShapeNoFill: (shape: SlideShapeData) => void;
1993
2574
  * from the layout / master placeholder it descends from.
1994
2575
  */
1995
2576
  declare const clearShapeFill: (shape: SlideShapeData) => void;
1996
- /** Updates outline color, width and/or opacity (0–1); omitted properties are preserved. */
2577
+ /**
2578
+ * Updates outline color, width and/or opacity (0–1); omitted properties are
2579
+ * preserved. `fill: { kind: 'gradient', ... }` paints a gradient line instead
2580
+ * of `color` (the reference desktop app's Gradient line); it takes the same options as
2581
+ * `setShapeGradientFill` and is exclusive with `color` and `opacity`.
2582
+ */
1997
2583
  declare const setShapeStroke: (shape: SlideShapeData, options: {
1998
2584
  color?: Color;
1999
2585
  widthEmu?: number;
2000
2586
  opacity?: number;
2587
+ fill?: LineFill;
2001
2588
  }) => void;
2589
+ /**
2590
+ * Sets the reference desktop app's Sketched style on the outline (`'curved'`, `'freehand'`
2591
+ * or `'scribble'`), or removes it with `null`. Stored as the 2021
2592
+ * `ask:lineSketchStyleProps` extension of `<a:ln>`, which older readers
2593
+ * ignore. A new sketch gets a seed derived from the shape id, so the same
2594
+ * deck always saves the same bytes.
2595
+ *
2596
+ * The reference desktop app writes the hand-drawn outline into the shape's geometry and keeps the
2597
+ * original beside the style; this library keeps the true geometry instead (and
2598
+ * restores it when editing a sketch the reference desktop app wrote), leaving the roughening to
2599
+ * the renderer.
2600
+ */
2601
+ declare const setShapeStrokeSketch: (shape: SlideShapeData, sketch: LineSketch | null) => void;
2602
+ /**
2603
+ * Reads the outline's sketched style, or `null` when it has none. Only the
2604
+ * shape's own `<a:ln>` is consulted.
2605
+ */
2606
+ declare const getShapeStrokeSketch: (shape: SlideShapeData) => LineSketch | null;
2002
2607
  /** Sets an explicit "no outline" on the shape. */
2003
2608
  declare const setShapeNoStroke: (shape: SlideShapeData) => void;
2004
2609
  /**
@@ -2068,6 +2673,8 @@ declare const setShapeStrokeJoin: (shape: SlideShapeData, join: "round" | "bevel
2068
2673
  declare const setShapeStrokeCompound: (shape: SlideShapeData, cmpd: "sng" | "dbl" | "thickThin" | "thinThick" | "tri" | null) => void;
2069
2674
  //#endregion
2070
2675
  //#region src/api/fn/shape-effects.d.ts
2676
+ /** A shape's 3-D (`setShape3D`): the same DrawingML vocabulary as text 3-D. */
2677
+ type Shape3D = Text3D;
2071
2678
  /**
2072
2679
  * Read-back for `setShapeShadow` / `setShapeGlow`. Returns the kind
2073
2680
  * of effect currently on the shape's `<a:effectLst>`, or `null` when
@@ -2091,7 +2698,7 @@ type ShapeEffect = {
2091
2698
  * `CT_EffectStyleItem` (ECMA-376 §20.1.8.x) — outer shadow, inner
2092
2699
  * shadow, glow, reflection, soft-edge, blur. Returned in document
2093
2700
  * order so renderers can chain filters with the same composition
2094
- * PowerPoint applies.
2701
+ * the reference desktop app applies.
2095
2702
  *
2096
2703
  * Lengths are EMU; angles are degrees clockwise from 3 o'clock;
2097
2704
  * opacity is a unit fraction (0..1) when the spec exposes one.
@@ -2105,6 +2712,10 @@ type ShapeEffectAny = {
2105
2712
  readonly blurEmu: number;
2106
2713
  readonly distEmu: number;
2107
2714
  readonly angleDeg: number;
2715
+ readonly scaleX?: number;
2716
+ readonly scaleY?: number;
2717
+ readonly skewX?: number;
2718
+ readonly skewY?: number;
2108
2719
  } | {
2109
2720
  readonly kind: 'innerShdw';
2110
2721
  readonly color: string;
@@ -2147,7 +2758,7 @@ declare const getShapeEffect: (shape: SlideShapeData) => ShapeEffect | null;
2147
2758
  * soft edge, blur. Empty array when no effects apply.
2148
2759
  *
2149
2760
  * Companion to `getShapeEffect`, which is the v1 "first effect only"
2150
- * helper. `getShapeEffects` is what renderers want because PowerPoint
2761
+ * helper. `getShapeEffects` is what renderers want because the reference desktop app
2151
2762
  * composes multiple effects in a single filter (shadow + glow, etc.).
2152
2763
  */
2153
2764
  declare const getShapeEffects: (pres: PresentationData, shape: SlideShapeData) => readonly ShapeEffectAny[];
@@ -2165,24 +2776,59 @@ declare const findShapesByEffect: (pres: PresentationData, slide: SlideData, kin
2165
2776
  * cascade when the shape itself has no `<a:effectLst>`. Inherits
2166
2777
  * "all or nothing" — once any layer supplies an effect list, that
2167
2778
  * list is used; layers further down aren't merged in. This matches
2168
- * PowerPoint's behaviour (effect lists override rather than compose).
2779
+ * the reference desktop app's behaviour (effect lists override rather than compose).
2169
2780
  */
2170
2781
  declare const getShapeEffectsEffective: (pres: PresentationData, shape: SlideShapeData) => readonly ShapeEffectAny[];
2171
2782
  /**
2172
2783
  * Sets an outer drop shadow on the shape. Defaults: black, 4pt blur,
2173
2784
  * 3pt offset, 45° (down-right). Pass `opacity` (0–1) to soften the
2174
2785
  * shadow. Replaces an existing drop shadow and leaves the shape's other
2175
- * effects in place; `clearShapeEffects` is the way to remove them all.
2786
+ * effects in place; `null` removes only the drop shadow and
2787
+ * `clearShapeEffects` removes every effect.
2788
+ */
2789
+ declare const setShapeShadow: (shape: SlideShapeData, options?: ShadowOptions | null) => void;
2790
+ /**
2791
+ * Sets an inner shadow (`<a:innerShdw>`) on the shape, replacing only a
2792
+ * prior inner shadow. Defaults: black, 4pt blur, 3pt offset, 45°. `null`
2793
+ * removes it.
2176
2794
  */
2177
- declare const setShapeShadow: (shape: SlideShapeData, options?: ShadowOptions) => void;
2795
+ declare const setShapeInnerShadow: (shape: SlideShapeData, options: InnerShadowOptions | null) => void;
2178
2796
  /**
2179
2797
  * Sets a glow around the shape. The radius is in EMU (default 5pt =
2180
2798
  * 63500). Replaces an existing glow and composes with a shadow, in the
2181
- * order `CT_EffectList` states.
2799
+ * order `CT_EffectList` states. `null` removes only the glow.
2800
+ */
2801
+ declare const setShapeGlow: (shape: SlideShapeData, options: GlowOptions | null) => void;
2802
+ /**
2803
+ * Sets a reflection (`<a:reflection>`) of the shape, replacing only a prior
2804
+ * reflection. A mirrored reflection below the shape is `scaleY: -1` with
2805
+ * `alignment: 'bl'`, fading from `startOpacity` to `opacity` by
2806
+ * `endPosition`. `null` removes it.
2182
2807
  */
2183
- declare const setShapeGlow: (shape: SlideShapeData, options: GlowOptions) => void;
2808
+ declare const setShapeReflection: (shape: SlideShapeData, options: ReflectionOptions | null) => void;
2809
+ /**
2810
+ * Softens the shape's edges (`<a:softEdge>`) by `radiusEmu`, replacing a
2811
+ * prior soft edge. `null` removes it.
2812
+ */
2813
+ declare const setShapeSoftEdge: (shape: SlideShapeData, radiusEmu: number | null) => void;
2184
2814
  /** Removes any effects (shadow / glow / future presets) from the shape. */
2185
2815
  declare const clearShapeEffects: (shape: SlideShapeData) => void;
2816
+ /**
2817
+ * Sets the shape's own 3-D — `<a:scene3d>` (camera, rotation, lighting) and
2818
+ * `<a:sp3d>` (bevels, depth, contour, material, distance from ground) in
2819
+ * `<p:spPr>`, what the reference desktop app's 3-D Format and 3-D Rotation write. Same
2820
+ * vocabulary as `setShapeText3D`, which puts it on the text body instead. A
2821
+ * field left out removes what it describes; settings this API does not model
2822
+ * (camera zoom, backdrop, ...) are kept while their element remains. `null`
2823
+ * removes both elements.
2824
+ */
2825
+ declare const setShape3D: (shape: SlideShapeData, value: Shape3D | null) => void;
2826
+ /**
2827
+ * Reads the 3-D on the shape's own `<p:spPr>` (see `setShape3D`), or `null`
2828
+ * when it has neither `<a:scene3d>` nor `<a:sp3d>`. A theme's effect style
2829
+ * is not consulted.
2830
+ */
2831
+ declare const getShape3D: (shape: SlideShapeData) => ReadText3D | null;
2186
2832
  //#endregion
2187
2833
  //#region src/internal/drawingml/text-body-edit.d.ts
2188
2834
  type TextCase = 'sentence' | 'lower' | 'upper' | 'title' | 'toggle';
@@ -2200,7 +2846,7 @@ type TextCase = 'sentence' | 'lower' | 'upper' | 'title' | 'toggle';
2200
2846
  * formatting between them. With `range`, `value` replaces exactly that UTF-16
2201
2847
  * selection and unaffected formatting is always preserved.
2202
2848
  * Pass `{ case: 'upper' | 'lower' | 'sentence' | 'title' | 'toggle' }` to apply
2203
- * PowerPoint-style Change Case to the whole text or to `options.range`.
2849
+ * Change Case, as the reference desktop app does, to the whole text or to `options.range`.
2204
2850
  */
2205
2851
  declare const setShapeText: (shape: SlideShapeData, value: string | {
2206
2852
  case: TextCase;
@@ -2214,7 +2860,7 @@ declare const setShapeText: (shape: SlideShapeData, value: string | {
2214
2860
  };
2215
2861
  }) => void;
2216
2862
  /**
2217
- * Replaces the shape's text with a single field — text PowerPoint fills in
2863
+ * Replaces the shape's text with a single field — text the reference desktop app fills in
2218
2864
  * when it opens the deck, rather than text the file states. `type` is an
2219
2865
  * ECMA-376 `ST_TextFieldType` token: `'slidenum'` for the slide's number,
2220
2866
  * `'datetime'` (and its `datetime1`…`datetime13` variants) for the current
@@ -2222,13 +2868,13 @@ declare const setShapeText: (shape: SlideShapeData, value: string | {
2222
2868
  * through, since the list is open and renderers differ on what they honour.
2223
2869
  *
2224
2870
  * `options.text` is the cached value stored in `<a:t>`, which is what a reader
2225
- * that does not evaluate fields shows — PowerPoint overwrites it on open, so
2871
+ * that does not evaluate fields shows — the reference desktop app overwrites it on open, so
2226
2872
  * it matters only for other consumers. The shape's first run's formatting is
2227
- * carried onto the field, the way PowerPoint keeps a placeholder's look when
2873
+ * carried onto the field, the way the reference desktop app keeps a placeholder's look when
2228
2874
  * it inserts one.
2229
2875
  *
2230
2876
  * This replaces the whole text body: a field placeholder holds the field and
2231
- * nothing else, which is how PowerPoint writes slide numbers and dates.
2877
+ * nothing else, which is how the reference desktop app writes slide numbers and dates.
2232
2878
  */
2233
2879
  declare const setShapeTextField: (shape: SlideShapeData, type: string, options?: {
2234
2880
  text?: string;
@@ -2255,7 +2901,7 @@ declare const appendShapeText: (shape: SlideShapeData, value: string) => void;
2255
2901
  */
2256
2902
  type TextAnchor = 'top' | 'center' | 'bottom';
2257
2903
  /**
2258
- * Word wrap mode on a text body. `'square'` (PowerPoint default for
2904
+ * Word wrap mode on a text body. `'square'` (the reference desktop app's default for
2259
2905
  * textboxes) wraps lines at the shape's width; `'none'` lets text
2260
2906
  * overflow horizontally.
2261
2907
  */
@@ -2265,7 +2911,7 @@ type TextAutoFit = 'none' | 'normal' | 'shape';
2265
2911
  /**
2266
2912
  * Sets the text-body word-wrap mode.
2267
2913
  *
2268
- * - `'square'` writes `wrap="square"` — PowerPoint default for textboxes.
2914
+ * - `'square'` writes `wrap="square"` — the reference desktop app's default for textboxes.
2269
2915
  * - `'none'` writes `wrap="none"` — text can overflow horizontally.
2270
2916
  *
2271
2917
  * Throws for non-text-bearing shape kinds.
@@ -2286,7 +2932,7 @@ declare const getShapeTextWrap: (shape: SlideShapeData) => TextWrap | null;
2286
2932
  declare const setShapeTextAutoFit: (shape: SlideShapeData, mode: TextAutoFit) => void;
2287
2933
  /**
2288
2934
  * Sets the 3-D on the shape's text body — `<a:scene3d>` and `<a:sp3d>` in
2289
- * `<a:bodyPr>`, where PowerPoint writes its WordArt bevels. `value.scene`
2935
+ * `<a:bodyPr>`, where the reference desktop app writes its text-art bevels. `value.scene`
2290
2936
  * writes the camera and light rig; `bevelTop`, `extrusionHeightEmu`,
2291
2937
  * `material` and `contourColor` write `<a:sp3d>` (replacing `<a:flatTx>`).
2292
2938
  * A field left out removes what it describes; settings this API does not
@@ -2295,6 +2941,16 @@ declare const setShapeTextAutoFit: (shape: SlideShapeData, mode: TextAutoFit) =>
2295
2941
  * non-text-bearing shape kinds.
2296
2942
  */
2297
2943
  declare const setShapeText3D: (shape: SlideShapeData, value: Text3D | null) => void;
2944
+ /**
2945
+ * Sets the reference desktop app's Keep text flat (`<a:bodyPr><a:flatTx/>`): the text stays
2946
+ * flat, out of the shape's 3-D scene, when the shape is rotated in 3-D.
2947
+ * `<a:flatTx>` and the text body's own `<a:sp3d>` are one schema choice, so
2948
+ * keeping text flat removes a text bevel or extrusion set by
2949
+ * `setShapeText3D`. Throws for non-text-bearing shape kinds.
2950
+ */
2951
+ declare const setShapeTextFlat: (shape: SlideShapeData, flat: boolean) => void;
2952
+ /** Reads Keep text flat (see `setShapeTextFlat`) from the shape's own text body. */
2953
+ declare const getShapeTextFlat: (shape: SlideShapeData) => boolean;
2298
2954
  /**
2299
2955
  * Reads the 3-D on the shape's own text body (see `setShapeText3D`), or
2300
2956
  * `null` when its `<a:bodyPr>` has neither `<a:scene3d>` nor `<a:sp3d>`.
@@ -2303,11 +2959,11 @@ declare const setShapeText3D: (shape: SlideShapeData, value: Text3D | null) => v
2303
2959
  declare const getShapeText3D: (shape: SlideShapeData) => ReadText3D | null;
2304
2960
  /**
2305
2961
  * Reads back the bodyPr auto-fit child, or `null` when none is
2306
- * present (PowerPoint applies a layout-inherited default in that case).
2962
+ * present (the reference desktop app applies a layout-inherited default in that case).
2307
2963
  */
2308
2964
  declare const getShapeTextAutoFit: (shape: SlideShapeData) => TextAutoFit | null;
2309
2965
  /**
2310
- * Reads the scale parameters PowerPoint stores on `<a:normAutofit>`
2966
+ * Reads the scale parameters the reference desktop app stores on `<a:normAutofit>`
2311
2967
  * once it has shrunk a text body to fit. Returns `null` if the body
2312
2968
  * doesn't carry `<a:normAutofit>` or the attributes are absent. Both
2313
2969
  * fields are unitless ratios in `[0, 1]`:
@@ -2316,7 +2972,7 @@ declare const getShapeTextAutoFit: (shape: SlideShapeData) => TextAutoFit | null
2316
2972
  * - `lnSpcReduction` — subtract from the line-height ratio. Default `0`.
2317
2973
  *
2318
2974
  * Companion to `getShapeTextAutoFit`. Renderers that want to match
2319
- * PowerPoint's actual on-screen text size apply these factors to the
2975
+ * the reference desktop app's actual on-screen text size apply these factors to the
2320
2976
  * authored font sizes; without them, every long title overflows.
2321
2977
  */
2322
2978
  declare const getShapeTextAutoFitParams: (shape: SlideShapeData) => {
@@ -2334,7 +2990,7 @@ declare const getShapeTextAutoFitParams: (shape: SlideShapeData) => {
2334
2990
  declare const getShapeTextAnchor: (shape: SlideShapeData) => TextAnchor | null;
2335
2991
  /**
2336
2992
  * Reads back the internal margins of the shape's text frame. Sides
2337
- * that are absent in the XML default to `null` (PowerPoint applies
2993
+ * that are absent in the XML default to `null` (the reference desktop app applies
2338
2994
  * its built-in default for the missing side).
2339
2995
  */
2340
2996
  /**
@@ -2364,7 +3020,7 @@ declare const setShapeTextColumns: (shape: SlideShapeData, columns: {
2364
3020
  * Reads the shape's text-body rotation from `<a:bodyPr rot="N"/>`.
2365
3021
  * `rot` is stored in 60000ths of a degree (OOXML angle units); the
2366
3022
  * returned value is in degrees. Positive values rotate clockwise per
2367
- * PowerPoint's convention. Returns `null` when the attribute is
3023
+ * the reference desktop app's convention. Returns `null` when the attribute is
2368
3024
  * absent.
2369
3025
  *
2370
3026
  * Distinct from the shape's own `<p:xfrm rot=…>` (the geometry
@@ -2374,7 +3030,7 @@ declare const setShapeTextColumns: (shape: SlideShapeData, columns: {
2374
3030
  declare const getShapeTextBodyRotationDeg: (shape: SlideShapeData) => number | null;
2375
3031
  /**
2376
3032
  * Sets the shape's text-body rotation (`<a:bodyPr rot="N"/>`), measured
2377
- * in degrees. Positive rotates clockwise per PowerPoint's convention.
3033
+ * in degrees. Positive rotates clockwise per the reference desktop app's convention.
2378
3034
  * Passing `null` clears the attribute so the shape inherits the default
2379
3035
  * (`0`). Throws for non-text-bearing shape kinds.
2380
3036
  *
@@ -2392,7 +3048,7 @@ declare const setShapeTextBodyRotationDeg: (shape: SlideShapeData, rotationDeg:
2392
3048
  * - `wordArtVert` — characters not rotated, stacked vertically.
2393
3049
  * - `eaVert` — East-Asian vertical: characters upright, columns right-to-left.
2394
3050
  * - `mongolianVert` — Mongolian: rotated 90°, columns left-to-right.
2395
- * - `wordArtVertRtl` — RTL word-art stacked vertically.
3051
+ * - `wordArtVertRtl` — upright characters stacked vertically, columns right-to-left.
2396
3052
  *
2397
3053
  * Returns `null` when the attribute is absent or set to the default
2398
3054
  * `horz`.
@@ -2439,7 +3095,7 @@ declare const getShapeBodyPrEffective: (pres: PresentationData, shape: SlideShap
2439
3095
  };
2440
3096
  /**
2441
3097
  * Sets vertical anchoring. `centered` centers the text block without changing
2442
- * paragraph alignment (PowerPoint's Top / Middle / Bottom Centered options).
3098
+ * paragraph alignment (the reference desktop app's Top / Middle / Bottom Centered options).
2443
3099
  * Omit it to preserve centering; pass null to restore inherited centering.
2444
3100
  */
2445
3101
  declare const setShapeTextAnchor: (shape: SlideShapeData, anchor: TextAnchor, options?: {
@@ -2450,7 +3106,7 @@ declare const setShapeTextAnchor: (shape: SlideShapeData, anchor: TextAnchor, op
2450
3106
  * side is independent; omitted sides keep their current value (or the
2451
3107
  * layout-inherited default when the attribute is absent).
2452
3108
  *
2453
- * PowerPoint's defaults for a textbox: left/right 91440 (0.1in),
3109
+ * The reference desktop app's defaults for a textbox: left/right 91440 (0.1in),
2454
3110
  * top/bottom 45720 (0.05in).
2455
3111
  *
2456
3112
  * setShapeTextMargins(shape, { left: 0, right: 0 }); // flush-left text
@@ -2531,6 +3187,43 @@ declare function setShapeParagraphs(shapes: ReadonlyArray<SlideShapeData>, parag
2531
3187
  }>;
2532
3188
  }): void;
2533
3189
  //#endregion
3190
+ //#region src/api/fn/shape-color.d.ts
3191
+ /**
3192
+ * Resolves a DrawingML color element (`<a:srgbClr>` / `<a:schemeClr>` /
3193
+ * `<a:sysClr>` / `<a:prstClr>`) with all its `<a:lumMod>` / `<a:tint>` /
3194
+ * `<a:shade>` / `<a:satMod>` etc. transform children applied. Returns
3195
+ * `null` when the color is a scheme token and no theme is supplied to
3196
+ * resolve it.
3197
+ *
3198
+ * Exposed because both run-format and fill-format code paths need to
3199
+ * apply the same transform pipeline; keeping a single implementation
3200
+ * means future spec-coverage additions only have to land in one place.
3201
+ */
3202
+ declare const resolveDrawingColor: (colorEl: XmlElement, theme: PresentationTheme | null, clrMap?: Readonly<Record<string, string>> | null) => string | null;
3203
+ /**
3204
+ * Resolves the opacity a DrawingML color element carries through its
3205
+ * `<a:alpha>` / `<a:alphaMod>` / `<a:alphaOff>` children (ECMA-376
3206
+ * §20.1.2.3.1–3) to a `0`–`1` fraction, applied in document order from a
3207
+ * fully opaque base. Returns `null` when the element has no alpha
3208
+ * transform — the reference desktop app paints that opaque, but callers can still tell
3209
+ * "unspecified" apart from an explicit `1`.
3210
+ *
3211
+ * Kept separate from `resolveDrawingColor` because alpha never changes the
3212
+ * `#RRGGBB`; OOXML encodes the two independently and renderers emit the
3213
+ * opacity next to the color (`fill-opacity` / `stroke-opacity`).
3214
+ */
3215
+ declare const resolveDrawingColorOpacity: (colorEl: XmlElement) => number | null;
3216
+ /**
3217
+ * Reads back the format of a single run. Returns `null` when the run
3218
+ * has no `<a:rPr>` (it inherits its format from the paragraph /
3219
+ * layout / master). Boolean attributes that are explicitly `"0"`
3220
+ * decode to `false`.
3221
+ *
3222
+ * Use `getShapeRunFormatEffective` if you want the resolved format
3223
+ * after walking the placeholder / lstStyle / master inheritance chain.
3224
+ */
3225
+ declare const getShapeRunFormat: (shape: SlideShapeData, paragraphIndex: number, runIndex: number) => ReadTextFormat | null;
3226
+ //#endregion
2534
3227
  //#region src/api/fn/shape-paragraph.d.ts
2535
3228
  /**
2536
3229
  * Resolves a run's effective character properties by walking the
@@ -2618,7 +3311,7 @@ interface ParagraphProperties {
2618
3311
  rtl: boolean | null;
2619
3312
  /**
2620
3313
  * Bullet resolved through the cascade (`<a:buChar>` / `<a:buAutoNum>` /
2621
- * `<a:buNone>`). Master `bodyStyle` levels author the PowerPoint default
3314
+ * `<a:buNone>`). Master `bodyStyle` levels author the reference desktop app's default
2622
3315
  * "•", so body placeholders get their bullet from here even when no
2623
3316
  * slide-level `<a:pPr>` carries one.
2624
3317
  */
@@ -2843,7 +3536,7 @@ declare const getCommentParent: (comment: SlideCommentData) => SlideCommentData
2843
3536
  /**
2844
3537
  * Which of the two comment formats this handle came from. `'legacy'` is the
2845
3538
  * ECMA-376 `<p:cm>` list every reader understands; `'modern'` is the
2846
- * `<p188:cm>` thread PowerPoint 2021 and Microsoft 365 write.
3539
+ * `<p188:cm>` thread the reference desktop app writes from 2021 on.
2847
3540
  */
2848
3541
  declare const getCommentFormat: (comment: SlideCommentData) => "legacy" | "modern";
2849
3542
  /**
@@ -2983,7 +3676,7 @@ interface ChartSeries {
2983
3676
  readonly name: string;
2984
3677
  /**
2985
3678
  * Numeric values, one per category. `null` slots become empty cells in
2986
- * the embedded workbook (PowerPoint draws them as a gap). Lengths
3679
+ * the embedded workbook (the reference desktop app draws them as a gap). Lengths
2987
3680
  * shorter than the category count are right-padded with `null`.
2988
3681
  *
2989
3682
  * For `scatter` / `bubble` kinds there are no categories: `values`
@@ -3022,7 +3715,7 @@ interface ChartSeries {
3022
3715
  readonly chartKind?: 'bar' | 'column' | 'line' | 'area';
3023
3716
  /**
3024
3717
  * Plot this series against the secondary value axis — the right-hand
3025
- * axis PowerPoint shows for combo charts with mixed units
3718
+ * axis the reference desktop app shows for combo charts with mixed units
3026
3719
  * (`<c:valAx>` pair with `axPos="r"` plus a deleted companion
3027
3720
  * `<c:catAx>`). The builder emits the secondary axis pair on demand.
3028
3721
  * Only meaningful for the category kinds; rejected for pie / doughnut.
@@ -3056,14 +3749,14 @@ interface ChartSeries {
3056
3749
  */
3057
3750
  readonly markerSymbol?: 'none' | 'auto' | 'circle' | 'square' | 'diamond' | 'triangle' | 'star' | 'x' | 'plus' | 'dash' | 'dot' | 'picture';
3058
3751
  /**
3059
- * Marker size in points (`<c:marker><c:size val="N"/>`). PowerPoint
3752
+ * Marker size in points (`<c:marker><c:size val="N"/>`). The reference desktop app
3060
3753
  * default ~5. Only meaningful when `markerSymbol` isn't `none`.
3061
3754
  */
3062
3755
  readonly markerSizePt?: number;
3063
3756
  /**
3064
3757
  * Optional marker fill + outline color (`<c:marker><c:spPr>`), as an sRGB
3065
3758
  * hex. Defaults to `color`. The builder always writes it for line /
3066
- * scatter / radar series, because PowerPoint paints a marker without
3759
+ * scatter / radar series, because the reference desktop app paints a marker without
3067
3760
  * `<c:spPr>` in the theme's automatic color instead of the series color.
3068
3761
  */
3069
3762
  readonly markerColor?: string;
@@ -3096,7 +3789,7 @@ interface ChartSeries {
3096
3789
  /**
3097
3790
  * Optional per-data-point data-label overrides
3098
3791
  * (`<c:dLbls><c:dLbl><c:idx val="N"/>…`). Sparse — `null` slots fall back
3099
- * to the series-level `dataLabels`. PowerPoint draws the per-point element
3792
+ * to the series-level `dataLabels`. The reference desktop app draws the per-point element
3100
3793
  * over the series defaults, which is how pie / doughnut exporters give each
3101
3794
  * slice its own label content and font.
3102
3795
  */
@@ -3169,7 +3862,7 @@ interface ChartErrorBars {
3169
3862
  interface ChartTrendline {
3170
3863
  /**
3171
3864
  * Optional custom label for the trendline (`<c:trendline><c:name>…`).
3172
- * Defaults to PowerPoint's auto-generated label
3865
+ * Defaults to the reference desktop app's auto-generated label
3173
3866
  * (e.g. "Linear (X)" / "MA(5) (X)") when omitted.
3174
3867
  */
3175
3868
  readonly name?: string;
@@ -3232,7 +3925,7 @@ interface ChartDataLabels {
3232
3925
  readonly showPercent: boolean;
3233
3926
  /**
3234
3927
  * Number-format code from `<c:dLbls><c:numFmt formatCode="…"/>`. When
3235
- * set, value labels are projected through this Excel-style format
3928
+ * set, value labels are projected through this spreadsheet-style format
3236
3929
  * (same subset the value axis honors: `"0%"`, `"#,##0"`, `"$#,##0"`,
3237
3930
  * `"0.00"`). Independent of `ChartAxisScaling.numberFormat`.
3238
3931
  */
@@ -3294,7 +3987,7 @@ interface ChartAxisScaling {
3294
3987
  /**
3295
3988
  * Number-format code from `<c:numFmt formatCode="…"/>`. Common
3296
3989
  * values: `"0%"`, `"0.0%"`, `"#,##0"`, `"$#,##0"`, `"yyyy-mm-dd"`.
3297
- * Renderers project a subset of Excel-style formats to label text.
3990
+ * Renderers project a subset of spreadsheet number formats to label text.
3298
3991
  */
3299
3992
  readonly numberFormat?: string;
3300
3993
  /**
@@ -3336,10 +4029,10 @@ interface ChartView3D {
3336
4029
  readonly rotY?: number;
3337
4030
  /**
3338
4031
  * Right-angle axes (`<c:rAngAx>`): an oblique projection that ignores
3339
- * `perspective`. PowerPoint's default for bar / column / line / area.
4032
+ * `perspective`. The reference desktop app's default for bar / column / line / area.
3340
4033
  */
3341
4034
  readonly rightAngleAxes?: boolean;
3342
- /** Field of view, 0..240 (`<c:perspective>`); PowerPoint's default is 30. */
4035
+ /** Field of view, 0..240 (`<c:perspective>`); the reference desktop app's default is 30. */
3343
4036
  readonly perspective?: number;
3344
4037
  /** Depth as a percent of the chart width, 20..2000 (`<c:depthPercent>`). */
3345
4038
  readonly depthPercent?: number;
@@ -3373,7 +4066,7 @@ interface ChartOfPie {
3373
4066
  }
3374
4067
  /** Up / down bars between the first and last line series (`<c:upDownBars>`). */
3375
4068
  interface ChartUpDownBars {
3376
- /** Bar width gap, 0..500 percent (`<c:gapWidth>`); PowerPoint's default is 150. */
4069
+ /** Bar width gap, 0..500 percent (`<c:gapWidth>`); the reference desktop app's default is 150. */
3377
4070
  readonly gapWidthPct?: number;
3378
4071
  /** Fill of the rising bars as `#RRGGBB` (`<c:upBars>`). */
3379
4072
  readonly upColor?: string;
@@ -3461,7 +4154,7 @@ interface ChartTextStyle {
3461
4154
  * `<a:rPr><a:latin typeface="…"/><a:ea typeface="…"/>`. East-asian is
3462
4155
  * set alongside latin so a Japanese / CJK family (e.g. `'Yu Gothic'`)
3463
4156
  * renders the labels instead of the renderer's latin-only fallback.
3464
- * Mirrors the latin/ea pairing PowerPoint emits for CJK chart fonts.
4157
+ * Mirrors the latin/ea pairing the reference desktop app emits for CJK chart fonts.
3465
4158
  */
3466
4159
  readonly font?: string;
3467
4160
  /**
@@ -3485,7 +4178,7 @@ interface ChartTextStyle {
3485
4178
  * that `ChartSeries.secondaryAxis` series plot against. The fields mirror
3486
4179
  * the primary `valueAxis*` fields of `ChartSpec` without the prefix, limited
3487
4180
  * to what a right-hand axis needs; the axis position (`r`) and crossing
3488
- * (`max`) stay fixed. Omit the whole object for PowerPoint's defaults.
4181
+ * (`max`) stay fixed. Omit the whole object for the reference desktop app's defaults.
3489
4182
  */
3490
4183
  interface ChartSecondaryValueAxis {
3491
4184
  readonly scaling?: ChartAxisScaling;
@@ -3567,7 +4260,7 @@ interface ReadChartSpec {
3567
4260
  /**
3568
4261
  * Authored rotation on the category-axis tick labels, in degrees. From
3569
4262
  * `<c:catAx><c:txPr><a:bodyPr rot="N"/>` where N is in 60000ths of a
3570
- * degree. Positive values rotate clockwise (PowerPoint convention),
4263
+ * degree. Positive values rotate clockwise (the reference desktop app's convention),
3571
4264
  * matching the SVG `transform=rotate()` sense.
3572
4265
  */
3573
4266
  readonly categoryAxisLabelRotationDeg?: number;
@@ -3575,7 +4268,7 @@ interface ReadChartSpec {
3575
4268
  /** Authored font / color on the value-axis title. */
3576
4269
  readonly valueAxisTitleStyle?: ChartTextStyle;
3577
4270
  /**
3578
- * Rotation of the value-axis title, in degrees clockwise. PowerPoint
4271
+ * Rotation of the value-axis title, in degrees clockwise. The reference desktop app
3579
4272
  * often emits `-90` (or `vert270`) so the title reads bottom-to-top
3580
4273
  * alongside the axis. Maps to `<c:valAx><c:title><c:tx><c:rich>
3581
4274
  * <a:bodyPr rot="N"/>` (60000ths of a degree on the wire).
@@ -3633,7 +4326,7 @@ interface ReadChartSpec {
3633
4326
  /**
3634
4327
  * Authored width of the value-axis major gridlines in EMU — the `w` of
3635
4328
  * the same `<a:ln>` as `valueAxisMajorGridlineColor` (12700 = 1 pt).
3636
- * `undefined` leaves the width to the application (PowerPoint: 0.75 pt).
4329
+ * `undefined` leaves the width to the application (the reference desktop app: 0.75 pt).
3637
4330
  */
3638
4331
  readonly valueAxisMajorGridlineWidthEmu?: number;
3639
4332
  /** Companion width of the value-axis minor gridlines. */
@@ -3697,28 +4390,28 @@ interface ReadChartSpec {
3697
4390
  readonly categoryAxisLabelOffset?: number;
3698
4391
  /**
3699
4392
  * Multi-line category-label alignment relative to the tick mark —
3700
- * `<c:catAx><c:lblAlgn val="ctr|l|r"/>`. PowerPoint defaults to
4393
+ * `<c:catAx><c:lblAlgn val="ctr|l|r"/>`. The reference desktop app defaults to
3701
4394
  * `ctr` when omitted; the authored value wins.
3702
4395
  */
3703
4396
  readonly categoryAxisLabelAlign?: 'ctr' | 'l' | 'r';
3704
4397
  /**
3705
4398
  * Number-format code for the category-axis tick labels —
3706
4399
  * `<c:catAx><c:numFmt formatCode="…"/>`. Most useful on date-style
3707
- * categories (`"mm/dd/yyyy"`, `"mmm"`, etc.) but accepts any Excel
4400
+ * categories (`"mm/dd/yyyy"`, `"mmm"`, etc.) but accepts any spreadsheet
3708
4401
  * format string. Independent of `valueAxis.numberFormat` (which
3709
4402
  * targets the value axis).
3710
4403
  */
3711
4404
  readonly categoryAxisNumberFormat?: string;
3712
4405
  /**
3713
4406
  * Toggle multi-level (hierarchical) category labels —
3714
- * `<c:catAx><c:noMultiLvlLbl val="0|1"/>`. PowerPoint defaults to
4407
+ * `<c:catAx><c:noMultiLvlLbl val="0|1"/>`. The reference desktop app defaults to
3715
4408
  * `0` (multi-level labels stack). Set to `true` to flatten
3716
4409
  * hierarchical categories into a single row.
3717
4410
  */
3718
4411
  readonly categoryAxisNoMultiLevelLabel?: boolean;
3719
4412
  /**
3720
4413
  * Category-axis order — `'minMax'` (the data's natural order) or
3721
- * `'maxMin'` (reversed). For bar charts PowerPoint typically emits
4414
+ * `'maxMin'` (reversed). For bar charts the reference desktop app typically emits
3722
4415
  * `maxMin` so the first category sits at the top instead of the
3723
4416
  * bottom; honour the authored value when present.
3724
4417
  */
@@ -3729,7 +4422,7 @@ interface ReadChartSpec {
3729
4422
  * Where the category axis crosses the value axis. Either an enum
3730
4423
  * keyword (`<c:valAx><c:crosses val="autoZero|min|max"/>`) or a
3731
4424
  * specific numeric value (`<c:valAx><c:crossesAt val="N"/>`). The two
3732
- * forms are mutually exclusive — PowerPoint emits one or the other.
4425
+ * forms are mutually exclusive — the reference desktop app emits one or the other.
3733
4426
  * Default is `autoZero` (the category axis sits at value 0 if the
3734
4427
  * range straddles zero, otherwise at the closer extreme).
3735
4428
  */
@@ -3740,43 +4433,43 @@ interface ReadChartSpec {
3740
4433
  * Whether the value axis crosses the category axis *between* tick
3741
4434
  * marks (the default for bar / column / area) or *at* each tick mark
3742
4435
  * (the default for line / scatter). Maps to `<c:valAx>
3743
- * <c:crossBetween val="between|midCat"/>`. PowerPoint emits this when
4436
+ * <c:crossBetween val="between|midCat"/>`. The reference desktop app emits this when
3744
4437
  * the chart kind makes the default value non-obvious — surface it
3745
4438
  * here so the round-trip preserves the authored intent.
3746
4439
  */
3747
4440
  readonly valueAxisCrossBetween?: 'between' | 'midCat';
3748
4441
  /**
3749
4442
  * When `false`, plot data from hidden cells in the embedded workbook
3750
- * — maps to `<c:plotVisOnly val="0"/>`. PowerPoint's default is
4443
+ * — maps to `<c:plotVisOnly val="0"/>`. The reference desktop app's default is
3751
4444
  * `true` (only plot visible cells), so omitting this field emits
3752
- * `val="1"` to stay round-trip-safe with PowerPoint-authored files.
4445
+ * `val="1"` to stay round-trip-safe with files the reference desktop app authored.
3753
4446
  */
3754
4447
  readonly plotVisibleCellsOnly?: boolean;
3755
4448
  /**
3756
4449
  * Renders the chart area with rounded corners
3757
- * (`<c:chartSpace><c:roundedCorners val="1"/>`). PowerPoint's default
4450
+ * (`<c:chartSpace><c:roundedCorners val="1"/>`). The reference desktop app's default
3758
4451
  * is `false`; surface only when explicitly `true` so the round-trip
3759
4452
  * doesn't add a redundant `false`.
3760
4453
  */
3761
4454
  readonly roundedCorners?: boolean;
3762
4455
  /**
3763
- * PowerPoint built-in chart-style preset
4456
+ * The reference desktop app's built-in chart-style preset
3764
4457
  * (`<c:chartSpace><c:style val="N"/>`), 1–48. Encodes a curated combo
3765
4458
  * of theme accent colors, gradients, effects, and font sizes that
3766
- * PowerPoint applies when the user picks a chart style from the
4459
+ * the reference desktop app applies when the user picks a chart style from the
3767
4460
  * "Chart Styles" gallery. Surface for round-trip parity; renderers in
3768
4461
  * @office-kit/pptx don't (yet) interpret it.
3769
4462
  */
3770
4463
  readonly chartStyle?: number;
3771
4464
  /**
3772
4465
  * Language code for the chart's number / date formatters
3773
- * (`<c:chartSpace><c:lang val="…"/>`). PowerPoint emits the user's
3774
- * Office UI language (e.g. `'en-US'`, `'ja-JP'`). Carried for
4466
+ * (`<c:chartSpace><c:lang val="…"/>`). The reference desktop app emits the user's
4467
+ * Authoring app UI language (e.g. `'en-US'`, `'ja-JP'`). Carried for
3775
4468
  * round-trip parity; renderers in @office-kit/pptx don't act on it yet.
3776
4469
  */
3777
4470
  readonly language?: string;
3778
4471
  /**
3779
- * `<c:chartSpace><c:date1904 val="…"/>` — the Excel date-system flag.
4472
+ * `<c:chartSpace><c:date1904 val="…"/>` — the spreadsheet date-system flag.
3780
4473
  * `false` (the default) uses the 1900-epoch; `true` uses 1904.
3781
4474
  * Surface for parity; renderers don't act on it yet.
3782
4475
  */
@@ -3796,14 +4489,14 @@ interface ReadChartSpec {
3796
4489
  readonly hiLowLines?: boolean;
3797
4490
  /**
3798
4491
  * Whether a line chart draws point markers (`<c:lineChart><c:marker
3799
- * val="1"/>`). `true` is PowerPoint's "Line with Markers" subtype;
4492
+ * val="1"/>`). `true` is the reference desktop app's "Line with Markers" subtype;
3800
4493
  * absent / `false` is the plain "Line" subtype (no markers). Only
3801
4494
  * meaningful for `kind: 'line'`.
3802
4495
  */
3803
4496
  readonly lineMarkers?: boolean;
3804
4497
  /**
3805
4498
  * Gap between adjacent bar groups in `<c:gapWidth val="N"/>` units
3806
- * (0..500, percent of bar width). Default 150 (= 1.5×) in PowerPoint.
4499
+ * (0..500, percent of bar width). Default 150 (= 1.5×) in the reference desktop app.
3807
4500
  */
3808
4501
  readonly gapWidthPct?: number;
3809
4502
  /**
@@ -3888,7 +4581,7 @@ interface ReadChartSpec {
3888
4581
  readonly radarStyle?: 'standard' | 'marker' | 'filled';
3889
4582
  /**
3890
4583
  * Bubble-size scale percentage from `<c:bubbleChart><c:bubbleScale
3891
- * val="N"/>` (0..300, PowerPoint default 100). Scales every bubble's
4584
+ * val="N"/>` (0..300, the reference desktop app's default 100). Scales every bubble's
3892
4585
  * rendered radius proportionally.
3893
4586
  */
3894
4587
  readonly bubbleScale?: number;
@@ -3896,13 +4589,13 @@ interface ReadChartSpec {
3896
4589
  * Whether a bubble's `<c:bubbleSize>` maps to the bubble's area or its
3897
4590
  * width — `<c:bubbleChart><c:sizeRepresents val="area|w"/>` (ECMA-376
3898
4591
  * ST_SizeRepresents; the `'w'` token is surfaced as `'width'`).
3899
- * PowerPoint's default is `'area'`, so radius scales with `sqrt(size)`;
4592
+ * The reference desktop app's default is `'area'`, so radius scales with `sqrt(size)`;
3900
4593
  * `'width'` scales radius linearly with size.
3901
4594
  */
3902
4595
  readonly bubbleSizeRepresents?: 'area' | 'width';
3903
4596
  /**
3904
4597
  * Shade bubbles as spheres — `<c:bubble3D val="1"/>` on each series of the
3905
- * bubble chart (PowerPoint's "3-D Bubble" subtype). Unlike the
4598
+ * bubble chart (the reference desktop app's "3-D Bubble" subtype). Unlike the
3906
4599
  * other 3-D variants it has no camera, so `view3D` does not apply.
3907
4600
  */
3908
4601
  readonly bubble3D?: boolean;
@@ -3912,7 +4605,7 @@ interface ReadChartSpec {
3912
4605
  * 3-D view. Its presence selects the 3-D plot-group element for `bar` /
3913
4606
  * `column` / `line` / `area` / `pie`; for `surface` it only positions the
3914
4607
  * camera. Rejected for every other kind, and for combo charts (a 3-D
3915
- * group cannot share a plot area with another group in PowerPoint).
4608
+ * group cannot share a plot area with another group in the reference desktop app).
3916
4609
  */
3917
4610
  readonly view3D?: ChartView3D;
3918
4611
  /** Shape of 3-D bars / columns (`<c:bar3DChart><c:shape>`). Requires `view3D`. */
@@ -4142,7 +4835,7 @@ type SurfaceChartSpec = Fields<VariantField<'surface'>> & CategoryAxisMode & {
4142
4835
  * A chart this library can draw. Each kind carries only the fields its
4143
4836
  * OOXML element has, so a field the chart cannot show is a compile error
4144
4837
  * rather than a value that serializes into nothing — or into a deck
4145
- * PowerPoint offers to repair.
4838
+ * the reference desktop app offers to repair.
4146
4839
  *
4147
4840
  * `readChartSpec` returns the permissive `ReadChartSpec` instead, because a
4148
4841
  * deck authored elsewhere can combine fields no kind allows; narrow one back
@@ -4157,6 +4850,11 @@ type ChartSpec = ComboChartSpec | Bar3DChartSpec | LineArea3DChartSpec | PieChar
4157
4850
  declare const isChartSpec: (spec: ReadChartSpec) => spec is ChartSpec;
4158
4851
  //#endregion
4159
4852
  //#region src/api/fn/charts.d.ts
4853
+ /**
4854
+ * Adds a native chart to the slide at `x`/`y` with size `w`×`h` (EMU),
4855
+ * built from `spec`, with an embedded workbook so the reference desktop app's "Edit data"
4856
+ * opens the chart's numbers. Returns the chart's graphic-frame shape.
4857
+ */
4160
4858
  declare const addSlideChart: (slide: SlideData, opts: {
4161
4859
  spec: ChartSpec;
4162
4860
  x: Emu;
@@ -4178,13 +4876,13 @@ interface SlideChartData {
4178
4876
  /**
4179
4877
  * Replaces the chart definition on an existing graphic-frame chart
4180
4878
  * shape. Updates the inline `<c:strCache>` / `<c:numCache>` blocks so
4181
- * PowerPoint renders the new data without opening the embedded
4879
+ * the reference desktop app renders the new data without opening the embedded
4182
4880
  * workbook. The shape's geometry (position / size / rotation) is
4183
4881
  * preserved verbatim.
4184
4882
  *
4185
4883
  * The embedded xlsx is re-written too — it's what the "Edit data"
4186
4884
  * affordance opens. The previous workbook is replaced wholesale (no
4187
- * attempt to preserve styles a user added through Excel).
4885
+ * attempt to preserve styles a user added in a spreadsheet app).
4188
4886
  *
4189
4887
  * Pass any `ChartSpec`, including a different `kind` from the
4190
4888
  * original; this acts as "change my column chart to a line chart with
@@ -4321,21 +5019,25 @@ declare const isChartShape: (shape: SlideShapeData) => boolean;
4321
5019
  declare const getTableCells: (table: SlideShapeData) => ReadonlyArray<ReadonlyArray<TableCellData>>;
4322
5020
  /**
4323
5021
  * Reads the table-style GUID from `<a:tbl><a:tblPr><a:tableStyleId>`.
4324
- * PowerPoint uses GUIDs to reference built-in table styles
5022
+ * The reference desktop app uses GUIDs to reference built-in table styles
4325
5023
  * (`{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}` = "Medium Style 2 -
4326
5024
  * Accent 1", etc.) and theme-local styles. Returns `null` when the
4327
5025
  * table doesn't reference one (uses the slide's default style).
4328
5026
  */
4329
5027
  declare const getTableStyleId: (table: SlideShapeData) => string | null;
4330
5028
  /**
4331
- * Writes `<a:tbl><a:tblPr><a:tableStyleId>` to the given GUID. Pass
4332
- * `null` to remove the element so the table falls back to the slide's
4333
- * default style. The GUID must include its curly braces — e.g.
4334
- * `'{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}'` (PowerPoint's "Medium
4335
- * Style 2 - Accent 1"). Creates `<a:tblPr>` if absent. Throws when the
4336
- * shape isn't a table graphic frame.
5029
+ * Applies a table style by writing `<a:tbl><a:tblPr><a:tableStyleId>`.
5030
+ * `styleId` is a style GUID with its curly braces — e.g.
5031
+ * `'{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}'` — or the English name of one
5032
+ * of the reference desktop app's built-in styles (`'Medium Style 2 - Accent 1'`; see
5033
+ * `BUILTIN_TABLE_STYLES`). For a built-in style, the reference desktop app's definition is
5034
+ * added to `ppt/tableStyles.xml` (creating the part if needed) unless the
5035
+ * deck already defines that GUID, as the reference desktop app does when you pick a style.
5036
+ * Pass `null` to remove the element so the table falls back to the deck's
5037
+ * default style. Creates `<a:tblPr>` if absent. Throws when the shape isn't
5038
+ * a table graphic frame or `styleId` is neither a GUID nor a built-in name.
4337
5039
  */
4338
- declare const setTableStyleId: (table: SlideShapeData, styleId: string | null) => void;
5040
+ declare const setTableStyleId: (table: SlideShapeData, styleId: BuiltinTableStyleName | (string & {}) | null) => void;
4339
5041
  /**
4340
5042
  * Reads the boolean style flags off `<a:tblPr>` — which header /
4341
5043
  * footer rows + columns are banded or emphasised. Mirrors the
@@ -4365,7 +5067,7 @@ declare const getTableStyleFlags: (table: SlideShapeData) => {
4365
5067
  * Sets one or more boolean style flags on `<a:tblPr>`. Only the keys
4366
5068
  * present in `flags` are touched — omitted keys are left at their
4367
5069
  * current state. A flag set to `false` strips the attribute (rather
4368
- * than emitting `="0"`), matching how PowerPoint round-trips defaults.
5070
+ * than emitting `="0"`), matching how the reference desktop app round-trips defaults.
4369
5071
  *
4370
5072
  * See `getTableStyleFlags` for the meaning of each flag.
4371
5073
  */
@@ -4414,7 +5116,7 @@ declare const getTableRowHeights: (table: SlideShapeData) => ReadonlyArray<Emu>;
4414
5116
  * Sets a single column's width on the table grid. Throws on
4415
5117
  * out-of-range column indices or non-table shapes. The total table
4416
5118
  * width is not auto-adjusted — callers are responsible for keeping
4417
- * the sum consistent with the table's `<a:xfrm>` extent if PowerPoint
5119
+ * the sum consistent with the table's `<a:xfrm>` extent if the reference desktop app
4418
5120
  * is to render the table without clipping.
4419
5121
  */
4420
5122
  declare const setTableColumnWidth: (table: SlideShapeData, col: number, width: Emu) => void;
@@ -4480,7 +5182,7 @@ declare const getTableCellSpan: (cell: TableCellData) => {
4480
5182
  * The block's top-left cell `(row, col)` becomes the anchor and carries
4481
5183
  * `gridSpan` (= `colSpan`) / `rowSpan`; the cells it covers are marked
4482
5184
  * `hMerge` / `vMerge` per ECMA-376 §21.1.3.18 (`CT_TableCell`) so the
4483
- * grid stays rectangular while PowerPoint paints only the anchor. This
5185
+ * grid stays rectangular while the reference desktop app paints only the anchor. This
4484
5186
  * is the write counterpart to {@link getTableCellSpan}.
4485
5187
  *
4486
5188
  * Constraints, enforced loudly (these are authoring-boundary inputs):
@@ -4489,7 +5191,7 @@ declare const getTableCellSpan: (cell: TableCellData) => {
4489
5191
  * (a 1×1 "merge" is a no-op the caller didn't mean).
4490
5192
  * - The block must lie fully inside the table grid.
4491
5193
  * - No cell in the block may already participate in another merge —
4492
- * overlapping merges corrupt the grid and trip PowerPoint's repair
5194
+ * overlapping merges corrupt the grid and trip the reference desktop app's repair
4493
5195
  * dialog. Split the existing merge first.
4494
5196
  *
4495
5197
  * The anchor cell's text is preserved. `coveredText: 'keep'` (the default)
@@ -4565,6 +5267,12 @@ declare const setTableCellBorders: (cell: TableCellData, sides: {
4565
5267
  * top alongside its column.
4566
5268
  */
4567
5269
  declare const getTableCellTextDirection: (cell: TableCellData) => "vert" | "vert270" | "wordArtVert" | "eaVert" | "mongolianVert" | "wordArtVertRtl" | null;
5270
+ /**
5271
+ * Reads the 3-D on the cell's text body (`<a:scene3d>` / `<a:sp3d>` under its
5272
+ * `<a:bodyPr>`) — the table-cell counterpart of `getShapeText3D`. Returns
5273
+ * `null` when the body has neither.
5274
+ */
5275
+ declare const getTableCellText3D: (cell: TableCellData) => ReadText3D | null;
4568
5276
  /**
4569
5277
  * Sets the cell's text-direction via `<a:tcPr vert="…"/>`. Same six
4570
5278
  * `ST_TextVerticalType` values as `setShapeTextDirection`. Passing
@@ -4587,7 +5295,7 @@ declare const setTableCellAnchor: (cell: TableCellData, anchor: "top" | "center"
4587
5295
  /**
4588
5296
  * Reads the cell's inset margins (`<a:tcPr marL marR marT marB>`) in
4589
5297
  * EMU. Each side is `null` when the cell doesn't author it (renderers
4590
- * should fall back to PowerPoint's defaults — 91440 EMU / 0.1 inch
5298
+ * should fall back to the reference desktop app's defaults — 91440 EMU / 0.1 inch
4591
5299
  * for the horizontal margins, 45720 EMU for the vertical).
4592
5300
  */
4593
5301
  declare const getTableCellMargins: (cell: TableCellData) => {
@@ -4599,7 +5307,7 @@ declare const getTableCellMargins: (cell: TableCellData) => {
4599
5307
  /**
4600
5308
  * Sets the cell's inset margins (`<a:tcPr marL marR marT marB>`) in
4601
5309
  * EMU. Sides set to `null` are stripped from the XML so they fall back
4602
- * to PowerPoint's defaults. Creates `<a:tcPr>` if absent.
5310
+ * to the reference desktop app's defaults. Creates `<a:tcPr>` if absent.
4603
5311
  *
4604
5312
  * Pass `null` for the whole `margins` arg to drop every authored side
4605
5313
  * at once.
@@ -4616,7 +5324,7 @@ declare const getTableCellText: (cell: TableCellData) => string;
4616
5324
  interface TableCellParagraph {
4617
5325
  /**
4618
5326
  * Horizontal alignment from `<a:pPr algn>`, or `null` when unset (the
4619
- * cell then inherits PowerPoint's left default).
5327
+ * cell then inherits the reference desktop app's left default).
4620
5328
  */
4621
5329
  readonly align: ParagraphAlignment | null;
4622
5330
  /** Runs / fields / breaks in document order, with their literal `<a:rPr>` format. */
@@ -4673,10 +5381,27 @@ declare const getTableCellFill: (cell: TableCellData) => string | null;
4673
5381
  /** Effective cell appearance after table-style and cell-property inheritance. */
4674
5382
  interface TableCellAppearanceEffective {
4675
5383
  readonly fill: ShapeFill;
5384
+ /** Opacity (0–1) of a solid `fill` whose color carries an alpha transform. */
5385
+ readonly fillOpacity?: number;
4676
5386
  readonly borders: TableCellBorders;
4677
5387
  }
4678
5388
  /** Resolves table-style `tcStyle` fills and borders, then overlays local `tcPr`. */
4679
5389
  declare const getTableCellAppearanceEffective: (pres: PresentationData, cell: TableCellData) => TableCellAppearanceEffective;
5390
+ /** Effective background drawn behind a table's cells. */
5391
+ interface TableBackgroundEffective {
5392
+ readonly fill: ShapeFill;
5393
+ /** Opacity (0–1) of a solid `fill` whose color carries an alpha transform. */
5394
+ readonly fillOpacity?: number;
5395
+ /** Stops (with theme-resolved colors) and direction of a gradient `fill`. */
5396
+ readonly gradient?: ReadGradientFill;
5397
+ }
5398
+ /**
5399
+ * Resolves the table background: a fill on `<a:tblPr>` itself, else the
5400
+ * table style's `<a:tblBg>` (the reference desktop app's Themed Styles use a theme
5401
+ * style-matrix fill there). Cells without a fill of their own show it.
5402
+ * Returns `null` when neither defines one. The `tblBg` effect is not read.
5403
+ */
5404
+ declare const getTableBackgroundEffective: (pres: PresentationData, table: SlideShapeData) => TableBackgroundEffective | null;
4680
5405
  /** Applies a TextFormat to the cell's text, optionally within UTF-16 offsets
4681
5406
  * in getTableCellText (exclusive end). Breaks count as one character; invalid
4682
5407
  * ranges and split-surrogate boundaries throw without changing the text.
@@ -4720,7 +5445,7 @@ declare const getTableCellPosition: (cell: TableCellData) => {
4720
5445
  * spec token (`l`, `ctr`, `r`, `just`, `dist`, `justLow`, `thaiDist`) — so
4721
5446
  * `setTableCellAlignment(cell, 'center')` reads back as `'ctr'`. Returns
4722
5447
  * `null` when the cell has no `<a:txBody>`, or its first paragraph has no
4723
- * valid `algn` attribute (PowerPoint then defaults to `l`). For a
5448
+ * valid `algn` attribute (the reference desktop app then defaults to `l`). For a
4724
5449
  * plain-English name per paragraph, use `getTableCellParagraphs`.
4725
5450
  */
4726
5451
  declare const getTableCellAlignment: (cell: TableCellData) => ParagraphAlignmentToken | null;
@@ -4893,8 +5618,8 @@ type ImageRecolorColor = Color | {
4893
5618
  readonly colorTransforms?: readonly ColorTransform[];
4894
5619
  };
4895
5620
  /**
4896
- * A PowerPoint image recolor operation. Threshold is expressed as a percent
4897
- * (0..100), matching `getShapeImageBiLevelThreshold` and PowerPoint's UI.
5621
+ * An image recolor operation from the reference desktop app. Threshold is expressed as a percent
5622
+ * (0..100), matching `getShapeImageBiLevelThreshold` and the reference desktop app's UI.
4898
5623
  */
4899
5624
  type ImageRecolor = {
4900
5625
  readonly kind: 'none';
@@ -4956,7 +5681,7 @@ declare const findOverlappingShapePairs: (slide: SlideData) => ReadonlyArray<rea
4956
5681
  /**
4957
5682
  * Returns every shape on the slide whose bounding box extends past
4958
5683
  * the slide canvas (`getSlideSize(pres)`). Useful audit helper for
4959
- * catching shapes that PowerPoint will silently render off-screen
5684
+ * catching shapes that the reference desktop app will silently render off-screen
4960
5685
  * or clip on export. Shapes without `<a:xfrm>` bounds are skipped.
4961
5686
  *
4962
5687
  * If the presentation has no slide-size declared, every positioned
@@ -5005,28 +5730,28 @@ declare const findSlidesByLayoutType: (pres: PresentationData, layoutType: Slide
5005
5730
  * `null` for embedded pictures, non-picture shapes, or when the
5006
5731
  * relationship doesn't resolve.
5007
5732
  *
5008
- * PowerPoint emits `r:link` when the user inserts via "Link to file"
5733
+ * The reference desktop app emits `r:link` when the user inserts via "Link to file"
5009
5734
  * instead of "Insert Picture". The bytes live outside the package, so
5010
5735
  * `getShapeImageBytes` can't render them — readers / preview tools
5011
5736
  * should fall back to this URL or a placeholder.
5012
5737
  */
5013
5738
  /**
5014
5739
  * Returns `true` when the picture's `<a:blip>` carries `<a:grayscl/>`
5015
- * — PowerPoint's "Color > Grayscale" recolor preset. Renderers can
5740
+ * — the reference desktop app's "Color > Grayscale" recolor preset. Renderers can
5016
5741
  * project this onto a CSS `filter: grayscale(100%)` or an SVG
5017
5742
  * `<feColorMatrix>` desaturation.
5018
5743
  */
5019
5744
  declare const isShapeImageGrayscale: (shape: SlideShapeData) => boolean;
5020
5745
  /**
5021
5746
  * Returns the threshold of the picture's `<a:blip><a:biLevel thresh="…"/>`
5022
- * effect — PowerPoint's "Color > Black and White" preset. Threshold is
5747
+ * effect — the reference desktop app's "Color > Black and White" preset. Threshold is
5023
5748
  * a percent (0..100); pixels brighter become white, darker become black.
5024
5749
  * Returns `null` when no biLevel transform is set.
5025
5750
  */
5026
5751
  declare const getShapeImageBiLevelThreshold: (shape: SlideShapeData) => number | null;
5027
5752
  /**
5028
5753
  * Reads the picture's duotone color transform from `<a:blip><a:duotone>`.
5029
- * PowerPoint emits two `<a:srgbClr>` (or scheme color) children for a
5754
+ * The reference desktop app emits two `<a:srgbClr>` (or scheme color) children for a
5030
5755
  * two-color duotone effect — typical "Picture Tools › Recolor".
5031
5756
  * By default colors are resolved to RGB for rendering. Pass
5032
5757
  * `{ resolveColors: false }` to preserve authoring color models and
@@ -5077,9 +5802,20 @@ declare const getShapeImageFillBytes: (shape: SlideShapeData) => Uint8Array | nu
5077
5802
  * embedded image or the bytes don't match a recognized signature.
5078
5803
  */
5079
5804
  declare const getShapeImageFormat: (shape: SlideShapeData) => ImageFormat | null;
5805
+ /** One of the reference desktop app's Artistic Effects ([MS-ODRAWXML] CT_PictureEffect, `a14:artistic*`). */
5806
+ type ImageArtisticEffect = 'marker' | 'pencilGrayscale' | 'pencilSketch' | 'lineDrawing' | 'chalkSketch' | 'paintStrokes' | 'paintBrush' | 'glowDiffused' | 'blur' | 'lightScreen' | 'watercolorSponge' | 'filmGrain' | 'mosaicBubbles' | 'glass' | 'cement' | 'texturizer' | 'crisscrossEtching' | 'pastelsSmooth' | 'plasticWrap' | 'cutout' | 'photocopy' | 'glowEdges';
5807
+ /**
5808
+ * Reads the Artistic Effect the reference desktop app applied to a picture or image fill, or
5809
+ * `null` when there is none.
5810
+ *
5811
+ * The reference desktop app stores the effect in the blip's `a14:imgProps` extension next to
5812
+ * a relationship to the original picture (JPEG XR). The embedded picture is
5813
+ * already the effect's result, so renderers draw it as is.
5814
+ */
5815
+ declare const getShapeImageArtisticEffect: (shape: SlideShapeData) => ImageArtisticEffect | null;
5080
5816
  /**
5081
5817
  * Reads the picture or image fill's opacity (0–1 fraction). Returns `null` when no
5082
- * `<a:alphaModFix>` is present (PowerPoint treats absence as fully
5818
+ * `<a:alphaModFix>` is present (the reference desktop app treats absence as fully
5083
5819
  * opaque); returns `1` when an explicit alphaModFix sets full opacity.
5084
5820
  */
5085
5821
  declare const getShapeImageOpacity: (shape: SlideShapeData) => number | null;
@@ -5124,21 +5860,21 @@ declare const getShapeImageContrast: (shape: SlideShapeData) => number | null;
5124
5860
  */
5125
5861
  declare const getShapeImageBrightness: (shape: SlideShapeData) => number | null;
5126
5862
  /**
5127
- * Clears PowerPoint's image color corrections from a picture or image fill.
5863
+ * Clears the reference desktop app's image color corrections from a picture or image fill.
5128
5864
  * This removes grayscale (`grayscl`), duotone, bi-level recolor, and
5129
5865
  * brightness/contrast (`lum`) effects while preserving opacity, media
5130
5866
  * references, and all other known or extension effects.
5131
5867
  */
5132
5868
  declare const resetShapeImageColorEffects: (shape: SlideShapeData) => void;
5133
5869
  /**
5134
- * Applies a PowerPoint image recolor to a picture or image-filled shape.
5870
+ * Applies an image recolor from the reference desktop app to a picture or image-filled shape.
5135
5871
  * `none` removes the recolor while preserving opacity, media references, and
5136
5872
  * unrelated DrawingML effects. Threshold is a percentage from 0 to 100.
5137
5873
  */
5138
5874
  declare const setShapeImageRecolor: (shape: SlideShapeData, recolor: ImageRecolor) => void;
5139
5875
  /**
5140
5876
  * Sets picture or image-fill opacity (0–1; `1` is fully opaque).
5141
- * Pass `null` to restore PowerPoint's default opacity.
5877
+ * Pass `null` to restore the reference desktop app's default opacity.
5142
5878
  * Rejects shapes without an image and values outside `[0, 1]` without changing them.
5143
5879
  */
5144
5880
  declare const setShapeImageOpacity: (shape: SlideShapeData, opacity: number | null) => void;
@@ -5208,10 +5944,36 @@ interface SlideAnimationStep {
5208
5944
  /** `null` for a preset outside the `AnimationEffect` tokens. */
5209
5945
  readonly effect: AnimationEffect | null;
5210
5946
  /**
5211
- * Which edge of the slide a fly comes from or leaves by. `null` for every
5212
- * other effect — the preset states no direction, so neither does this.
5947
+ * Which edge (or corner) of the slide a fly, wipe or peek comes from or
5948
+ * leaves by, or which corner strips start from. `null` for every other
5949
+ * effect — the preset states no direction, so neither does this. The same
5950
+ * goes for the four options below, each `null` unless the effect takes it.
5213
5951
  */
5214
5952
  readonly direction: AnimationDirection | null;
5953
+ /** Blinds, checkerboard, random bars and split: which way the bars run. */
5954
+ readonly orientation: AnimationOrientation | null;
5955
+ /** Shape and split: whether the effect closes in on the centre or opens out of it. */
5956
+ readonly inOut: AnimationInOut | null;
5957
+ /** Shape: the outline the object is revealed or hidden through. */
5958
+ readonly shape: AnimationShape | null;
5959
+ /** Wheel: how many spokes. */
5960
+ readonly spokes: number | null;
5961
+ /** Spin: which way it turns. */
5962
+ readonly spinDirection: AnimationSpinDirection | null;
5963
+ /** Spin: how far it turns, in degrees. */
5964
+ readonly spinDegrees: number | null;
5965
+ /** Grow/Shrink: which axes it scales. */
5966
+ readonly scaleDirection: AnimationScaleDirection | null;
5967
+ /** Grow/Shrink: the size it reaches, in percent of the shape's own. */
5968
+ readonly scalePercent: number | null;
5969
+ /** Transparency: how transparent the shape becomes, 0–100. */
5970
+ readonly transparencyPercent: number | null;
5971
+ /**
5972
+ * The colour emphasis effects: the colour they change to — a theme slot as
5973
+ * `scheme:accent2`, an sRGB value as `#RRGGBB`, with its colour transforms
5974
+ * when it has any.
5975
+ */
5976
+ readonly color: AnimationColor | null;
5215
5977
  readonly presetId: number | null;
5216
5978
  readonly presetClass: string | null;
5217
5979
  /** `'unknown'` when the node type is not one this library models. */
@@ -5229,8 +5991,13 @@ interface SlideAnimationStep {
5229
5991
  * player that finds `'unstated'` there must not choose for the file.
5230
5992
  */
5231
5993
  readonly valueAfterEnd: AnimationValueAfterEnd;
5232
- /** `<p:bldP build="p">` — the text body is revealed paragraph by paragraph. */
5233
- readonly buildByParagraph: boolean;
5994
+ /**
5995
+ * How the effect's build entry reveals the shape's text (`<p:bldP build>`):
5996
+ * as one object (`whole`, or no entry), all paragraphs at once
5997
+ * (`allAtOnce`), one paragraph at a time (`p`), or `'custom'` (`cust`) — a
5998
+ * build the reference desktop app's own Effect Options do not offer.
5999
+ */
6000
+ readonly build: AnimationTextBuild | 'custom';
5234
6001
  readonly buildLevel: number | null;
5235
6002
  /**
5236
6003
  * Which `<p:seq>` the step lives in, named after its `nodeType`. Only
@@ -5272,22 +6039,41 @@ type AnimationSequenceKind = 'mainSeq' | 'interactiveSeq' | 'other';
5272
6039
  * renumbered to stay unique. To clear every animation first, call
5273
6040
  * `clearSlideAnimations`.
5274
6041
  *
5275
- * Supported `effect` tokens:
5276
- *
5277
- * - `'appear'` / `'disappear'` — instant entrance and exit
5278
- * - `'fadeIn'` / `'fadeOut'` — entrance and exit fade
5279
- * - `'flyIn'` / `'flyOut'` — entrance and exit that travel in from, or out
5280
- * to, one edge of the slide. `direction` picks the edge (`'top'`,
5281
- * `'right'`, `'bottom'` — the default — or `'left'`) and is an error for
5282
- * any other effect.
5283
- * - `'zoomIn'` / `'zoomOut'` — entrance that grows from nothing, exit that
5284
- * shrinks back to it, both about the shape's centre
5285
- * - `'spin'` — emphasis: one clockwise turn about the shape's centre,
5286
- * leaving it exactly where it was. It never puts the shape on the slide or
5287
- * takes it off, so a shape that is not already shown stays unshown.
5288
- *
5289
- * `durationMs` defaults to 500ms. `appear` and `disappear` are instantaneous by
5290
- * definition of the preset and write no timed behaviour at all.
6042
+ * `effect` is any entry of the reference desktop app's Entrance, Emphasis and Exit
6043
+ * galleries (see `AnimationEffect`), written exactly as the reference desktop app writes it:
6044
+ * the same preset numbers and the same behaviours, so the deck plays the same
6045
+ * in the reference desktop app as an effect picked from its gallery.
6046
+ *
6047
+ * Effect Options are the options the reference desktop app offers for the preset:
6048
+ *
6049
+ * - `direction` — `'flyIn'` / `'flyOut'` take any edge or corner of the
6050
+ * slide (`'bottom'` by default); `'wipe…'` and `'peek…'` one of the four
6051
+ * edges; `'strips…'` one of the four corners (`'bottomLeft'` by default).
6052
+ * - `orientation` — blinds, random bars and checkerboard (`'horizontal'`)
6053
+ * and split (`'vertical'`).
6054
+ * - `inOut` — shape and split: close in on the centre (`'in'`) or open out
6055
+ * of it (`'out'`). The reference desktop app's Shape exit defaults to `'out'`.
6056
+ * - `shape` — `'circle'` (the default), `'box'`, `'diamond'` or `'plus'`.
6057
+ * - `spokes` — wheel: 1 (the default), 2, 3, 4 or 8.
6058
+ * - `spinDirection` and `spinDegrees` — spin: `'clockwise'` (the default)
6059
+ * or `'counterclockwise'`, through any positive angle (360 by default).
6060
+ * - `scaleDirection` and `scalePercent` — grow/shrink: `'both'` axes (the
6061
+ * default), `'horizontal'` or `'vertical'`, to any positive size (150 %).
6062
+ * - `transparencyPercent` — transparency: 0–100 (50 by default).
6063
+ * - `color` — the colour emphasis effects (fill, font, line, brush and
6064
+ * object colour, colour pulse, grow with colour): a theme slot or
6065
+ * `#RRGGBB`, optionally with colour transforms. Accent 2 by default, and
6066
+ * Background 1 for colour pulse.
6067
+ *
6068
+ * An option passed for an effect that does not take it is an error rather
6069
+ * than a no-op.
6070
+ *
6071
+ * `durationMs` defaults to the reference desktop app's default for the preset
6072
+ * (`defaultAnimationDurationMs`). An effect made of several behaviours — a
6073
+ * Bounce, a Teeter — is scaled as a whole, the way the reference desktop app's Duration box
6074
+ * scales it. `appear` and `disappear` are instantaneous and write no timed
6075
+ * behaviour; `transparency` and `boldReveal` hold until the slide ends and
6076
+ * take no duration.
5291
6077
  *
5292
6078
  * `start` decides where the effect lands. The default `'click'` gives it a
5293
6079
  * click stop of its own, so the viewer sees it on the next click.
@@ -5297,16 +6083,19 @@ type AnimationSequenceKind = 'mainSeq' | 'interactiveSeq' | 'other';
5297
6083
  * slide appears. `delayMs` waits that long once the start condition is met.
5298
6084
  *
5299
6085
  * `'afterPrevious'` throws when the slide's timing does not say when the effect
5300
- * before it ends — it runs indefinitely, states no duration, repeats, or starts
5301
- * from another node rather than at a fixed offset. The slide is left untouched;
5302
- * `'click'` and `'withPrevious'` need no such measurement.
5303
- *
5304
- * `byParagraph` reveals the shape's text one paragraph at a time rather than
5305
- * animating the shape as a whole: one effect per paragraph, each with the same
5306
- * `start`, so the default `'click'` advances a paragraph per click. They share
5307
- * a single `<p:bldP build="p">`, which is how PowerPoint and Google Slides both
5308
- * present the build as one animation. `getSlideAnimations` reports each
5309
- * paragraph as its own step, targeting a paragraph range.
6086
+ * before it ends — it runs indefinitely, states no duration, repeats, runs
6087
+ * letter by letter, or starts from another node rather than at a fixed offset.
6088
+ * The slide is left untouched; `'click'` and `'withPrevious'` need no such
6089
+ * measurement.
6090
+ *
6091
+ * `build` is the reference desktop app's Effect Options "Sequence". `'asOneObject'` (the
6092
+ * default) animates the shape with its text as one effect. `'allAtOnce'` and
6093
+ * `'byParagraph'` give every paragraph its own effect: all of them starting
6094
+ * together, or each on its own `start` — so the default `'click'` advances a
6095
+ * paragraph per click. They share a single `<p:bldP>`, which is how the reference desktop app
6096
+ * and Google Slides both present the build as one animation.
6097
+ * `getSlideAnimations` reports each paragraph as its own step, targeting a
6098
+ * paragraph range.
5310
6099
  *
5311
6100
  * Reading the result back, including the order and start condition of every
5312
6101
  * effect on the slide, is `getSlideAnimations`.
@@ -5316,8 +6105,7 @@ declare const setShapeAnimation: (shape: SlideShapeData, opts: AnimationOptions)
5316
6105
  * Returns the animation effect bound to this shape via the slide's
5317
6106
  * `<p:timing>` tree, or `null` when the shape has none. A shape carrying
5318
6107
  * several effects reports the first one in document order. Presets outside
5319
- * the four `AnimationEffect` tokens are reported as `null` rather than
5320
- * guessed at.
6108
+ * the `AnimationEffect` tokens are reported as `null` rather than guessed at.
5321
6109
  */
5322
6110
  declare const getShapeAnimation: (shape: SlideShapeData) => AnimationEffect | null;
5323
6111
  /**
@@ -5331,7 +6119,7 @@ declare const getSlideAnimations: (slide: SlideData) => readonly SlideAnimationS
5331
6119
  * effect (i.e. `getShapeAnimation(shape)` is not `null`). Pair to
5332
6120
  * `slideHasAnimations`. Useful for audit reports — "which shapes on
5333
6121
  * this slide actually animate?" before exporting to a video pipeline
5334
- * that doesn't honor PowerPoint's timing tree.
6122
+ * that doesn't honor the reference desktop app's timing tree.
5335
6123
  */
5336
6124
  declare const findShapesWithAnimation: (slide: SlideData) => ReadonlyArray<SlideShapeData>;
5337
6125
  /** Removes every animation on the slide, keeping its media play controls. */
@@ -5447,7 +6235,7 @@ declare const getShapeRunHyperlink: (shape: SlideShapeData, paragraphIndex: numb
5447
6235
  /**
5448
6236
  * Reads the tooltip text on the shape's `<a:hlinkClick tooltip="…"/>`.
5449
6237
  * Returns `null` when no hyperlink is set or the link doesn't author
5450
- * a tooltip. Tooltips show up in PowerPoint when the user hovers over
6238
+ * a tooltip. Tooltips show up in the reference desktop app when the user hovers over
5451
6239
  * a linked shape in slide-show mode.
5452
6240
  *
5453
6241
  * Scans run-level `<a:rPr><a:hlinkClick>` first (where
@@ -5481,7 +6269,7 @@ declare const getShapeRunClickAction: (shape: SlideShapeData, paragraphIndex: nu
5481
6269
  declare const setParagraphAlignment: (shape: SlideShapeData | TableCellData, paragraphIndex: number, align: ParagraphAlignment) => void;
5482
6270
  /**
5483
6271
  * Sets the paragraph's nesting level (`<a:pPr lvl="N"/>`). Levels are
5484
- * 0-indexed; PowerPoint accepts 0 through 8. Pass `0` to clear an
6272
+ * 0-indexed; the reference desktop app accepts 0 through 8. Pass `0` to clear an
5485
6273
  * existing level — `<a:pPr lvl="0"/>` is the same as omitting the attr.
5486
6274
  * Indents matching the previous level's default bullet pair follow the level;
5487
6275
  * other indent values are preserved.
@@ -5513,7 +6301,7 @@ declare const setParagraphLevel: (shape: SlideShapeData | TableCellData, paragra
5513
6301
  declare const getParagraphAlignment: (shape: SlideShapeData | TableCellData, paragraphIndex: number) => ParagraphAlignmentToken | null;
5514
6302
  /**
5515
6303
  * Reads the paragraph's nesting level (`lvl` attribute), or `0` when
5516
- * absent — PowerPoint's default. A UTF-16 range returns the levels of all
6304
+ * absent — the reference desktop app's default. A UTF-16 range returns the levels of all
5517
6305
  * touched paragraphs in order. Invalid indices or ranges throw RangeError.
5518
6306
  */
5519
6307
  declare function getParagraphLevel(shape: SlideShapeData | TableCellData, paragraphIndex: number): number;
@@ -5523,7 +6311,7 @@ declare function getParagraphLevel(shape: SlideShapeData | TableCellData, range:
5523
6311
  }): number[];
5524
6312
  /**
5525
6313
  * Sets the spacing before and/or after a paragraph, in points (where
5526
- * a "point" is 1/72 inch). PowerPoint stores these as hundredths of a
6314
+ * a "point" is 1/72 inch). The reference desktop app stores these as hundredths of a
5527
6315
  * point inside `<a:pPr><a:spcBef>/<a:spcAft><a:spcPts val="…"/>` —
5528
6316
  * the helper converts.
5529
6317
  *
@@ -5549,7 +6337,7 @@ declare const getParagraphSpacing: (shape: SlideShapeData | TableCellData, parag
5549
6337
  /**
5550
6338
  * Reads the paragraph's left / right / first-line indents from
5551
6339
  * `<a:pPr marL="…" marR="…" indent="…"/>`. Each is in EMU (matching
5552
- * PowerPoint's internal storage); positive means a positive indent,
6340
+ * the reference desktop app's internal storage); positive means a positive indent,
5553
6341
  * negative `indent` is a hanging indent (typical for bullets).
5554
6342
  *
5555
6343
  * Returns `null` for sides the paragraph doesn't set (those inherit
@@ -5572,7 +6360,7 @@ declare const setParagraphIndent: (shape: SlideShapeData | TableCellData, paragr
5572
6360
  firstLineEmu?: number | null;
5573
6361
  }) => void;
5574
6362
  /**
5575
- * Reads the paragraph's `<a:lnSpc>` line spacing. PowerPoint stores
6363
+ * Reads the paragraph's `<a:lnSpc>` line spacing. The reference desktop app stores
5576
6364
  * line spacing two ways:
5577
6365
  *
5578
6366
  * - Multiple of the natural line height — `<a:spcPct val="150000"/>`
@@ -5680,43 +6468,6 @@ declare const setParagraphTabs: (shape: SlideShapeData | TableCellData, paragrap
5680
6468
  defaultTabSizeEmu?: number | null;
5681
6469
  }) => void;
5682
6470
  //#endregion
5683
- //#region src/api/fn/shape-color.d.ts
5684
- /**
5685
- * Resolves a DrawingML color element (`<a:srgbClr>` / `<a:schemeClr>` /
5686
- * `<a:sysClr>` / `<a:prstClr>`) with all its `<a:lumMod>` / `<a:tint>` /
5687
- * `<a:shade>` / `<a:satMod>` etc. transform children applied. Returns
5688
- * `null` when the color is a scheme token and no theme is supplied to
5689
- * resolve it.
5690
- *
5691
- * Exposed because both run-format and fill-format code paths need to
5692
- * apply the same transform pipeline; keeping a single implementation
5693
- * means future spec-coverage additions only have to land in one place.
5694
- */
5695
- declare const resolveDrawingColor: (colorEl: XmlElement, theme: PresentationTheme | null, clrMap?: Readonly<Record<string, string>> | null) => string | null;
5696
- /**
5697
- * Resolves the opacity a DrawingML color element carries through its
5698
- * `<a:alpha>` / `<a:alphaMod>` / `<a:alphaOff>` children (ECMA-376
5699
- * §20.1.2.3.1–3) to a `0`–`1` fraction, applied in document order from a
5700
- * fully opaque base. Returns `null` when the element has no alpha
5701
- * transform — PowerPoint paints that opaque, but callers can still tell
5702
- * "unspecified" apart from an explicit `1`.
5703
- *
5704
- * Kept separate from `resolveDrawingColor` because alpha never changes the
5705
- * `#RRGGBB`; OOXML encodes the two independently and renderers emit the
5706
- * opacity next to the color (`fill-opacity` / `stroke-opacity`).
5707
- */
5708
- declare const resolveDrawingColorOpacity: (colorEl: XmlElement) => number | null;
5709
- /**
5710
- * Reads back the format of a single run. Returns `null` when the run
5711
- * has no `<a:rPr>` (it inherits its format from the paragraph /
5712
- * layout / master). Boolean attributes that are explicitly `"0"`
5713
- * decode to `false`.
5714
- *
5715
- * Use `getShapeRunFormatEffective` if you want the resolved format
5716
- * after walking the placeholder / lstStyle / master inheritance chain.
5717
- */
5718
- declare const getShapeRunFormat: (shape: SlideShapeData, paragraphIndex: number, runIndex: number) => ReadTextFormat | null;
5719
- //#endregion
5720
6471
  //#region src/api/fn/shape-removal-zorder.d.ts
5721
6472
  /**
5722
6473
  * Copies a shape into `targetSlide`, including nested shapes and relationships.
@@ -5751,13 +6502,6 @@ declare const getShapeZIndex: (shape: SlideShapeData) => number;
5751
6502
  declare const setShapeZIndex: (shape: SlideShapeData | readonly SlideShapeData[], toIndex: number) => void;
5752
6503
  /** Move one shape or a selection one step backward among siblings. */
5753
6504
  declare const sendShapeBackward: (shape: SlideShapeData | readonly SlideShapeData[]) => void;
5754
- /**
5755
- * Removes the shape from its slide's shape tree. Subsequent property
5756
- * reads on this handle reflect the stale snapshot — discard it after.
5757
- *
5758
- * Removing a picture does NOT delete the underlying media part — it
5759
- * may be referenced from other slides.
5760
- */
5761
6505
  /**
5762
6506
  * Removes every shape (sp / pic / cxnSp / graphicFrame / grpSp) from
5763
6507
  * the slide's `<p:spTree>`. The required `<p:nvGrpSpPr>` and
@@ -5767,6 +6511,13 @@ declare const sendShapeBackward: (shape: SlideShapeData | readonly SlideShapeDat
5767
6511
  * Useful for "start this slide over but keep its layout binding."
5768
6512
  */
5769
6513
  declare const clearSlideShapes: (slide: SlideData) => void;
6514
+ /**
6515
+ * Removes the shape from its slide's shape tree. Subsequent property
6516
+ * reads on this handle reflect the stale snapshot — discard it after.
6517
+ *
6518
+ * Removing a picture does NOT delete the underlying media part — it
6519
+ * may be referenced from other slides.
6520
+ */
5770
6521
  declare const removeShape: (shape: SlideShapeData) => void;
5771
6522
  //#endregion
5772
6523
  //#region src/api/fn/shape-authoring.d.ts
@@ -5817,7 +6568,7 @@ declare const addSlideLine: (slide: SlideData, opts: {
5817
6568
  }) => SlideShapeData;
5818
6569
  /**
5819
6570
  * Adds a table to the slide. Cells render as plain text; `firstRow` /
5820
- * `bandRow` flags drive PowerPoint's banded-header look unless options say
6571
+ * `bandRow` flags drive the reference desktop app's banded-header look unless options say
5821
6572
  * otherwise.
5822
6573
  *
5823
6574
  * Cell text color is baked from the deck's resolved body-text color so the
@@ -5866,7 +6617,7 @@ declare const addSlideImage: (slide: SlideData, bytes: Uint8Array, opts: {
5866
6617
  //#endregion
5867
6618
  //#region src/api/fn/layout-edit.d.ts
5868
6619
  /**
5869
- * Renames the layout. This is the name PowerPoint shows in the
6620
+ * Renames the layout. This is the name the reference desktop app shows in the
5870
6621
  * "New Slide" gallery and in the layout pane, so it is what an author
5871
6622
  * picks a layout by — it is not an identifier, and nothing references
5872
6623
  * it.
@@ -5891,13 +6642,34 @@ declare const clearSlideLayoutBackground: (layout: SlideLayoutData) => void;
5891
6642
  *
5892
6643
  * Slides inherit the new box wherever they have not pushed the
5893
6644
  * placeholder around themselves: a slide placeholder carrying its own
5894
- * `<a:xfrm>` keeps it, exactly as PowerPoint behaves when you edit a
6645
+ * `<a:xfrm>` keeps it, exactly as the reference desktop app behaves when you edit a
5895
6646
  * layout under slides that were already nudged.
5896
6647
  */
5897
6648
  declare const setSlideLayoutPlaceholderBounds: (layout: SlideLayoutData, index: number, bounds: ShapeBounds) => void;
5898
6649
  //#endregion
6650
+ //#region src/api/fn/_part-placeholders.d.ts
6651
+ /**
6652
+ * Read-only view of one placeholder on a slide layout or master. Surfaces the
6653
+ * fields a slide-author cares about when binding a slide to a layout: which
6654
+ * slot is for the title, which is for the body, etc.
6655
+ */
6656
+ interface SlideLayoutPlaceholder {
6657
+ /** `<p:ph type="...">`. `null` when omitted — the spec default is `obj`. */
6658
+ readonly type: string | null;
6659
+ /** `<p:ph idx="...">`. `null` when omitted — spec default is `0`. */
6660
+ readonly idx: number | null;
6661
+ /** `<p:cNvPr name="...">` — what the reference desktop app shows in the selection pane. */
6662
+ readonly name: string;
6663
+ /**
6664
+ * Position + size in EMU. A layout placeholder with no `<a:xfrm>` of its
6665
+ * own inherits them from the master. `null` when the placeholder has no
6666
+ * explicit transform.
6667
+ */
6668
+ readonly bounds: ShapeBounds | null;
6669
+ }
6670
+ //#endregion
5899
6671
  //#region src/api/fn/layouts.d.ts
5900
- /** PowerPoint's user-visible layout name. */
6672
+ /** The reference desktop app's user-visible layout name. */
5901
6673
  declare const getSlideLayoutName: (layout: SlideLayoutData) => string;
5902
6674
  /**
5903
6675
  * Returns the package part name (e.g. `/ppt/slideLayouts/slideLayout3.xml`)
@@ -5911,26 +6683,6 @@ declare const getSlideLayoutPartName: (layout: SlideLayoutData) => string;
5911
6683
  * `findSlideByPartName` for layouts.
5912
6684
  */
5913
6685
  declare const findSlideLayoutByPartName: (pres: PresentationData, partName: string) => SlideLayoutData | null;
5914
- /**
5915
- * Read-only view of one placeholder on a slide layout. Surfaces the
5916
- * three fields a slide-author cares about when binding a slide to a
5917
- * layout: which slot is for the title, which is for the body, etc.
5918
- */
5919
- interface SlideLayoutPlaceholder {
5920
- /** `<p:ph type="...">`. `null` when omitted — spec default is `body`. */
5921
- readonly type: string | null;
5922
- /** `<p:ph idx="...">`. `null` when omitted — spec default is `0`. */
5923
- readonly idx: number | null;
5924
- /** `<p:cNvPr name="...">` — what PowerPoint shows in the selection pane. */
5925
- readonly name: string;
5926
- /**
5927
- * Layout-defined position + size in EMU. A slide placeholder with no
5928
- * `<a:xfrm>` of its own inherits these. `null` when the layout
5929
- * placeholder also lacks an explicit transform (rare — usually the
5930
- * master defines it then).
5931
- */
5932
- readonly bounds: ShapeBounds | null;
5933
- }
5934
6686
  /**
5935
6687
  * Enumerates the placeholder shapes on a slide layout. Non-placeholder
5936
6688
  * shapes (decorative rectangles, watermarks added to the layout) are
@@ -5950,7 +6702,7 @@ declare const getSlideLayoutPlaceholders: (layout: SlideLayoutData) => ReadonlyA
5950
6702
  * String matching is **case-sensitive** and exact: `findSlideLayout(pres,
5951
6703
  * 'Blank')` matches a layout named `"Blank"` but not `"blank"`. The
5952
6704
  * user-visible name is also locale-dependent (a deck authored in a
5953
- * non-English PowerPoint localizes `"Blank"`), so prefer
6705
+ * The reference desktop app localizes `"Blank"`), so prefer
5954
6706
  * {@link findSlideLayoutByType} — which matches the locale-stable
5955
6707
  * `<p:sldLayout type="…">` token (`'blank'`, `'title'`, `'obj'`, …) —
5956
6708
  * when you need a robust lookup. Pass a `RegExp` with the `i` flag here
@@ -5969,7 +6721,7 @@ declare const findLayoutsWithPlaceholderType: (pres: PresentationData, type: Pla
5969
6721
  * token. Unlike `findSlideLayout` (which matches the user-visible
5970
6722
  * name, and is therefore locale-sensitive), this matches the spec
5971
6723
  * token — `title`, `obj`, `twoObj`, `blank`, etc. — and is stable
5972
- * across PowerPoint UI languages.
6724
+ * across the reference desktop app's UI languages.
5973
6725
  */
5974
6726
  declare const findSlideLayoutByType: (pres: PresentationData, layoutType: SlideLayoutType | string) => SlideLayoutData | null;
5975
6727
  /**
@@ -6006,12 +6758,135 @@ declare const getUnusedSlideLayouts: (pres: PresentationData) => ReadonlyArray<S
6006
6758
  declare const getSlideLayoutUsageCountsByType: (pres: PresentationData) => Readonly<Record<string, number>>;
6007
6759
  declare const getSlideLayoutUsageCounts: (pres: PresentationData) => Readonly<Record<string, number>>;
6008
6760
  //#endregion
6761
+ //#region src/api/fn/slide-masters.d.ts
6762
+ /** The master's layouts, in the order the reference desktop app's Slide Master pane lists them. */
6763
+ declare const getSlideMasterLayouts: (pres: PresentationData, master: string) => ReadonlyArray<SlideLayoutData>;
6764
+ /**
6765
+ * The master's own placeholders (title, body, date, footer, slide number) and
6766
+ * where it puts them. A layout placeholder without a transform of its own sits
6767
+ * where the master's placeholder of the same type does.
6768
+ */
6769
+ declare const getSlideMasterPlaceholders: (pres: PresentationData, master: string) => ReadonlyArray<SlideLayoutPlaceholder>;
6770
+ /**
6771
+ * The master's name, as the reference desktop app shows it in Slide Master view ("<theme
6772
+ * name> Slide Master"). The reference desktop app keeps it as the name of the master's theme
6773
+ * (`<a:theme name>`), not in the master part, so renaming a master renames its
6774
+ * theme.
6775
+ */
6776
+ declare const getSlideMasterName: (pres: PresentationData, master: string) => string;
6777
+ /**
6778
+ * Whether the master is preserved (`<p:sldMaster preserve="1">`): the reference desktop app
6779
+ * deletes a master that is not preserved once no slide uses it.
6780
+ */
6781
+ declare const isSlideMasterPreserved: (pres: PresentationData, master: string) => boolean;
6782
+ /** Renames the master (its theme; see `getSlideMasterName`). */
6783
+ declare const setSlideMasterName: (pres: PresentationData, master: string, name: string) => void;
6784
+ /** Sets or clears Preserve Master. */
6785
+ declare const setSlideMasterPreserved: (pres: PresentationData, master: string, preserved: boolean) => void;
6786
+ /**
6787
+ * Insert Slide Master: adds the reference desktop app's default master, with its own
6788
+ * copy of the default theme named "Custom Design" and the eleven default
6789
+ * layouts, after the existing masters. The master is preserved, as the reference desktop app
6790
+ * marks a master it inserts. Returns the new master's part name.
6791
+ */
6792
+ declare const addSlideMaster: (pres: PresentationData) => string;
6793
+ /**
6794
+ * Deletes a master with its layouts and, when nothing else uses it, its theme.
6795
+ * Like the reference desktop app's Delete, this refuses (throws) while any slide uses one of
6796
+ * the master's layouts, and for the presentation's only master.
6797
+ */
6798
+ declare const removeSlideMaster: (pres: PresentationData, master: string) => void;
6799
+ /**
6800
+ * Insert Layout: adds the reference desktop app's "Custom Layout" — a title and the date,
6801
+ * footer and slide-number placeholders — to `master`, at `index` in its layout
6802
+ * list (the end by default). Repeats are named "1_Custom Layout", and so on.
6803
+ */
6804
+ declare const addSlideLayout: (pres: PresentationData, master: string, options?: {
6805
+ index?: number;
6806
+ }) => SlideLayoutData;
6807
+ /**
6808
+ * Deletes a layout. Like the reference desktop app's Delete, this refuses (throws) while any
6809
+ * slide uses the layout, and for a master's only layout.
6810
+ */
6811
+ declare const removeSlideLayout: (layout: SlideLayoutData) => void;
6812
+ /**
6813
+ * Master Layout: removes one of the master's five placeholders, or puts it
6814
+ * back where the reference desktop app's default master has it.
6815
+ */
6816
+ declare const setSlideMasterPlaceholderIncluded: (pres: PresentationData, master: string, type: MasterPlaceholderType, included: boolean) => void;
6817
+ /** The layout's Title checkbox: removes its title, or adds one that follows the master's. */
6818
+ declare const setSlideLayoutTitleIncluded: (layout: SlideLayoutData, included: boolean) => void;
6819
+ /**
6820
+ * The layout's Footers checkbox: removes its date, footer and slide-number
6821
+ * placeholders, or adds whichever are missing (they follow the master's).
6822
+ */
6823
+ declare const setSlideLayoutFootersIncluded: (layout: SlideLayoutData, included: boolean) => void;
6824
+ /**
6825
+ * Hide Background Graphics on a layout (`showMasterSp="0"`): slides on it stop
6826
+ * showing the master's decorative shapes; the layout's own shapes stay.
6827
+ */
6828
+ declare const setSlideLayoutBackgroundGraphicsHidden: (layout: SlideLayoutData, hidden: boolean) => void;
6829
+ /**
6830
+ * Insert Placeholder: draws a placeholder of `kind` on the layout at `bounds`.
6831
+ * Slides added on the layout get the placeholder; content and text
6832
+ * placeholders carry the master's five prompt levels, the others their
6833
+ * kind's prompt ("Picture", "Chart", …). Returns the placeholder's index in
6834
+ * `getSlideLayoutPlaceholders`.
6835
+ */
6836
+ declare const addSlideLayoutPlaceholder: (layout: SlideLayoutData, kind: LayoutPlaceholderKind, bounds: ShapeBounds) => number;
6837
+ //#endregion
6838
+ //#region src/api/fn/page-masters.d.ts
6839
+ /**
6840
+ * The notes master's placeholders (header, date, slide image, notes body,
6841
+ * footer, slide number) and where they sit on the page, or `null` when the
6842
+ * presentation has no notes master.
6843
+ */
6844
+ declare const getNotesMasterPlaceholders: (pres: PresentationData) => ReadonlyArray<SlideLayoutPlaceholder> | null;
6845
+ /**
6846
+ * The handout master's placeholders (header, date, footer, page number), or
6847
+ * `null` when the presentation has no handout master.
6848
+ */
6849
+ declare const getHandoutMasterPlaceholders: (pres: PresentationData) => ReadonlyArray<SlideLayoutPlaceholder> | null;
6850
+ /**
6851
+ * The Notes Master tab's placeholder checkboxes: removes a placeholder from
6852
+ * the notes master, or puts it back where the reference desktop app's default puts it.
6853
+ * Creates the default notes master when the presentation has none.
6854
+ */
6855
+ declare const setNotesMasterPlaceholderIncluded: (pres: PresentationData, type: NotesMasterPlaceholderType, included: boolean) => void;
6856
+ /** The Handout Master tab's placeholder checkboxes; see `setNotesMasterPlaceholderIncluded`. */
6857
+ declare const setHandoutMasterPlaceholderIncluded: (pres: PresentationData, type: HandoutMasterPlaceholderType, included: boolean) => void;
6858
+ /**
6859
+ * The notes and handout page (`<p:notesSz>`), in EMU. Notes pages, handouts
6860
+ * and the outline print on it; it is portrait unless it is wider than tall.
6861
+ */
6862
+ declare const getNotesPageSize: (pres: PresentationData) => {
6863
+ width: Emu;
6864
+ height: Emu;
6865
+ };
6866
+ /**
6867
+ * Handout Orientation / Notes Page Orientation. Both turn the one notes page
6868
+ * (`<p:notesSz>`) that notes pages and handouts share, and the reference desktop app moves
6869
+ * the notes master, the handout master and every notes page with it.
6870
+ */
6871
+ declare const setNotesPageOrientation: (pres: PresentationData, orientation: "portrait" | "landscape") => void;
6872
+ /** The Handout Master tab's Slides Per Page choices (`'outline'` is Slide Outline). */
6873
+ type HandoutSlidesPerPage = 1 | 2 | 3 | 4 | 6 | 9 | 'outline';
6874
+ /**
6875
+ * How many slides the handout master lays out per page. The handout master
6876
+ * part has nowhere to keep it; the schema's only home for a handout layout is
6877
+ * the print settings' `<p:prnPr prnWhat>` in the presentation properties, so
6878
+ * that is where it is read from (six when it names no handout layout).
6879
+ */
6880
+ declare const getHandoutSlidesPerPage: (pres: PresentationData) => HandoutSlidesPerPage;
6881
+ /** Sets the handout's slides per page; see `getHandoutSlidesPerPage`. */
6882
+ declare const setHandoutSlidesPerPage: (pres: PresentationData, slidesPerPage: HandoutSlidesPerPage) => void;
6883
+ //#endregion
6009
6884
  //#region src/api/fn/properties.d.ts
6010
6885
  /**
6011
6886
  * Document-level metadata from `/docProps/core.xml` (Open Packaging
6012
- * Conventions). Surfaces the fields PowerPoint, Keynote, and
6887
+ * Conventions). Surfaces the fields the reference desktop app, Keynote, and
6013
6888
  * everyone else exchange via OPC core-properties — these are the
6014
- * values shown in PowerPoint's "File › Properties" / "Info" panel.
6889
+ * values shown in the reference desktop app's "File › Properties" / "Info" panel.
6015
6890
  */
6016
6891
  interface CoreProperties {
6017
6892
  readonly title: string | null;
@@ -6066,7 +6941,7 @@ declare const getCoreProperties: (pres: PresentationData) => CoreProperties | nu
6066
6941
  * override) if the package didn't have one.
6067
6942
  *
6068
6943
  * Note: setting `created` / `modified` requires an ISO-8601 timestamp
6069
- * string (e.g. `'2026-05-15T12:34:56Z'`). PowerPoint expects the
6944
+ * string (e.g. `'2026-05-15T12:34:56Z'`). The reference desktop app expects the
6070
6945
  * `xsi:type="dcterms:W3CDTF"` attribute on these elements but readers
6071
6946
  * we tested all accept missing-attribute output too; this helper
6072
6947
  * therefore omits the attribute for simplicity.
@@ -6074,13 +6949,13 @@ declare const getCoreProperties: (pres: PresentationData) => CoreProperties | nu
6074
6949
  declare const setCoreProperties: (pres: PresentationData, values: Partial<CoreProperties>) => void;
6075
6950
  /**
6076
6951
  * Selected string fields from `/docProps/app.xml`
6077
- * (extended-properties / "app props"). PowerPoint exposes these
6952
+ * (extended-properties / "app props"). The reference desktop app exposes these
6078
6953
  * under File › Info / Properties as the "Origin" and "Related
6079
6954
  * People" groups.
6080
6955
  *
6081
6956
  * Numeric / derived fields (`Slides`, `Words`, `Paragraphs`, …) are
6082
- * intentionally omitted — they're recomputed by PowerPoint on save
6083
- * and reading them tends to lie about decks edited outside Office.
6957
+ * intentionally omitted — they're recomputed by the reference desktop app on save
6958
+ * and reading them tends to lie about decks edited in other apps.
6084
6959
  */
6085
6960
  interface ExtendedProperties {
6086
6961
  readonly application: string | null;
@@ -6110,7 +6985,7 @@ declare const setExtendedProperties: (pres: PresentationData, values: Partial<Ex
6110
6985
  //#endregion
6111
6986
  //#region src/api/fn/thumbnail.d.ts
6112
6987
  /**
6113
- * The package's thumbnail image, when present. PowerPoint, the OS
6988
+ * The package's thumbnail image, when present. The reference desktop app, the OS
6114
6989
  * file picker, and SharePoint preview decks via this. Format is
6115
6990
  * what's encoded in the thumbnail part — usually JPEG.
6116
6991
  */
@@ -6368,7 +7243,7 @@ interface AllShapesEntry {
6368
7243
  declare const getAllShapes: (pres: PresentationData) => ReadonlyArray<AllShapesEntry>;
6369
7244
  /**
6370
7245
  * Returns `true` when the slide carries `show="0"` on its root
6371
- * `<p:sld>` element. PowerPoint hides such slides from the slideshow
7246
+ * `<p:sld>` element. The reference desktop app hides such slides from the slideshow
6372
7247
  * but keeps them in the editing surface.
6373
7248
  */
6374
7249
  declare const isSlideHidden: (slide: SlideData) => boolean;
@@ -6378,7 +7253,7 @@ declare const isSlideBackgroundGraphicsHidden: (slide: SlideData) => boolean;
6378
7253
  declare const isSlideLayoutBackgroundGraphicsHidden: (layout: SlideLayoutData) => boolean;
6379
7254
  /**
6380
7255
  * Hide inherited decoration without removing shapes or changing background fills.
6381
- * PowerPoint's Hide Background Graphics suppresses layout decoration as well as
7256
+ * The reference desktop app's Hide Background Graphics suppresses layout decoration as well as
6382
7257
  * master shapes, despite the attribute's name. Slide placeholders remain visible.
6383
7258
  */
6384
7259
  declare const setSlideBackgroundGraphicsHidden: (slide: SlideData, hidden: boolean) => void;
@@ -6394,7 +7269,7 @@ declare const setSlideBackgroundGraphicsHidden: (slide: SlideData, hidden: boole
6394
7269
  declare const slideHasAnimations: (slide: SlideData) => boolean;
6395
7270
  /**
6396
7271
  * Toggles the slide's visibility in the slideshow. Hiding adds
6397
- * `show="0"`; showing removes the attribute (PowerPoint treats absence
7272
+ * `show="0"`; showing removes the attribute (the reference desktop app treats absence
6398
7273
  * as the default `show="1"`).
6399
7274
  */
6400
7275
  declare const setSlideHidden: (slide: SlideData, hidden: boolean) => void;
@@ -6467,7 +7342,7 @@ declare const addContentSlide: (pres: PresentationData, opts: {
6467
7342
  /**
6468
7343
  * Sugar over `addSlide` + `setSlideTitle` for the section-divider
6469
7344
  * pattern. Picks `<p:sldLayout type="secHead">` when present (the
6470
- * PowerPoint "Section Header" layout); otherwise falls back to a
7345
+ * the reference desktop app's "Section Header" layout); otherwise falls back to a
6471
7346
  * `title`-typed layout or the first available layout.
6472
7347
  */
6473
7348
  declare const addSectionHeaderSlide: (pres: PresentationData, title: string) => SlideData;
@@ -6499,7 +7374,7 @@ declare const addSlide: (pres: PresentationData, options: {
6499
7374
  *
6500
7375
  * Media parts are intentionally NOT cleaned up — they may be shared
6501
7376
  * with other slides. The freed `sldId` is NOT reused on subsequent
6502
- * `addSlide` calls (PowerPoint quirk, see plan §Risks).
7377
+ * `addSlide` calls (the reference desktop app's quirk, see plan §Risks).
6503
7378
  */
6504
7379
  declare const removeSlide: (pres: PresentationData, slide: SlideData) => void;
6505
7380
  /**
@@ -6511,7 +7386,7 @@ declare const removeSlide: (pres: PresentationData, slide: SlideData) => void;
6511
7386
  *
6512
7387
  * Internally walks `<p:sldIdLst>` and re-emits its `<p:sldId>` children
6513
7388
  * in the new order. Slide parts and rels are untouched — only the
6514
- * order in which PowerPoint plays them changes.
7389
+ * order in which the reference desktop app plays them changes.
6515
7390
  */
6516
7391
  declare const sortSlides: (pres: PresentationData, compareFn: (a: SlideData, b: SlideData) => number) => void;
6517
7392
  /**
@@ -6616,7 +7491,7 @@ declare const addMissingSlidePlaceholders: (slide: SlideData) => number;
6616
7491
  * of `addMissingSlidePlaceholders`, it starts empty and inherits its geometry
6617
7492
  * and text style from the layout and master.
6618
7493
  * Pass `source: 'master'` to create an unmatched slot that inherits directly
6619
- * from the master, without changing the layout (as PowerPoint does when
7494
+ * from the master, without changing the layout (as the reference desktop app does when
6620
7495
  * demoting outline text into a Title Only slide). Returns null if absent there.
6621
7496
  */
6622
7497
  declare const addSlidePlaceholder: (slide: SlideData, type: PlaceholderType, options?: {
@@ -6646,12 +7521,12 @@ declare const resetSlidePlaceholderTextFormatting: (slide: SlideData) => number;
6646
7521
  declare const resetSlideLayout: (slide: SlideData) => number;
6647
7522
  //#endregion
6648
7523
  //#region src/api/fn/shape-locks.d.ts
6649
- /** Whether the object's movement and resizing are both locked, as in PowerPoint's Selection Pane. */
7524
+ /** Whether the object's movement and resizing are both locked, as in the reference desktop app's Selection Pane. */
6650
7525
  declare const isShapeLocked: (shape: SlideShapeData) => boolean;
6651
- /** Whether PowerPoint preserves this object's aspect ratio while resizing it. */
7526
+ /** Whether the reference desktop app preserves this object's aspect ratio while resizing it. */
6652
7527
  declare const isShapeAspectRatioLocked: (shape: SlideShapeData) => boolean;
6653
7528
  /**
6654
- * Locks or unlocks object geometry like PowerPoint's Selection Pane. Text,
7529
+ * Locks or unlocks object geometry like the reference desktop app's Selection Pane. Text,
6655
7530
  * selection, aspect-ratio constraints and extension data remain unchanged.
6656
7531
  * Group children keep their own locks; pass all descendants for Lock All.
6657
7532
  * Arrays are committed once per slide, including selections across slides.
@@ -6679,7 +7554,7 @@ interface CustomGeometryInput {
6679
7554
  }
6680
7555
  /**
6681
7556
  * Replaces the shape's geometry (preset or custom) with the given paths. The
6682
- * text rectangle is the whole shape, as PowerPoint writes for freeforms.
7557
+ * text rectangle is the whole shape, as the reference desktop app writes for freeforms.
6683
7558
  * Coordinates are rounded to integers, which the schema requires.
6684
7559
  */
6685
7560
  declare const setShapeCustomGeometry: (shape: SlideShapeData, geometry: CustomGeometryInput) => void;
@@ -6689,6 +7564,13 @@ declare const setShapeCustomGeometry: (shape: SlideShapeData, geometry: CustomGe
6689
7564
  declare const setShapeTextLanguage: (shape: SlideShapeData, lang: string) => void;
6690
7565
  /** The language of the shape's first run that names one, or `null`. */
6691
7566
  declare const getShapeTextLanguage: (shape: SlideShapeData) => string | null;
7567
+ /**
7568
+ * The literal `lang` of each run, field and line break in a paragraph, in
7569
+ * `getShapeParagraphElements` order, or `null` where the element names none.
7570
+ * Renderers use it for language-dependent layout such as the character a
7571
+ * decimal tab aligns on.
7572
+ */
7573
+ declare const getParagraphElementLanguages: (target: SlideShapeData | TableCellData, paragraphIndex: number) => ReadonlyArray<string | null>;
6692
7574
  //#endregion
6693
7575
  //#region src/api/fn/shape-style.d.ts
6694
7576
  /** One DrawingML style-list reference used by a shape quick style. */
@@ -6697,7 +7579,7 @@ interface ShapeStyleReference {
6697
7579
  readonly idx: number;
6698
7580
  /** Theme slot or sRGB color replacing the style list's `phClr`. */
6699
7581
  readonly color?: Color;
6700
- /** Ordered DrawingML color transforms (for example PowerPoint's shade). */
7582
+ /** Ordered DrawingML color transforms (for example the reference desktop app's shade). */
6701
7583
  readonly colorTransforms?: readonly ColorTransform[];
6702
7584
  }
6703
7585
  interface ShapeStyleFontReference {
@@ -6804,7 +7686,7 @@ type ShapeMedia = {
6804
7686
  declare const addSlideMedia: (slide: SlideData, opts: SlideMediaOptions) => SlideShapeData;
6805
7687
  /**
6806
7688
  * Returns the clip behind a media picture, or `null` when the shape is not
6807
- * one. Reads PowerPoint-, PptxGenJS- and python-pptx-authored media alike: the
7689
+ * one. Reads media authored by the reference desktop app, PptxGenJS and python-pptx alike: the
6808
7690
  * embedded part is taken from `<p14:media r:embed>` when present and from the
6809
7691
  * DrawingML `r:link` otherwise; a relationship with an external target is
6810
7692
  * reported as `'online'`.
@@ -6831,7 +7713,7 @@ interface MediaBookmark {
6831
7713
  * How a clip plays in the slide show — the attributes of its
6832
7714
  * `<p:cMediaNode>` and the start condition of its time node.
6833
7715
  *
6834
- * Trimming and fades are stored in the PowerPoint 2010 `p14:media` extension.
7716
+ * Trimming and fades are stored in the `p14:media` extension ([MS-PPTX]).
6835
7717
  * `trim.endMs` is the duration removed from the end of the clip, matching the
6836
7718
  * OOXML `p14:trim@end` meaning (it is not the playback end position).
6837
7719
  */
@@ -6842,7 +7724,7 @@ interface MediaPlayback {
6842
7724
  readonly delayMs?: number;
6843
7725
  /** Plays again from the beginning until the slide moves on. */
6844
7726
  readonly loop: boolean;
6845
- /** Playback volume, 0–1. PowerPoint's own default is 0.8. */
7727
+ /** Playback volume, 0–1. The reference desktop app's own default is 0.8. */
6846
7728
  readonly volume: number;
6847
7729
  readonly muted: boolean;
6848
7730
  /** Video only: plays filling the screen. */
@@ -6879,9 +7761,43 @@ declare const getShapeMediaPlayback: (shape: SlideShapeData) => MediaPlayback |
6879
7761
  */
6880
7762
  declare const setShapeMediaPlayback: (shape: SlideShapeData, options: Partial<MediaPlayback>) => void;
6881
7763
  //#endregion
7764
+ //#region src/api/fn/shape-picture-style.d.ts
7765
+ /**
7766
+ * Applies one of the reference desktop app's built-in Picture Styles (see
7767
+ * `BUILTIN_PICTURE_STYLES`) to a picture. Like the reference desktop app, it replaces the
7768
+ * picture's geometry, fill, border, effects and 3-D in `<p:spPr>` with the
7769
+ * style's own markup — which names no theme color, so the result does not
7770
+ * follow the theme — and keeps the picture, its crop and its position. Throws
7771
+ * when the shape is not a picture or `style` is not a built-in name.
7772
+ */
7773
+ declare const setShapePictureStyle: (shape: SlideShapeData, style: BuiltinPictureStyleName) => void;
7774
+ /**
7775
+ * The built-in picture style whose markup the picture's `<p:spPr>` carries
7776
+ * exactly (position, size and extensions aside), or `null`. A deck does not
7777
+ * record which style was applied, so a picture styled and then edited — a
7778
+ * different border, an extra effect — reads as `null`.
7779
+ */
7780
+ declare const getShapePictureStyle: (shape: SlideShapeData) => BuiltinPictureStyleName | null;
7781
+ /**
7782
+ * `ST_BlipCompression`: the target a picture was compressed for. The reference desktop app's
7783
+ * Compress Pictures writes `print` (220 ppi), `screen` (150 ppi) and `email`
7784
+ * (96 ppi); `hqprint` and `none` are the schema's other values.
7785
+ */
7786
+ type ImageCompressionState = 'email' | 'screen' | 'print' | 'hqprint' | 'none';
7787
+ /** The picture's `a:blip/@cstate`, or `null` when it has none. */
7788
+ declare const getShapeImageCompressionState: (shape: SlideShapeData) => ImageCompressionState | null;
7789
+ /**
7790
+ * Records what a picture was compressed for, as Compress Pictures does: it
7791
+ * sets `a:blip/@cstate` and adds the `a14:useLocalDpi` extension (without a
7792
+ * `val`, meaning true) that the reference desktop app writes alongside it. `null` removes
7793
+ * both. This only labels the picture; resample the pixels with
7794
+ * `setShapeImage`.
7795
+ */
7796
+ declare const setShapeImageCompressionState: (shape: SlideShapeData, state: ImageCompressionState | null) => void;
7797
+ //#endregion
6882
7798
  //#region src/api/fn/shape-video.d.ts
6883
7799
  /**
6884
- * Restores a video to PowerPoint's default shape formatting.
7800
+ * Restores a video to the reference desktop app's default shape formatting.
6885
7801
  *
6886
7802
  * This is deliberately restricted to video media pictures. It clears the
6887
7803
  * image recolor/correction elements and the shape-level fill, line, effects,
@@ -6895,30 +7811,56 @@ declare const resetShapeVideoFormatting: (shape: SlideShapeData) => void;
6895
7811
  * What to change about an effect. Every field is optional; the ones left out
6896
7812
  * keep what the slide already says.
6897
7813
  *
6898
- * `byParagraph` is not an attribute flip: turning it on replaces the effect
6899
- * with one per paragraph of the shape's text, and turning it off replaces the
6900
- * whole build with a single effect on the shape. In both directions the id you
6901
- * passed stays on the effect that takes the original's place in the click
6902
- * order, and the other effects of a build are new — so a caller holding several
6903
- * handles into one build keeps only the one it addressed.
7814
+ * `build` is not an attribute flip: a paragraph build (`'allAtOnce'`,
7815
+ * `'byParagraph'`) replaces the effect with one per paragraph of the shape's
7816
+ * text, and `'asOneObject'` replaces the whole build with a single effect on
7817
+ * the shape; switching between the two paragraph builds replaces every
7818
+ * paragraph's effect. In every direction the id you passed stays on the effect
7819
+ * that takes the original's place in the click order, and the other effects of
7820
+ * a build are new — so a caller holding several handles into one build keeps
7821
+ * only the one it addressed.
6904
7822
  */
6905
7823
  interface AnimationPatch {
6906
7824
  readonly effect?: AnimationEffect;
6907
7825
  /**
6908
- * Which edge a fly comes from or leaves by. Changing it rewrites the effect
6909
- * the same way changing the preset does, because the direction is part of
6910
- * what the preset says. Passing it for an effect that does not fly is an
6911
- * error — including one this patch is turning into such an effect.
7826
+ * Which edge a fly, wipe or peek comes from or leaves by, or which corner
7827
+ * strips start from. Changing it rewrites the effect the same way changing
7828
+ * the preset does, because the direction is part of what the preset says.
7829
+ * Passing it for an effect that takes no direction is an error — including
7830
+ * one this patch is turning into such an effect. The same holds for the
7831
+ * four options below; `setShapeAnimation` documents which effects take
7832
+ * which.
6912
7833
  */
6913
7834
  readonly direction?: AnimationDirection;
7835
+ readonly orientation?: AnimationOrientation;
7836
+ readonly inOut?: AnimationInOut;
7837
+ readonly shape?: AnimationShape;
7838
+ readonly spokes?: number;
7839
+ /**
7840
+ * The emphasis effects' own options, as `setShapeAnimation` takes them:
7841
+ * Spin's direction and angle, Grow/Shrink's axes and size, Transparency's
7842
+ * amount, and the colour of the colour effects.
7843
+ */
7844
+ readonly spinDirection?: AnimationSpinDirection;
7845
+ readonly spinDegrees?: number;
7846
+ readonly scaleDirection?: AnimationScaleDirection;
7847
+ readonly scalePercent?: number;
7848
+ readonly transparencyPercent?: number;
7849
+ readonly color?: AnimationColor;
7850
+ /**
7851
+ * How long the effect runs. Left out, a changed effect keeps the duration
7852
+ * the slide gave it, unless the patch changes the preset itself: a new
7853
+ * preset takes its own default length, as picking one from the reference desktop app's
7854
+ * gallery does.
7855
+ */
6914
7856
  readonly durationMs?: number;
6915
7857
  readonly start?: AnimationStartCondition;
6916
7858
  readonly delayMs?: number;
6917
- readonly byParagraph?: boolean;
7859
+ readonly build?: AnimationTextBuild;
6918
7860
  }
6919
7861
  /**
6920
- * Changes one effect: its preset, how long it runs, when it starts, and whether
6921
- * the shape's text is revealed a paragraph at a time.
7862
+ * Changes one effect: its preset, its options, how long it runs, when it
7863
+ * starts, and how the shape's text is built.
6922
7864
  *
6923
7865
  * The effect keeps the id it was addressed by. Everything after it in the click
6924
7866
  * order is laid out again, because a longer effect moves what follows it and a
@@ -7192,7 +8134,8 @@ declare const setSlideBackgroundImageOpacity: (slide: SlideData, opacity: number
7192
8134
  /**
7193
8135
  * Updates a slide pattern background, preserving unspecified colors and transforms.
7194
8136
  * Inherited patterns become a slide override; the layout and master stay unchanged.
7195
- * A new pattern uses Mac PowerPoint's defaults: pct5, accent1 foreground, bg1 background.
8137
+ * A new pattern uses the reference desktop app's defaults: pct5, accent1 foreground, bg1
8138
+ * background.
7196
8139
  */
7197
8140
  declare const setSlideBackgroundPatternFill: (slide: SlideData, options: Partial<PatternFillOptions>) => void;
7198
8141
  /**
@@ -7204,8 +8147,8 @@ declare const setSlideBackgroundPatternFill: (slide: SlideData, options: Partial
7204
8147
  declare const copySlideBackground: (targetSlide: SlideData, sourceSlide: SlideData) => void;
7205
8148
  /**
7206
8149
  * Applies the source slide's effective background throughout its presentation.
7207
- * Like Mac PowerPoint, stores the fill on masters and clears slide/layout overrides.
7208
- * Theme colors and image relationships are preserved without flattening the fill.
8150
+ * Like the reference desktop app on Mac, stores the fill on masters and clears slide/layout
8151
+ * overrides. Theme colors and image relationships are preserved without flattening the fill.
7209
8152
  */
7210
8153
  declare const applySlideBackgroundToAll: (pres: PresentationData, slide: SlideData) => void;
7211
8154
  /**
@@ -7225,7 +8168,7 @@ declare const clearSlideBackground: (slide: SlideData) => void;
7225
8168
  //#endregion
7226
8169
  //#region src/api/fn/master-background-style.d.ts
7227
8170
  /**
7228
- * Choose one of PowerPoint's twelve Background Styles (numbered row by row).
8171
+ * Choose one of the reference desktop app's twelve Background Styles (numbered row by row).
7229
8172
  * Changes the owning master, so every slide using that master inherits the
7230
8173
  * style. Existing slide and layout background overrides remain in place.
7231
8174
  * The theme must provide the referenced background fill style.
@@ -7251,13 +8194,14 @@ declare const getSlideMasterBackgroundStyles: (slide: SlideData) => SlideMasterB
7251
8194
  * The slide's effective color map: the master's `<p:clrMap>`, overlaid by a
7252
8195
  * layout or slide `<p:clrMapOvr><a:overrideClrMapping>` when present. An explicit
7253
8196
  * slide `masterClrMapping` bypasses the layout override. Falls back to
7254
- * the standard map for decks that omit it.
8197
+ * the standard map for decks that omit it. Given a layout, it is the map the
8198
+ * layout itself is drawn with (its master's, under its own override).
7255
8199
  *
7256
8200
  * Pass the result to color resolution / renderers so `schemeClr` tokens map to
7257
- * the theme slot PowerPoint actually paints — critical for decks with an
8201
+ * the theme slot the reference desktop app actually paints — critical for decks with an
7258
8202
  * inverted map (`bg1="dk1" tx1="lt1"`).
7259
8203
  */
7260
- declare const getEffectiveColorMap: (slide: SlideData) => Record<string, string>;
8204
+ declare const getEffectiveColorMap: (slide: SlideData | SlideLayoutData) => Record<string, string>;
7261
8205
  /**
7262
8206
  * The concrete `#RRGGBB` color the deck paints body text in, resolved through
7263
8207
  * the effective color map + theme. Read from the master's `bodyStyle` level-1
@@ -7269,7 +8213,7 @@ declare const getEffectiveColorMap: (slide: SlideData) => Record<string, string>
7269
8213
  * the SAME as the background, making the text invisible. Baking the body color
7270
8214
  * in keeps generated tables / charts readable on whatever surface the deck uses.
7271
8215
  */
7272
- declare const resolveDeckBodyTextColor: (slide: SlideData) => string | null;
8216
+ declare const resolveDeckBodyTextColor: (slide: SlideData | SlideLayoutData) => string | null;
7273
8217
  //#endregion
7274
8218
  //#region src/api/fn/slide-transition.d.ts
7275
8219
  /**
@@ -7280,7 +8224,7 @@ declare const resolveDeckBodyTextColor: (slide: SlideData) => string | null;
7280
8224
  declare const getSlideTransition: (slide: SlideData) => SlideTransition | null;
7281
8225
  /**
7282
8226
  * Sets the slide's transition effect. A sound set with
7283
- * `setSlideTransitionSound` is kept, as PowerPoint keeps it when the effect
8227
+ * `setSlideTransitionSound` is kept, as the reference desktop app keeps it when the effect
7284
8228
  * changes.
7285
8229
  */
7286
8230
  declare const setSlideTransition: (slide: SlideData, options: TransitionOptions) => void;
@@ -7312,7 +8256,7 @@ declare const getSlideTransitionSound: (slide: SlideData) => TransitionSound | n
7312
8256
  /**
7313
8257
  * Sets (or with `null` removes) the sound played when the slide's transition
7314
8258
  * starts. A slide without a transition gets one with no effect, which is how
7315
- * PowerPoint stores a sound on a "None" transition.
8259
+ * the reference desktop app stores a sound on a "None" transition.
7316
8260
  */
7317
8261
  declare const setSlideTransitionSound: (slide: SlideData, sound: TransitionSoundInput | null) => void;
7318
8262
  //#endregion
@@ -7636,7 +8580,7 @@ declare const setSlideNotes: (slide: SlideData, value: string, options?: {
7636
8580
  };
7637
8581
  newlines?: "paragraph" | "break";
7638
8582
  }) => void;
7639
- /** Applies PowerPoint-style Change Case to a speaker-notes range. */
8583
+ /** Applies Change Case, as the reference desktop app does, to a speaker-notes range. */
7640
8584
  declare const transformSlideNotesCase: (slide: SlideData, value: TextCase, options?: {
7641
8585
  range?: {
7642
8586
  start: number;
@@ -7680,7 +8624,7 @@ declare const clearAllSlideNotes: (pres: PresentationData) => number;
7680
8624
  //#endregion
7681
8625
  //#region src/api/fn/slide-size.d.ts
7682
8626
  /**
7683
- * Width × height of the slide canvas, in EMU. `type` is PowerPoint's
8627
+ * Width × height of the slide canvas, in EMU. `type` is the reference desktop app's
7684
8628
  * aspect-ratio hint (`screen4x3`, `screen16x9`, ...); the actual size
7685
8629
  * is always `width` × `height`.
7686
8630
  */
@@ -7692,7 +8636,7 @@ interface SlideSize {
7692
8636
  /** Returns the slide canvas size, or `null` if `presentation.xml` omits it. */
7693
8637
  declare const getSlideSize: (pres: PresentationData) => SlideSize | null;
7694
8638
  /**
7695
- * The number PowerPoint prints on the first slide — `<p:presentation
8639
+ * The number the reference desktop app prints on the first slide — `<p:presentation
7696
8640
  * firstSlideNum="N"/>`, or `1` when the deck does not say. A `slidenum` field
7697
8641
  * on the n-th slide shows this plus n − 1, so a renderer that substitutes live
7698
8642
  * field values has to start counting here rather than at one.
@@ -7714,7 +8658,7 @@ declare const setSlideSize: (pres: PresentationData, opts: SlideSize, options?:
7714
8658
  }) => void;
7715
8659
  /** 10in × 7.5in (`screen4x3`). */
7716
8660
  declare const SLIDE_SIZE_4_3: SlideSize;
7717
- /** 13.333in × 7.5in (`screen16x9`) — Office 2013+ default. */
8661
+ /** 13.333in × 7.5in (`screen16x9`) — the default since 2013. */
7718
8662
  declare const SLIDE_SIZE_16_9: SlideSize;
7719
8663
  /** 13.333in × 8.33in (`screen16x10`). */
7720
8664
  declare const SLIDE_SIZE_16_10: SlideSize;
@@ -7737,17 +8681,19 @@ declare function getDrawingGuidesVisible(presentation: PresentationData): boolea
7737
8681
  declare const setDrawingGuidesVisible: (presentation: PresentationData, visible: boolean) => void;
7738
8682
  /** Document grid snapping; null means no slide-view preferences are stored. */
7739
8683
  declare function getSnapToGrid(presentation: PresentationData): boolean | null;
8684
+ /** Turns snapping objects to the document grid (View ▸ Guides ▸ Snap to Grid) on or off. */
7740
8685
  declare const setSnapToGrid: (presentation: PresentationData, enabled: boolean) => void;
7741
8686
  /** Grid spacing in EMU, or null when no document spacing is specified. */
7742
8687
  declare function getGridSpacing(presentation: PresentationData): {
7743
8688
  x: number;
7744
8689
  y: number;
7745
8690
  } | null;
8691
+ /** Sets the document grid's horizontal (`x`) and vertical (`y`) spacing, in EMU. */
7746
8692
  declare const setGridSpacing: (presentation: PresentationData, spacing: {
7747
8693
  x: number;
7748
8694
  y: number;
7749
8695
  }) => void;
7750
- /** Slides whose bodies are collapsed in PowerPoint's outline view, in deck order. */
8696
+ /** Slides whose bodies are collapsed in the reference desktop app's outline view, in deck order. */
7751
8697
  declare function getCollapsedOutlineSlides(presentation: PresentationData): readonly SlideData[];
7752
8698
  /** Persists outline collapse and retains other view settings. */
7753
8699
  declare const setSlideOutlineCollapsed: (slide: SlideData | readonly SlideData[], collapsed: boolean) => void;
@@ -7794,7 +8740,7 @@ interface SlideShowProperties {
7794
8740
  useTimings: boolean;
7795
8741
  /**
7796
8742
  * Show Media Controls: whether hovering a video or audio clip in the show
7797
- * reveals its play bar. PowerPoint 2010 stores it as `p14:showMediaCtrls`
8743
+ * reveals its play bar. The reference desktop app stores it as `p14:showMediaCtrls`
7798
8744
  * in the show properties' extension list; omit it to leave the file as is.
7799
8745
  */
7800
8746
  showMediaControls?: boolean;
@@ -7807,5 +8753,5 @@ declare function setSlideShowProperties(pres: PresentationData, settings: SlideS
7807
8753
  //#region src/api/index.d.ts
7808
8754
  declare const VERSION: string;
7809
8755
  //#endregion
7810
- export { getSlideNotes as $, getShapeImageLinkUrl as $a, removeSlideComment as $c, shapesOverlap as $d, TextFill as $f, getParagraphLineSpacing as $i, setShapeAdjustValues as $l, addTitleSlide as $n, getTableStyleFlags as $o, removeThumbnail as $r, ScatterChartSeries as $s, getSlideMasterBackgroundImageBytes as $t, findShapesWithHyperlinks as $u, PresentationNotesEntry as A, AnimationSequenceKind as Aa, clearAllSlideComments as Ac, getShapeKind as Ad, PathFillMode as Af, addSlideShape as Ai, setShapeTextAutoFit as Al, ShapeStyleFontReference as An, TableCellBorders as Ao, getSlideInfo as Ar, getPresentationChartKindCounts as As, setSlideMasterBackgroundStyle as At, getShapeFillColor as Au, getAllCharts as B, findShapesOutsideCanvas as Ba, getCommentDate as Bc, getSlideMasterPartName as Bd, LightRigType as Bf, sendShapeToBack as Bi, ShapeEffectAny as Bl, isShapeLocked as Bn, getTableCellFill as Bo, isSlideHidden as Br, BubbleChartSpec as Bs, getSlideBackgroundImageFillLayout as Bt, getShapeStrokeJoin as Bu, getPresentationFirstSlideNumber as C, setSlidePlaceholders as Ca, ReadChartSpec as Cc, getShapeBounds as Cd, SlideTransition as Cf, getUnusedSlideLayouts as Ci, getShapeTextWrap as Cl, addSlideMedia as Cn, setMediaPartBytes as Co, Emu as Cp, getPresentationText as Cr, SlideChartData as Cs, getSlideTransitionSound as Ct, getPresentationFonts as Cu, PresentationCommentEntry as D, getShapeAnimation as Da, ImageFit as Dc, getShapeDescription as Dd, GeomCommand as Df, setSlideLayoutPlaceholderBounds as Di, setShapeText as Dl, setShapeMediaPlayback as Dn, ValidationIssue as Do, mm as Dp, getSlideAt as Dr, findChartsWithDataLabels as Ds, resolveDeckBodyTextColor as Dt, ShapeFill as Du, PresentationChartEntry as E, findShapesWithAnimation as Ea, setShapeClickAction as Ec, getShapeCustomGeometry as Ed, CustomGeometry as Ef, setSlideLayoutName as Ei, setShapeParagraphs as El, getShapeMediaPlayback as En, IssueSeverity as Eo, inches as Ep, getShapeAt as Er, findChartsBySeriesName as Es, getEffectiveColorMap as Et, setPresentationTheme as Eu, clearAllSlideNotes as F, ImageCrop as Fa, findCommentsByAuthor as Fc, getShapePreset as Fd, Bevel as Ff, clearSlideShapes as Fi, setShapeTextFormat as Fl, setShapeTextLanguage as Fn, getTableCell as Fo, getSlideTextLength as Fr, getShapeChartSpec as Fs, copySlideBackground as Ft, getShapeStrokeCap as Fu, getAllTables as G, getShapeImageBiLevelThreshold as Ga, getCommentStatus as Gc, isShapePlaceholder as Gd, Text3D as Gf, ShapeParagraphElement as Gi, getShapeEffectsEffective as Gl, resetSlideLayout as Gn, getTableCellSpan as Go, replaceTextInSlideNotes as Gr, ComboChartSpec as Gs, getSlideLayoutBackground as Gt, findShapeByName as Gu, getAllHyperlinks as H, findSlidesByLayoutPartName as Ha, getCommentParent as Hc, getSlideMasterUsageCounts as Hd, ReadText3D as Hf, getShapeRunFormat as Hi, findShapesByEffect as Hl, setShapeLocked as Hn, getTableCellParagraphs as Ho, replaceTextInNotes as Hr, ChartSpec as Hs, getSlideBackgroundImageOpacity as Ht, getShapeStrokeWidth as Hu, clearSlideHyperlinks as I, ImageRecolor as Ia, findCommentsByText as Ic, getShapeRotation as Id, BevelPreset as If, copyShape as Ii, setShapeTextMargins as Il, CustomGeometryInput as In, getTableCellAlignment as Io, getSlideXmlString as Ir, getSlideCharts as Is, getSlideBackground as It, getShapeStrokeColor as Iu, getHiddenSlides as J, getShapeImageContrast as Ja, getPresentationCommentCountsByAuthor as Jc, renameShape as Jd, ParagraphAlignmentToken as Jf, getParagraphBulletImageBytes as Ji, clearShapeFill as Jl, addBlankSlide as Jn, getTableCells as Jo, setSlideBackgroundGraphicsHidden as Jr, OfPieChartSpec as Js, getSlideLayoutBackgroundPatternFill as Jt, findShapesByHyperlink as Ju, getDistinctHyperlinkUrls as K, getShapeImageBrightness as Ka, getCommentText as Kc, isShapeTextBox as Kd, BulletStyle as Kf, getParagraphAlignment as Ki, setShapeGlow as Kl, resetSlidePlaceholderGeometry as Kn, getTableCellText as Ko, replaceTokensInPresentation as Kr, DoughnutChartSpec as Ks, getSlideLayoutBackgroundGradientFill as Kt, findShapeByText as Ku, findSlidesByHyperlink as L, ImageRecolorColor as La, findSlidesWithCommentsByAuthor as Lc, getShapeSize as Ld, CameraPreset as Lf, getShapeZIndex as Li, setShapeTextWrap as Ll, CustomGeometryPathInput as Ln, getTableCellAnchor as Lo, getSlides as Lr, setChartSpec as Ls, getSlideBackgroundGradientFill as Lt, getShapeStrokeColorResolved as Lu, SlideNotesTextFormatOptions as M, AnimationTarget as Ma, findCommentAuthorByName as Mc, getShapePlaceholderIdx as Md, LineDash as Mf, addSlideTextBox as Mi, setShapeTextColumns as Ml, ShapeStyleReference as Mn, clearTableCellFill as Mo, getSlideOutline as Mr, getShapeChartKind as Ms, SlideLayoutBackgroundShape as Mt, getShapeFillEffective as Mu, appendSlideNotes as N, AnimationValueAfterEnd as Na, findCommentsAfter as Nc, getShapePlaceholderType as Nd, LineEndSize as Nf, bringShapeForward as Ni, setShapeTextDirection as Nl, setShapeStyle as Nn, getPresentationTableCountsBySlide as No, getSlidePartName as Nr, getShapeChartSeriesNames as Ns, applySlideBackgroundToAll as Nt, getShapeFillOpacity as Nu, PresentationHyperlinkEntry as O, getSlideAnimations as Oa, setShapeImage as Oc, getShapeFlip as Od, GeomPath as Of, addSlideImage as Oi, setShapeText3D as Ol, groupShapes as On, TableCellAppearanceEffective as Oo, pt as Op, getSlideCount as Or, findChartsWithTrendlines as Os, SlideMasterBackgroundStyle as Ot, ShapeStroke as Ou, clearAllHyperlinks as P, SlideAnimationStep as Pa, findCommentsBefore as Pc, getShapePosition as Pd, LineEndType as Pf, bringShapeToFront as Pi, setShapeTextField as Pl, getShapeTextLanguage as Pn, getSlideTables as Po, getSlideText as Pr, getShapeChartSeriesValues as Ps, clearSlideBackground as Pt, getShapeStroke as Pu, getPresentationNotesText as Q, getShapeImageFormat as Qa, getSlideComments as Qc, setShapeHidden as Qd, ReadTextFormat as Qf, getParagraphLevel as Qi, getShapeStrokeDash as Ql, addSlideAt as Qn, getTableSize as Qo, getThumbnail as Qr, RadarChartSpec as Qs, getSlideMasterBackgroundGradientFill as Qt, findShapesByText as Qu, findSlidesWithChartKind as R, findFlippedShapes as Ra, getCommentAuthor as Rc, getShapeText as Rd, LightRig as Rf, removeShape as Ri, TextCase as Rl, setShapeCustomGeometry as Rn, getTableCellAppearanceEffective as Ro, getSlidesByLayout as Rr, Bar3DChartSpec as Rs, getSlideBackgroundImageBytes as Rt, getShapeStrokeCompound as Ru, SlideSize as S, setSlideBody as Sa, ChartView3D as Sc, getShapeAltTitle as Sd, AnimationStartCondition as Sf, getSlideLayouts as Si, getShapeTextMargins as Sl, SlideMediaSource as Sn, readPackagePart as So, ImageFormat as Sp, getPresentationShapeCountsBySlide as Sr, splitTableCell as Ss, getSlideTransition as St, PresentationTheme as Su, setSlideSize as T, clearSlideAnimations as Ta, getShapeClickAction as Tc, getShapeCenter as Td, TransitionOptions as Tf, setSlideLayoutBackground as Ti, setShapeBulletStyle as Tl, getShapeMedia as Tn, validatePresentation as To, emu as Tp, getPresentationTextLengthsBySlide as Tr, findChartByKind as Ts, setSlideTransitionSound as Tt, setPresentationFonts as Tu, getAllImages as U, findSlidesByLayoutType as Ua, getCommentPosition as Uc, getUnusedSlideMasters as Ud, Rotation3D as Uf, resolveDrawingColor as Ui, getShapeEffect as Ul, addMissingSlidePlaceholders as Un, getTableCellPosition as Uo, replaceTextInPresentation as Ur, ChartVariant as Us, getSlideBackgroundPatternFill as Ut, findEmptyPlaceholders as Uu, getAllComments as V, findSlidesByLayoutName as Va, getCommentFormat as Vc, getSlideMasterPartNames as Vd, PresetMaterial as Vf, setShapeZIndex as Vi, clearShapeEffects as Vl, setShapeAspectRatioLocked as Vn, getTableCellMargins as Vo, isSlideLayoutBackgroundGraphicsHidden as Vr, CandlestickChartSpec as Vs, getSlideBackgroundImageIntrinsicSize as Vt, getShapeStrokeOpacity as Vu, getAllNotes as W, getPresentationImageCountsBySlide as Wa, getCommentSlide as Wc, isShapeHidden as Wd, Scene3D as Wf, resolveDrawingColorOpacity as Wi, getShapeEffects as Wl, addSlidePlaceholder as Wn, getTableCellRunFormatEffective as Wo, replaceTextInSlide as Wr, ComboChartSeries as Ws, getSlideColorMapOverride as Wt, findShapeById as Wu, getPresentationNotesLength as X, getShapeImageDuotone as Xa, getPresentationCommenters as Xc, setShapeBounds as Xd, RunSpec as Xf, getParagraphEndFormat as Xi, getShapePatternFill as Xl, addSectionHeaderSlide as Xn, getTableDimensions as Xo, slideHasAnimations as Xr, PieChartSpec as Xs, getSlideLayoutShapes as Xt, findShapesByName as Xu, getPresentationHyperlinkCountsBySlide as Y, getShapeImageCrop as Ya, getPresentationCommentCountsBySlide as Yc, setShapeAltTitle as Yd, ParagraphSpec as Yf, getParagraphBulletStyle as Yi, clearShapeStroke as Yl, addContentSlide as Yn, getTableColumnWidths as Yo, setSlideHidden as Yr, Pie3DChartSpec as Ys, getSlideLayoutBackgroundShapes as Yt, findShapesByKind as Yu, getPresentationNotesLengthsBySlide as Z, getShapeImageFillBytes as Za, getSlideCommentAuthors as Zc, setShapeDescription as Zd, ReadTextFill as Zf, getParagraphIndent as Zi, getShapeStrokeArrow as Zl, addSlide as Zn, getTableRowHeights as Zo, PresentationThumbnail as Zr, PlainChartSeries as Zs, getSlideMasterBackground as Zt, findShapesByPreset as Zu, setSlideOutlineCollapsed as _, setParagraphTypography as _a, ChartSeriesAxis as _c, getGroupChildren as _d, CommentPosition as _f, getSlideLayoutPartName as _i, getShapeTextAutoFit as _l, MediaFade as _n, getOrphanMediaPartNames as _o, ColorTransform as _p, findSlideByTitle as _r, setTableCellTextFormat as _s, setSlideNotesFormat as _t, setShapeStrokeJoin as _u, getShapeImageFillLayout as a, getShapeRunCount as aa, ChartDataLabelPosition as ac, getShapeXmlString as ad, createPresentation as af, getPresentationCreated as ai, getParagraphPropertiesEffective as al, setSlideBackgroundImageFillLayout as an, resetShapeImageColorEffects as ao, PatternFillOptions as ap, removeSlide as ar, mergeTableCells as as, getSlidesWithComments as at, setShapeNoStroke as au, SLIDE_SIZE_16_9 as b, getSlideBody as ba, ChartTrendline as bc, getMaxShapeIdInPresentation as bd, AnimationEffect as bf, getSlideLayoutUsageCounts as bi, getShapeTextColumns as bl, ShapeMedia as bn, getSlideMediaPartNames as bo, AudioFormat as bp, getAllShapes as br, setTableStyleFlags as bs, TransitionSoundInput as bt, PresentationFonts as bu, DrawingGuide as c, getShapeRunText as ca, ChartDateAxis as cc, getSlideShapes as cd, PresentationData as cf, setCoreProperties as ci, setShapeHyperlink as cl, ImageFillLayout as cn, setShapeImageCrop as co, ReadGradientStop as cp, swapSlides as cr, setTableCellAlignment as cs, getSlidesWithNotes as ct, setShapePreset as cu, getDrawingGuidesVisible as d, setParagraphBullet as da, ChartGrouping as dc, setSlideLayout as dd, SlideLayoutData as df, SlideLayoutPlaceholder as di, TextAutoFit as dl, AnimationPatch as dn, MediaPart as do, ReflectionOptions as dp, setCustomShows as dr, setTableCellClickAction as ds, getVisibleSlides as dt, setShapeSlideBackgroundFill as du, getParagraphSpacing as ea, ScatterChartSpec as ec, findSlidePlaceholder as ed, SlideSection as ef, setThumbnail as ei, setCommentStatus as el, getSlideMasterBackgroundPatternFill as en, getShapeImageOpacity as eo, TextFormat as ep, duplicateSlide as er, getTableStyleId as es, getSlideNotesLength as et, setShapeFill as eu, getGridSpacing as f, setParagraphIndent as fa, ChartKind as fc, translateShapes as fd, SlideShapeData as ff, findLayoutsWithPlaceholderType as fi, TextWrap as fl, moveSlideAnimation as fn, PackagePartInfo as fo, ShadowOptions as fp, AllShapesEntry as fr, setTableCellFill as fs, hasSlideNotes as ft, setShapeStroke as fu, setGridSpacing as g, setParagraphTabs as ga, ChartSeries as gc, findShapesInRect as gd, CommentAuthor as gf, getSlideLayoutName as gi, getShapeTextAnchor as gl, MediaBookmark as gn, getMediaParts as go, asColor as gp, findSlideByText as gr, setTableCellTextDirection as gs, setSlideNotes as gt, setShapeStrokeDash as gu, setDrawingGuidesVisible as h, setParagraphSpacing as ha, ChartSecondaryValueAxis as hc, findShapesAtPoint as hd, CommentStatus as hf, findSlideLayoutByType as hi, getShapeText3D as hl, resetShapeVideoFormatting as hn, compactPackage as ho, SchemeColorToken as hp, findSlideByPartName as hr, setTableCellText as hs, resolveSlideNotesTextColor as ht, setShapeStrokeCompound as hu, setSlideShowProperties as i, getShapeRunClickAction as ia, ChartAxisScaling as ic, getShapeSlide as id, PresentationSize as if, getExtendedProperties as ii, ParagraphTabStop as il, setSlideBackgroundImage as in, isShapeImageGrayscale as io, GradientStop as ip, moveSlide as ir, isTableShape as is, getSlidesWithCharts as it, setShapeNoFill as iu, PresentationTableEntry as j, AnimationStart as ja, clearSlideComments as jc, getShapeName as jd, ArrowOptions as jf, addSlideTable as ji, setShapeTextBodyRotationDeg as jl, ShapeStyleOptions as jn, TableCellParagraph as jo, getSlideLayoutCount as jr, getShapeChartCategories as js, SlideBackground as jt, getShapeFillColorResolved as ju, PresentationImageEntry as k, setShapeAnimation as ka, addSlideComment as kc, getShapeId as kd, GeomPoint as kf, addSlideLine as ki, setShapeTextAnchor as kl, ungroupShapes as kn, TableCellBorder as ko, getSlideIndex as kr, getPresentationChartCountsBySlide as ks, getSlideMasterBackgroundStyles as kt, getShapeFill as ku, getCollapsedOutlineSlides as l, isParagraphBulletPicture as la, ChartErrorBarAmount as lc, getSlidesWithEmptyPlaceholders as ld, SlideCommentData as lf, setExtendedProperties as li, setShapeRunFormat as ll, ImageTileAlignment as ln, setShapeImageOpacity as lo, GlowOptions as lp, CustomShow as lr, setTableCellAnchor as ls, getSlidesWithOverlap as lt, setShapeRotation as lu, setDrawingGuides as m, setParagraphLineSpacing as ma, ChartOfPie as mc, centerShapeOnSlide as md, COMMENT_STATUSES as mf, findSlideLayoutByPartName as mi, getShapeBodyPrEffective as ml, updateSlideAnimation as mn, _internalPackageOf as mo, HexColor as mp, SlideOutlineEntry as mr, setTableCellParagraphs as ms, replaceHyperlink as mt, setShapeStrokeCap as mu, SlideShowProperties as n, getShapeParagraphCount as na, SurfaceChartSpec as nc, findSlidePlaceholders as nd, setSlideSections as nf, ExtendedProperties as ni, ParagraphBulletDetail as nl, setSlideBackground as nn, hasShapeImage as no, toWritableTextFormat as np, importSlide as nr, insertTableRow as ns, getSlideNotesParagraphEndFormat as nt, setShapeGradientFill as nu, getShapeImageIntrinsicSize as o, getShapeRunHyperlink as oa, ChartDataLabels as oc, getShapesBounds as od, loadPresentation as of, getPresentationModified as oi, getShapeHyperlink as ol, setSlideBackgroundImageOpacity as on, setShapeImageBrightness as oo, PatternPreset as op, reverseSlides as or, removeTableColumn as os, getSlidesWithHyperlinks as ot, setShapePatternFill as ou, getSnapToGrid as p, setParagraphLevel as pa, ChartManualLayout as pc, ShapeBounds as pd, TableCellData as pf, findSlideLayout as pi, appendShapeText as pl, removeSlideAnimation as pn, PresentationSummary as po, Color as pp, SlideInfo as pr, setTableCellMargins as ps, removeSlideNotes as pt, setShapeStrokeArrow as pu, getEmptySlides as q, getShapeImageBytes as qa, getCommentsSortedByDate as qc, pointInShape as qd, ParagraphAlignment as qf, getParagraphBullet as qi, setShapeShadow as ql, resetSlidePlaceholderTextFormatting as qn, getTableCellTextDirection as qo, searchSlides as qr, LineArea3DChartSpec as qs, getSlideLayoutBackgroundImageBytes as qt, findShapeInPresentation as qu, getSlideShowProperties as r, getShapeParagraphElements as ra, isChartSpec as rc, getShapeIndex as rd, PresentationInput as rf, getCoreProperties as ri, ParagraphProperties as rl, setSlideBackgroundGradientFill as rn, hasShapeText as ro, GradientFillOptions as rp, mergePresentations as rr, isChartShape as rs, getSlideNotesTextFormats as rt, setShapeImageFill as ru, setShapeImageFillLayout as s, getShapeRunHyperlinkTooltip as sa, ChartDataTable as sc, getSlideLayout as sd, savePresentation as sf, incrementRevision as si, getShapeRunFormatEffective as sl, setSlideBackgroundPatternFill as sn, setShapeImageContrast as so, ReadGradientFill as sp, sortSlides as sr, removeTableRow as ss, getSlidesWithImages as st, setShapePosition as su, VERSION as t, getShapeHyperlinkTooltip as ta, StockChartSpec as tc, findSlidePlaceholderByIdx as td, getSlideSections as tf, CoreProperties as ti, setCommentText as tl, getSlideMasterShapes as tn, getShapeImagePartName as to, TextOutline as tp, duplicateSlideAt as tr, insertTableColumn as ts, getSlideNotesLineBreaks as tt, setShapeFlip as tu, getDrawingGuides as u, setParagraphAlignment as ua, ChartErrorBars as uc, replaceTokensInSlide as ud, SlideData as uf, touchModified as ui, TextAnchor as ul, ImageTileFlip as un, setShapeImageRecolor as uo, InnerShadowOptions as up, getCustomShows as ur, setTableCellBorders as us, getSlidesWithTables as ut, setShapeSize as uu, setSnapToGrid as v, setShapeRunHyperlink as va, ChartTextStyle as vc, getGroupTransform as vd, SlideComment as vf, getSlideLayoutPlaceholders as vi, getShapeTextAutoFitParams as vl, MediaPlayback as vn, getPackageSize as vo, PresetShape as vp, findSlidesByNotes as vr, setTableColumnWidth as vs, transformSlideNotesCase as vt, getShapeGradientFill as vu, getSlideSize as w, setSlideTitle as wa, ShapeClickAction as wc, getShapeBoundsResolved as wd, TransitionEffect as wf, clearSlideLayoutBackground as wi, setShapeAlignment as wl, findShapesWithMedia as wn, slidesUsingMediaPart as wo, cm as wp, getPresentationTextLength as wr, addSlideChart as ws, setSlideTransition as wt, getPresentationTheme as wu, SLIDE_SIZE_4_3 as x, getSlideTitle as xa, ChartUpDownBars as xc, getShapeAdjustValues as xd, AnimationOptions as xf, getSlideLayoutUsageCountsByType as xi, getShapeTextDirection as xl, SlideMediaOptions as xn, listPackageParts as xo, VideoFormat as xp, getOutlineText as xr, setTableStyleId as xs, clearSlideTransition as xt, PresentationFontsInput as xu, SLIDE_SIZE_16_10 as y, setShapeRunText as ya, ChartTimeUnit as yc, getMaxShapeId as yd, AnimationDirection as yf, getSlideLayoutType as yi, getShapeTextBodyRotationDeg as yl, MediaTrim as yn, getPresentationSummary as yo, PlaceholderType as yp, findSlidesByText as yr, setTableRowHeight as ys, TransitionSound as yt, getShapeGradientFillEffective as yu, findSlidesWithChartTrendlines as z, findOverlappingShapePairs as za, getCommentAuthors as zc, getSlideMasterCount as zd, LightRigDirection as zf, sendShapeBackward as zi, ShapeEffect as zl, isShapeAspectRatioLocked as zn, getTableCellBorders as zo, isSlideBackgroundGraphicsHidden as zr, BubbleChartSeries as zs, getSlideBackgroundImageCrop as zt, getShapeStrokeEffective as zu };
7811
- //# sourceMappingURL=index-Dnzhy4tZ.d.ts.map
8756
+ export { getSlideNotes as $, findShapesWithAnimation as $a, ChartUpDownBars as $c, getSlideLayout as $d, loadPresentation as $f, SlideLayoutPlaceholder as $i, getShapeTextAutoFitParams as $l, resetSlidePlaceholderTextFormatting as $n, slidesUsingMediaPart as $o, BulletStyle as $p, searchSlides as $r, setTableStyleId as $s, getSlideMasterBackgroundImageBytes as $t, setShapeRotation as $u, PresentationNotesEntry as A, getShapeParagraphElements as Aa, RadarChartSpec as Ac, getShapeStrokeEffective as Ad, getShapeSize as Af, getSlideMasterName as Ai, getSlideComments as Al, asColor as Am, getShapeMedia as An, getShapeImagePartName as Ao, MasterPlaceholderType as Ap, getPresentationTextLength as Ar, getTableSize as As, setSlideMasterBackgroundStyle as At, getShapeEffectsEffective as Au, getAllCharts as B, setParagraphLevel as Ba, ChartDateAxis as Bc, findShapesByHyperlink as Bd, pointInShape as Bf, setSlideMasterPreserved as Bi, setShapeHyperlink as Bl, inches as Bm, getShapeTextLanguage as Bn, MediaPart as Bo, GeomPoint as Bp, getSlideText as Br, setTableCellAlignment as Bs, getSlideBackgroundImageFillLayout as Bt, getShapeStrokeArrow as Bu, getPresentationFirstSlideNumber as C, getParagraphEndFormat as Ca, ComboChartSpec as Cc, getShapeFillEffective as Cd, getShapeKind as Cf, setHandoutSlidesPerPage as Ci, getCommentStatus as Cl, GlowOptions as Cm, MediaPlayback as Cn, getShapeImageContrast as Co, MorphOption as Cp, findSlideByTitle as Cr, getTableCellText as Cs, getSlideTransitionSound as Ct, ShapeEffect as Cu, PresentationCommentEntry as D, getParagraphSpacing as Da, Pie3DChartSpec as Dc, getShapeStrokeColor as Dd, getShapePosition as Df, addSlideLayoutPlaceholder as Di, getPresentationCommentCountsBySlide as Dl, Color as Dm, SlideMediaSource as Dn, getShapeImageFormat as Do, TransitionPreset as Dp, getOutlineText as Dr, getTableColumnWidths as Ds, resolveDeckBodyTextColor as Dt, getShape3D as Du, PresentationChartEntry as E, getParagraphLineSpacing as Ea, OfPieChartSpec as Ec, getShapeStrokeCap as Ed, getShapePlaceholderType as Ef, addSlideLayout as Ei, getPresentationCommentCountsByAuthor as El, ShadowOptions as Em, SlideMediaOptions as En, getShapeImageFillBytes as Eo, TransitionOptions as Ep, getAllShapes as Er, getTableCells as Es, getEffectiveColorMap as Et, findShapesByEffect as Eu, clearAllSlideNotes as F, getShapeRunText as Fa, isChartSpec as Fc, findEmptyPlaceholders as Fd, getSlideMasterUsageCounts as Ff, setSlideLayoutBackgroundGraphicsHidden as Fi, ParagraphProperties as Fl, VideoFormat as Fm, ShapeStyleFontReference as Fn, setShapeImageBrightness as Fo, BuiltinPictureStyleName as Fp, getSlideIndex as Fr, isChartShape as Fs, copySlideBackground as Ft, setShapeShadow as Fu, getAllTables as G, setShapeRunHyperlink as Ga, ChartManualLayout as Gc, findShapesWithHyperlinks as Gd, setShapeHidden as Gf, getSlideLayoutName as Gi, TextAnchor as Gl, isShapeAspectRatioLocked as Gn, getMediaParts as Go, LightRig as Gp, isSlideBackgroundGraphicsHidden as Gr, setTableCellMargins as Gs, getSlideLayoutBackground as Gt, setShapeFlip as Gu, getAllHyperlinks as H, setParagraphSpacing as Ha, ChartErrorBars as Hc, findShapesByName as Hd, setShapeAltTitle as Hf, findSlideLayout as Hi, getShapeRunFormat as Hl, pt as Hm, CustomGeometryInput as Hn, PresentationSummary as Ho, Bevel as Hp, getSlideXmlString as Hr, setTableCellBorders as Hs, getSlideBackgroundImageOpacity as Ht, getShapeStrokeSketch as Hu, clearSlideHyperlinks as I, isParagraphBulletPicture as Ia, ChartAxisScaling as Ic, findShapeById as Id, getUnusedSlideMasters as If, setSlideLayoutFootersIncluded as Ii, ParagraphTabStop as Il, ImageFormat as Im, ShapeStyleOptions as In, setShapeImageContrast as Io, BUILTIN_PICTURE_STYLES as Ip, getSlideInfo as Ir, isTableShape as Is, getSlideBackground as It, setShapeSoftEdge as Iu, getHiddenSlides as J, getSlideTitle as Ja, ChartSeries as Jc, findSlidePlaceholders as Jd, getSlideSections as Jf, getSlideLayoutType as Ji, appendShapeText as Jl, setShapeLocked as Jn, getPresentationSummary as Jo, PresetMaterial as Jp, replaceTextInNotes as Jr, setTableCellTextDirection as Js, getSlideLayoutBackgroundPatternFill as Jt, setShapeNoFill as Ju, getDistinctHyperlinkUrls as K, setShapeRunText as Ka, ChartOfPie as Kc, findSlidePlaceholder as Kd, shapesOverlap as Kf, getSlideLayoutPartName as Ki, TextAutoFit as Kl, isShapeLocked as Kn, getOrphanMediaPartNames as Ko, LightRigDirection as Kp, isSlideHidden as Kr, setTableCellParagraphs as Ks, getSlideLayoutBackgroundGradientFill as Kt, setShapeGradientFill as Ku, findSlidesByHyperlink as L, setParagraphAlignment as La, ChartDataLabelPosition as Lc, findShapeByName as Ld, isShapeHidden as Lf, setSlideLayoutTitleIncluded as Li, getParagraphPropertiesEffective as Ll, Emu as Lm, ShapeStyleReference as Ln, setShapeImageCrop as Lo, CustomGeometry as Lp, getSlideLayoutCount as Lr, mergeTableCells as Ls, getSlideBackgroundGradientFill as Lt, clearShapeFill as Lu, SlideNotesTextFormatOptions as M, getShapeRunCount as Ma, ScatterChartSpec as Mc, getShapeStrokeJoin as Md, getSlideMasterCount as Mf, isSlideMasterPreserved as Mi, setCommentStatus as Ml, PresetShape as Mm, setShapeMediaPlayback as Mn, hasShapeText as Mo, BuiltinTableStyle as Mp, getShapeAt as Mr, getTableStyleId as Ms, SlideLayoutBackgroundShape as Mt, setShapeGlow as Mu, appendSlideNotes as N, getShapeRunHyperlink as Na, StockChartSpec as Nc, getShapeStrokeOpacity as Nd, getSlideMasterPartName as Nf, removeSlideLayout as Ni, setCommentText as Nl, PlaceholderType as Nm, groupShapes as Nn, isShapeImageGrayscale as No, BuiltinTableStyleName as Np, getSlideAt as Nr, insertTableColumn as Ns, applySlideBackgroundToAll as Nt, setShapeInnerShadow as Nu, PresentationHyperlinkEntry as O, getShapeHyperlinkTooltip as Oa, PieChartSpec as Oc, getShapeStrokeColorResolved as Od, getShapePreset as Of, addSlideMaster as Oi, getPresentationCommenters as Ol, HexColor as Om, addSlideMedia as On, getShapeImageLinkUrl as Oo, HandoutMasterPlaceholderType as Op, getPresentationShapeCountsBySlide as Or, getTableDimensions as Os, SlideMasterBackgroundStyle as Ot, getShapeEffect as Ou, clearAllHyperlinks as P, getShapeRunHyperlinkTooltip as Pa, SurfaceChartSpec as Pc, getShapeStrokeWidth as Pd, getSlideMasterPartNames as Pf, removeSlideMaster as Pi, ParagraphBulletDetail as Pl, AudioFormat as Pm, ungroupShapes as Pn, resetShapeImageColorEffects as Po, BUILTIN_TABLE_STYLES as Pp, getSlideCount as Pr, insertTableRow as Ps, clearSlideBackground as Pt, setShapeReflection as Pu, getPresentationNotesText as Q, clearSlideAnimations as Qa, ChartTrendline as Qc, getShapesBounds as Qd, createPresentation as Qf, getUnusedSlideLayouts as Qi, getShapeTextAutoFit as Ql, resetSlidePlaceholderGeometry as Qn, setMediaPartBytes as Qo, Text3D as Qp, replaceTokensInPresentation as Qr, setTableStyleFlags as Qs, getSlideMasterBackgroundGradientFill as Qt, setShapePreset as Qu, findSlidesWithChartKind as R, setParagraphBullet as Ra, ChartDataLabels as Rc, findShapeByText as Rd, isShapePlaceholder as Rf, setSlideMasterName as Ri, getShapeHyperlink as Rl, cm as Rm, setShapeStyle as Rn, setShapeImageOpacity as Ro, GeomCommand as Rp, getSlideOutline as Rr, removeTableColumn as Rs, getSlideBackgroundImageBytes as Rt, clearShapeStroke as Ru, SlideSize as S, getParagraphBulletStyle as Sa, ComboChartSeries as Sc, getShapeFillColorResolved as Sd, getShapeId as Sf, setHandoutMasterPlaceholderIncluded as Si, getCommentSlide as Sl, ReadGradientStop as Sm, MediaFade as Sn, getShapeImageBytes as So, AnimationSpinDirection as Sp, findSlideByText as Sr, getTableCellSpan as Ss, getSlideTransition as St, Shape3D as Su, setSlideSize as T, getParagraphLevel as Ta, LineArea3DChartSpec as Tc, getShapeStroke as Td, getShapePlaceholderIdx as Tf, setNotesPageOrientation as Ti, getCommentsSortedByDate as Tl, ReflectionOptions as Tm, ShapeMedia as Tn, getShapeImageDuotone as To, TransitionEffect as Tp, findSlidesByText as Tr, getTableCellTextDirection as Ts, setSlideTransitionSound as Tt, clearShapeEffects as Tu, getAllImages as U, setParagraphTabs as Ua, ChartGrouping as Uc, findShapesByPreset as Ud, setShapeBounds as Uf, findSlideLayoutByPartName as Ui, resolveDrawingColor as Ul, CustomGeometryPathInput as Un, _internalPackageOf as Uo, BevelPreset as Up, getSlides as Ur, setTableCellClickAction as Us, getSlideBackgroundPatternFill as Ut, setShapeAdjustValues as Uu, getAllComments as V, setParagraphLineSpacing as Va, ChartErrorBarAmount as Vc, findShapesByKind as Vd, renameShape as Vf, findLayoutsWithPlaceholderType as Vi, setShapeRunFormat as Vl, mm as Vm, setShapeTextLanguage as Vn, PackagePartInfo as Vo, PathFillMode as Vp, getSlideTextLength as Vr, setTableCellAnchor as Vs, getSlideBackgroundImageIntrinsicSize as Vt, getShapeStrokeDash as Vu, getAllNotes as W, setParagraphTypography as Wa, ChartKind as Wc, findShapesByText as Wd, setShapeDescription as Wf, findSlideLayoutByType as Wi, resolveDrawingColorOpacity as Wl, setShapeCustomGeometry as Wn, compactPackage as Wo, CameraPreset as Wp, getSlidesByLayout as Wr, setTableCellFill as Ws, getSlideColorMapOverride as Wt, setShapeFill as Wu, getPresentationNotesLength as X, setSlidePlaceholders as Xa, ChartTextStyle as Xc, getShapeSlide as Xd, PresentationInput as Xf, getSlideLayoutUsageCountsByType as Xi, getShapeText3D as Xl, addSlidePlaceholder as Xn, listPackageParts as Xo, Rotation3D as Xp, replaceTextInSlide as Xr, setTableColumnWidth as Xs, getSlideLayoutShapes as Xt, setShapePatternFill as Xu, getPresentationHyperlinkCountsBySlide as Y, setSlideBody as Ya, ChartSeriesAxis as Yc, getShapeIndex as Yd, setSlideSections as Yf, getSlideLayoutUsageCounts as Yi, getShapeBodyPrEffective as Yl, addMissingSlidePlaceholders as Yn, getSlideMediaPartNames as Yo, ReadText3D as Yp, replaceTextInPresentation as Yr, setTableCellTextFormat as Ys, getSlideLayoutBackgroundShapes as Yt, setShapeNoStroke as Yu, getPresentationNotesLengthsBySlide as Z, setSlideTitle as Za, ChartTimeUnit as Zc, getShapeXmlString as Zd, PresentationSize as Zf, getSlideLayouts as Zi, getShapeTextAnchor as Zl, resetSlideLayout as Zn, readPackagePart as Zo, Scene3D as Zp, replaceTextInSlideNotes as Zr, setTableRowHeight as Zs, getSlideMasterBackground as Zt, setShapePosition as Zu, setSlideOutlineCollapsed as _, setShapeZIndex as _a, BubbleChartSeries as _c, setPresentationTheme as _d, getShapeBoundsResolved as _f, HandoutSlidesPerPage as _i, getCommentAuthors as _l, GradientFillOptions as _m, getShapeImageCompressionState as _n, findSlidesByLayoutType as _o, AnimationShape as _p, setCustomShows as _r, getTableCellFill as _s, setSlideNotesFormat as _t, setShapeTextFlat as _u, getShapeImageFillLayout as a, addSlideLine as aa, findChartsWithDataLabels as ac, setShapeStrokeCompound as ad, ShapeBounds as af, removeThumbnail as ai, ImageFit as al, ReadTextFormat as am, setSlideBackgroundImageFillLayout as an, AnimationTarget as ao, SlideShapeData as ap, addTitleSlide as ar, TableCellBorder as as, getSlidesWithComments as at, getShapeTextWrap as au, SLIDE_SIZE_16_9 as b, getParagraphBullet as ba, ChartSpec as bc, getShapeFill as bd, getShapeDescription as bf, getNotesMasterPlaceholders as bi, getCommentParent as bl, PatternPreset as bm, setShapePictureStyle as bn, getShapeImageBiLevelThreshold as bo, AnimationColor as bp, SlideOutlineEntry as br, getTableCellPosition as bs, TransitionSoundInput as bt, setShapeTextWrap as bu, DrawingGuide as c, addSlideTextBox as ca, getPresentationChartKindCounts as cc, setShapeStrokeSketch as cd, findShapesInRect as cf, ExtendedProperties as ci, clearAllSlideComments as cl, TextOutline as cm, ImageFillLayout as cn, ImageArtisticEffect as co, CommentStatus as cp, importSlide as cr, clearTableCellFill as cs, getSlidesWithNotes as ct, setShapeParagraphs as cu, getDrawingGuidesVisible as d, clearSlideShapes as da, getShapeChartSeriesNames as dc, PresentationFonts as dd, getMaxShapeId as df, getPresentationCreated as di, findCommentsAfter as dl, LineDash as dm, AnimationPatch as dn, ImageRecolorColor as do, SlideComment as dp, removeSlide as dr, getTableBackgroundEffective as ds, getVisibleSlides as dt, setShapeTextAnchor as du, clearSlideLayoutBackground as ea, splitTableCell as ec, setShapeSize as ed, getSlideShapes as ef, setSlideBackgroundGraphicsHidden as ei, ChartView3D as el, ParagraphAlignment as em, getSlideMasterBackgroundPatternFill as en, getShapeAnimation as eo, savePresentation as ep, addBlankSlide as er, validatePresentation as es, getSlideNotesLength as et, getShapeTextBodyRotationDeg as eu, getGridSpacing as f, copyShape as fa, getShapeChartSeriesValues as fc, PresentationFontsInput as fd, getMaxShapeIdInPresentation as ff, getPresentationModified as fi, findCommentsBefore as fl, LineEndSize as fm, moveSlideAnimation as fn, findFlippedShapes as fo, AnimationDirection as fp, reverseSlides as fr, getTableCell as fs, hasSlideNotes as ft, setShapeTextAutoFit as fu, setGridSpacing as g, sendShapeToBack as ga, Bar3DChartSpec as gc, setPresentationFonts as gd, getShapeBounds as gf, touchModified as gi, getCommentAuthor as gl, ReadLineFill as gm, ImageCompressionState as gn, findSlidesByLayoutPartName as go, AnimationOrientation as gp, getCustomShows as gr, getTableCellBorders as gs, setSlideNotes as gt, setShapeTextField as gu, setDrawingGuidesVisible as h, sendShapeBackward as ha, setChartSpec as hc, getPresentationTheme as hd, getShapeAltTitle as hf, setExtendedProperties as hi, findSlidesWithCommentsByAuthor as hl, LineSketch as hm, resetShapeVideoFormatting as hn, findSlidesByLayoutName as ho, AnimationOptions as hp, CustomShow as hr, getTableCellAppearanceEffective as hs, resolveSlideNotesTextColor as ht, setShapeTextDirection as hu, setSlideShowProperties as i, addSlideImage as ia, findChartsBySeriesName as ic, setShapeStrokeCap as id, translateShapes as if, getThumbnail as ii, setShapeClickAction as il, ReadTextFill as im, setSlideBackgroundImage as in, AnimationStart as io, SlideLayoutData as ip, addSlideAt as ir, TableCellAppearanceEffective as is, getSlidesWithCharts as it, getShapeTextMargins as iu, PresentationTableEntry as j, getShapeRunClickAction as ja, ScatterChartSeries as jc, getShapeStrokeGradient as jd, getShapeText as jf, getSlideMasterPlaceholders as ji, removeSlideComment as jl, ColorTransform as jm, getShapeMediaPlayback as jn, hasShapeImage as jo, NotesMasterPlaceholderType as jp, getPresentationTextLengthsBySlide as jr, getTableStyleFlags as js, SlideBackground as jt, setShape3D as ju, PresentationImageEntry as k, getShapeParagraphCount as ka, PlainChartSeries as kc, getShapeStrokeCompound as kd, getShapeRotation as kf, getSlideMasterLayouts as ki, getSlideCommentAuthors as kl, SchemeColorToken as km, findShapesWithMedia as kn, getShapeImageOpacity as ko, LayoutPlaceholderKind as kp, getPresentationText as kr, getTableRowHeights as ks, getSlideMasterBackgroundStyles as kt, getShapeEffects as ku, getCollapsedOutlineSlides as l, bringShapeForward as la, getShapeChartCategories as lc, getShapeGradientFill as ld, getGroupChildren as lf, getCoreProperties as li, clearSlideComments as ll, toWritableTextFormat as lm, ImageTileAlignment as ln, ImageCrop as lo, CommentAuthor as lp, mergePresentations as lr, getPresentationTableCountsBySlide as ls, getSlidesWithOverlap as lt, setShapeText as lu, setDrawingGuides as m, removeShape as ma, getSlideCharts as mc, getPresentationFonts as md, getShapeAdjustValues as mf, setCoreProperties as mi, findCommentsByText as ml, LineFill as mm, updateSlideAnimation as mn, findShapesOutsideCanvas as mo, AnimationInOut as mp, swapSlides as mr, getTableCellAnchor as ms, replaceHyperlink as mt, setShapeTextColumns as mu, SlideShowProperties as n, setSlideLayoutName as na, addSlideChart as nc, setShapeStroke as nd, replaceTokensInSlide as nf, slideHasAnimations as ni, ShapeClickAction as nl, ParagraphSpec as nm, setSlideBackground as nn, setShapeAnimation as no, SlideCommentData as np, addSectionHeaderSlide as nr, ValidationIssue as ns, getSlideNotesParagraphEndFormat as nt, getShapeTextDirection as nu, getShapeImageIntrinsicSize as o, addSlideShape as oa, findChartsWithTrendlines as oc, setShapeStrokeDash as od, centerShapeOnSlide as of, setThumbnail as oi, setShapeImage as ol, TextFill as om, setSlideBackgroundImageOpacity as on, AnimationValueAfterEnd as oo, TableCellData as op, duplicateSlide as or, TableCellBorders as os, getSlidesWithHyperlinks as ot, setShapeAlignment as ou, getSnapToGrid as p, getShapeZIndex as pa, getShapeChartSpec as pc, PresentationTheme as pd, getPresetGeometry as pf, incrementRevision as pi, findCommentsByAuthor as pl, LineEndType as pm, removeSlideAnimation as pn, findOverlappingShapePairs as po, AnimationEffect as pp, sortSlides as pr, getTableCellAlignment as ps, removeSlideNotes as pt, setShapeTextBodyRotationDeg as pu, getEmptySlides as q, getSlideBody as qa, ChartSecondaryValueAxis as qc, findSlidePlaceholderByIdx as qd, SlideSection as qf, getSlideLayoutPlaceholders as qi, TextWrap as ql, setShapeAspectRatioLocked as qn, getPackageSize as qo, LightRigType as qp, isSlideLayoutBackgroundGraphicsHidden as qr, setTableCellText as qs, getSlideLayoutBackgroundImageBytes as qt, setShapeImageFill as qu, getSlideShowProperties as r, setSlideLayoutPlaceholderBounds as ra, findChartByKind as rc, setShapeStrokeArrow as rd, setSlideLayout as rf, PresentationThumbnail as ri, getShapeClickAction as rl, RunSpec as rm, setSlideBackgroundGradientFill as rn, AnimationSequenceKind as ro, SlideData as rp, addSlide as rr, TableBackgroundEffective as rs, getSlideNotesTextFormats as rt, getShapeTextFlat as ru, setShapeImageFillLayout as s, addSlideTable as sa, getPresentationChartCountsBySlide as sc, setShapeStrokeJoin as sd, findShapesAtPoint as sf, CoreProperties as si, addSlideComment as sl, TextFormat as sm, setSlideBackgroundPatternFill as sn, SlideAnimationStep as so, COMMENT_STATUSES as sp, duplicateSlideAt as sr, TableCellParagraph as ss, getSlidesWithImages as st, setShapeBulletStyle as su, VERSION as t, setSlideLayoutBackground as ta, SlideChartData as tc, setShapeSlideBackgroundFill as td, getSlidesWithEmptyPlaceholders as tf, setSlideHidden as ti, ReadChartSpec as tl, ParagraphAlignmentToken as tm, getSlideMasterShapes as tn, getSlideAnimations as to, PresentationData as tp, addContentSlide as tr, IssueSeverity as ts, getSlideNotesLineBreaks as tt, getShapeTextColumns as tu, getDrawingGuides as u, bringShapeToFront as ua, getShapeChartKind as uc, getShapeGradientFillEffective as ud, getGroupTransform as uf, getExtendedProperties as ui, findCommentAuthorByName as ul, ArrowOptions as um, ImageTileFlip as un, ImageRecolor as uo, CommentPosition as up, moveSlide as ur, getSlideTables as us, getSlidesWithTables as ut, setShapeText3D as uu, setSnapToGrid as v, ShapeParagraphElement as va, BubbleChartSpec as vc, ShapeFill as vd, getShapeCenter as vf, getHandoutMasterPlaceholders as vi, getCommentDate as vl, GradientStop as vm, getShapePictureStyle as vn, getPresentationImageCountsBySlide as vo, AnimationStartCondition as vp, AllShapesEntry as vr, getTableCellMargins as vs, transformSlideNotesCase as vt, setShapeTextFormat as vu, getSlideSize as w, getParagraphIndent as wa, DoughnutChartSpec as wc, getShapeFillOpacity as wd, getShapeName as wf, setNotesMasterPlaceholderIncluded as wi, getCommentText as wl, InnerShadowOptions as wm, MediaTrim as wn, getShapeImageCrop as wo, SlideTransition as wp, findSlidesByNotes as wr, getTableCellText3D as ws, setSlideTransition as wt, ShapeEffectAny as wu, SLIDE_SIZE_4_3 as x, getParagraphBulletImageBytes as xa, ChartVariant as xc, getShapeFillColor as xd, getShapeFlip as xf, getNotesPageSize as xi, getCommentPosition as xl, ReadGradientFill as xm, MediaBookmark as xn, getShapeImageBrightness as xo, AnimationScaleDirection as xp, findSlideByPartName as xr, getTableCellRunFormatEffective as xs, clearSlideTransition as xt, TextCase as xu, SLIDE_SIZE_16_10 as y, getParagraphAlignment as ya, CandlestickChartSpec as yc, ShapeStroke as yd, getShapeCustomGeometry as yf, getHandoutSlidesPerPage as yi, getCommentFormat as yl, PatternFillOptions as ym, setShapeImageCompressionState as yn, getShapeImageArtisticEffect as yo, AnimationTextBuild as yp, SlideInfo as yr, getTableCellParagraphs as ys, TransitionSound as yt, setShapeTextMargins as yu, findSlidesWithChartTrendlines as z, setParagraphIndent as za, ChartDataTable as zc, findShapeInPresentation as zd, isShapeTextBox as zf, setSlideMasterPlaceholderIncluded as zi, getShapeRunFormatEffective as zl, emu as zm, getParagraphElementLanguages as zn, setShapeImageRecolor as zo, GeomPath as zp, getSlidePartName as zr, removeTableRow as zs, getSlideBackgroundImageCrop as zt, getShapePatternFill as zu };
8757
+ //# sourceMappingURL=index-WCK8v0WT.d.ts.map