@embedpdf/core-annotation 3.0.0-next.2 → 3.0.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { AnnotationDTO, AnnotationFlags, AnnotationFlags as AnnotationFlags$1, AnnotationRef, BlendMode, BlendMode as BlendMode$1, CaretIntent, InkIntent, LineEnding, LineEndings, NO_ANNOTATION_FLAGS, PdfLinkTarget, PdfPoint, PdfRect, StrikeoutIntent } from "@embedpdf/engine-core/runtime";
2
2
  import { PageObjectNumber } from "@embedpdf/core";
3
- import { PageRotation, Point, Rect as Rect$1, Size } from "@embedpdf/core-geometry";
3
+ import { PageRotation, Point, Rect as Rect$1, Size, TextQuad, TextQuad as TextQuad$1 } from "@embedpdf/core-geometry";
4
4
  //#region src/flags.d.ts
5
5
  /** The `/F` every freshly DRAWN annotation starts with: `print` set (Acrobat
6
6
  * parity — without it the annotation silently disappears when printed). */
@@ -42,8 +42,19 @@ declare const annotContentsEditable: (a: FlagBearer) => boolean;
42
42
  */
43
43
  type Vec = Point;
44
44
  type Rect = Rect$1;
45
- /** Four content-space points (a /QuadPoints quad). */
45
+ /** Four POSITIONAL content-space points — selection chrome / OBB corners.
46
+ * Text-markup geometry uses the corner-NAMED {@link TextQuad} instead. */
46
47
  type Quad = [Vec, Vec, Vec, Vec];
48
+ /**
49
+ * Where a text-edit annotation (caret / replace-text) anchors: the boundary
50
+ * glyph's oriented cell plus the READING direction along its baseline
51
+ * (+1 = toward `end`, −1 = toward `start` — sequence-derived, never inferred
52
+ * from geometry).
53
+ */
54
+ interface TextEndAnchor {
55
+ glyphQuad: TextQuad$1;
56
+ advance: 1 | -1;
57
+ }
47
58
  type Id = string;
48
59
  type Cursor = string;
49
60
  type PolySubtype = 'polygon' | 'polyline';
@@ -115,10 +126,11 @@ type Geom = {
115
126
  rot?: number;
116
127
  } | {
117
128
  t: 'quads';
118
- quads: Quad[];
129
+ quads: TextQuad$1[];
119
130
  } | {
120
131
  t: 'caret';
121
132
  rect: Rect;
133
+ rot?: number;
122
134
  } | {
123
135
  t: 'ink';
124
136
  strokes: Vec[][];
@@ -454,7 +466,7 @@ interface MarkupPreview {
454
466
  subtype: Subtype;
455
467
  /** Defaults key, distinct from subtype for presets such as replace-text. */
456
468
  preset: string;
457
- byPage: Record<number, Quad[]>;
469
+ byPage: Record<number, TextQuad$1[]>;
458
470
  }
459
471
  /** Anchor + affordance state for UI that controls an in-progress creation draft. */
460
472
  interface CreationDraftAnchor {
@@ -613,26 +625,26 @@ type Msg = {
613
625
  } | {
614
626
  t: 'createCaret';
615
627
  pon: PageObjectNumber;
616
- rect: Rect;
628
+ anchor: TextEndAnchor;
617
629
  flags?: Partial<AnnotationFlags$1>;
618
630
  } | {
619
631
  t: 'createReplaceText';
620
632
  pon: PageObjectNumber;
621
- rects: Rect[];
622
- endRect: Rect;
633
+ quads: TextQuad$1[];
634
+ anchor: TextEndAnchor;
623
635
  preset?: string;
624
636
  } | {
625
637
  t: 'createMarkup';
626
638
  subtype: Subtype;
627
639
  pon: PageObjectNumber;
628
- rects: Rect[];
640
+ quads: TextQuad$1[];
629
641
  preset?: string;
630
642
  /** The tool's `/F` seed — merged over {@link DRAWN_FLAGS} at commit. */
631
643
  flags?: Partial<AnnotationFlags$1>;
632
644
  } | {
633
645
  t: 'setMarkupPreview';
634
646
  subtype: Subtype;
635
- rectsByPage: Record<number, Rect[]>;
647
+ quadsByPage: Record<number, TextQuad$1[]>;
636
648
  preset?: string;
637
649
  } | {
638
650
  t: 'clearMarkupPreview';
@@ -1386,7 +1398,10 @@ declare const DEFAULT_CHROME_GEOM: {
1386
1398
  };
1387
1399
  /** Normalize degrees into `[0, 360)`. */
1388
1400
  declare const normalizeDeg: (d: number) => number;
1389
- /** A geom's applied rotation (deg), or 0 for the non-rotatable kinds. */
1401
+ /** A geom's applied rotation (deg), or 0 for the non-rotatable kinds. A
1402
+ * caret's `rot` is AUTHORING metadata (its text's baseline tilt): reported
1403
+ * here so the renderer and selection chrome follow it, while the caret's
1404
+ * caps (not movable/resizable) keep every rotate gesture away from it. */
1390
1405
  declare function geomRotation(g: Geom): number;
1391
1406
  /**
1392
1407
  * The rotation PIVOT for a single shape: a box turns about its own `rect`
@@ -1395,7 +1410,10 @@ declare function geomRotation(g: Geom): number;
1395
1410
  * stays cleanly additive across gestures and reset is exact.
1396
1411
  */
1397
1412
  declare function centroidOf(g: Geom): Vec;
1398
- /** Is this kind rotatable (the geometry carries a meaningful `rot`)? */
1413
+ /** Does the geometry carry a meaningful `rot` (an oriented local box exists)?
1414
+ * ORIENTATION is a geometry fact; whether the USER may rotate is the separate
1415
+ * `caps.rotatable` gate — a caret is oriented (it rides its text's tilt) yet
1416
+ * offers no rotate gesture. */
1399
1417
  declare function isRotatableGeom(g: Geom): boolean;
1400
1418
  /**
1401
1419
  * Rotate a geom by `deltaDeg` (clockwise) about `pivot`.
@@ -1404,7 +1422,10 @@ declare function isRotatableGeom(g: Geom): boolean;
1404
1422
  * pivot IS the box centre this is a pure `rot += delta`.
1405
1423
  * - VERTEX (`line`/`poly`/`ink`): map every point through the rotation AND bump
1406
1424
  * the advisory `rot` (the points stay the authoritative visual).
1407
- * Non-rotatable kinds (caret/quads, callouts) are returned unchanged.
1425
+ * Kinds without a rotate VERB are returned unchanged: quads and callouts, and
1426
+ * also the caret — oriented (`isRotatableGeom`) but text-anchored, so its tilt
1427
+ * is authoring metadata that no gesture edits (`geomResetRotation` still
1428
+ * clears it).
1408
1429
  */
1409
1430
  declare function geomRotateAbout(g: Geom, pivot: Vec, deltaDeg: number): Geom;
1410
1431
  /** The AABB of `rect` rotated `deg` about its own centre. */
@@ -1520,6 +1541,26 @@ declare function calloutLinePoints(g: Extract<Geom, {
1520
1541
  */
1521
1542
  declare function shapeRectFor(dragged: Rect, ellipse: boolean, style: Style): Rect;
1522
1543
  declare function caretRectFromTextEnd(lineRect: Rect): Rect;
1544
+ /**
1545
+ * Caret box for a text-edit anchor: half the glyph's ink height, centered on
1546
+ * the TRAILING baseline corner in READING direction (`advance` decides which
1547
+ * end — RTL carets land on the visual left), sitting on the baseline. The box
1548
+ * stays axis-aligned; use {@link caretGeomFromAnchor} for the tilt-carrying
1549
+ * geometry.
1550
+ */
1551
+ declare function caretRectFromAnchor(anchor: TextEndAnchor): Rect;
1552
+ /**
1553
+ * Caret GEOMETRY for a text-edit anchor: the box-family pair — an UNROTATED
1554
+ * box whose centre sits half a caret-size ascent-ward of the trailing
1555
+ * baseline corner, plus `rot` = the text's baseline tilt (deg, CW in y-down
1556
+ * content space). Rotating the box about its centre by `rot` lands it
1557
+ * hugging the rotated baseline, symbol pointing at its text. For upright
1558
+ * anchors this degenerates EXACTLY to {@link caretRectFromAnchor} with no
1559
+ * `rot` key — the dominant case is byte-identical.
1560
+ */
1561
+ declare function caretGeomFromAnchor(anchor: TextEndAnchor): Extract<Geom, {
1562
+ t: 'caret';
1563
+ }>;
1523
1564
  /** Miter limit shared by the bounds math AND the SVG renderer (`stroke-miterlimit`),
1524
1565
  * so the computed box and the drawn stroke always agree on where a sharp join
1525
1566
  * bevels instead of spiking. 10 = the PDF default (also what the baked /AP uses). */
@@ -1632,5 +1673,5 @@ declare function scene(item: RenderItem): SceneNode[];
1632
1673
  */
1633
1674
  declare function straightenInkStroke(points: readonly Vec[], options: InkStraightenOptions): Vec[];
1634
1675
  //#endregion
1635
- export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type SceneNode, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotInteractive, annotTransformable, applyProps, calloutConnection, calloutLinePoints, canMove, capsFor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isRotatableGeom, isSelectable, mergeFlags, normalizeDeg, obbFromGeom, pageItems, pdfToContentPoint, pdfToContentRect, placeRotateKnob, pointInQuad, propsFor, quadIntersectsRect, readProp, rectFromPoints, resolveClickPlacement, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeRectFor, sharedProps, straightenInkStroke, styleFromProps, textBoxes, textStyleFromProps, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable };
1676
+ export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type SceneNode, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextEndAnchor, type TextQuad, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotInteractive, annotTransformable, applyProps, calloutConnection, calloutLinePoints, canMove, capsFor, caretGeomFromAnchor, caretRectFromAnchor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isRotatableGeom, isSelectable, mergeFlags, normalizeDeg, obbFromGeom, pageItems, pdfToContentPoint, pdfToContentRect, placeRotateKnob, pointInQuad, propsFor, quadIntersectsRect, readProp, rectFromPoints, resolveClickPlacement, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeRectFor, sharedProps, straightenInkStroke, styleFromProps, textBoxes, textStyleFromProps, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable };
1636
1677
  //# sourceMappingURL=index.d.cts.map
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { AnnotationDTO, AnnotationFlags, AnnotationFlags as AnnotationFlags$1, AnnotationRef, BlendMode, BlendMode as BlendMode$1, CaretIntent, InkIntent, LineEnding, LineEndings, NO_ANNOTATION_FLAGS, PdfLinkTarget, PdfPoint, PdfRect, StrikeoutIntent } from "@embedpdf/engine-core/runtime";
2
- import { PageRotation, Point, Rect as Rect$1, Size } from "@embedpdf/core-geometry";
2
+ import { PageRotation, Point, Rect as Rect$1, Size, TextQuad, TextQuad as TextQuad$1 } from "@embedpdf/core-geometry";
3
3
  import { PageObjectNumber } from "@embedpdf/core";
4
4
  //#region src/flags.d.ts
5
5
  /** The `/F` every freshly DRAWN annotation starts with: `print` set (Acrobat
@@ -42,8 +42,19 @@ declare const annotContentsEditable: (a: FlagBearer) => boolean;
42
42
  */
43
43
  type Vec = Point;
44
44
  type Rect = Rect$1;
45
- /** Four content-space points (a /QuadPoints quad). */
45
+ /** Four POSITIONAL content-space points — selection chrome / OBB corners.
46
+ * Text-markup geometry uses the corner-NAMED {@link TextQuad} instead. */
46
47
  type Quad = [Vec, Vec, Vec, Vec];
48
+ /**
49
+ * Where a text-edit annotation (caret / replace-text) anchors: the boundary
50
+ * glyph's oriented cell plus the READING direction along its baseline
51
+ * (+1 = toward `end`, −1 = toward `start` — sequence-derived, never inferred
52
+ * from geometry).
53
+ */
54
+ interface TextEndAnchor {
55
+ glyphQuad: TextQuad$1;
56
+ advance: 1 | -1;
57
+ }
47
58
  type Id = string;
48
59
  type Cursor = string;
49
60
  type PolySubtype = 'polygon' | 'polyline';
@@ -115,10 +126,11 @@ type Geom = {
115
126
  rot?: number;
116
127
  } | {
117
128
  t: 'quads';
118
- quads: Quad[];
129
+ quads: TextQuad$1[];
119
130
  } | {
120
131
  t: 'caret';
121
132
  rect: Rect;
133
+ rot?: number;
122
134
  } | {
123
135
  t: 'ink';
124
136
  strokes: Vec[][];
@@ -454,7 +466,7 @@ interface MarkupPreview {
454
466
  subtype: Subtype;
455
467
  /** Defaults key, distinct from subtype for presets such as replace-text. */
456
468
  preset: string;
457
- byPage: Record<number, Quad[]>;
469
+ byPage: Record<number, TextQuad$1[]>;
458
470
  }
459
471
  /** Anchor + affordance state for UI that controls an in-progress creation draft. */
460
472
  interface CreationDraftAnchor {
@@ -613,26 +625,26 @@ type Msg = {
613
625
  } | {
614
626
  t: 'createCaret';
615
627
  pon: PageObjectNumber;
616
- rect: Rect;
628
+ anchor: TextEndAnchor;
617
629
  flags?: Partial<AnnotationFlags$1>;
618
630
  } | {
619
631
  t: 'createReplaceText';
620
632
  pon: PageObjectNumber;
621
- rects: Rect[];
622
- endRect: Rect;
633
+ quads: TextQuad$1[];
634
+ anchor: TextEndAnchor;
623
635
  preset?: string;
624
636
  } | {
625
637
  t: 'createMarkup';
626
638
  subtype: Subtype;
627
639
  pon: PageObjectNumber;
628
- rects: Rect[];
640
+ quads: TextQuad$1[];
629
641
  preset?: string;
630
642
  /** The tool's `/F` seed — merged over {@link DRAWN_FLAGS} at commit. */
631
643
  flags?: Partial<AnnotationFlags$1>;
632
644
  } | {
633
645
  t: 'setMarkupPreview';
634
646
  subtype: Subtype;
635
- rectsByPage: Record<number, Rect[]>;
647
+ quadsByPage: Record<number, TextQuad$1[]>;
636
648
  preset?: string;
637
649
  } | {
638
650
  t: 'clearMarkupPreview';
@@ -1386,7 +1398,10 @@ declare const DEFAULT_CHROME_GEOM: {
1386
1398
  };
1387
1399
  /** Normalize degrees into `[0, 360)`. */
1388
1400
  declare const normalizeDeg: (d: number) => number;
1389
- /** A geom's applied rotation (deg), or 0 for the non-rotatable kinds. */
1401
+ /** A geom's applied rotation (deg), or 0 for the non-rotatable kinds. A
1402
+ * caret's `rot` is AUTHORING metadata (its text's baseline tilt): reported
1403
+ * here so the renderer and selection chrome follow it, while the caret's
1404
+ * caps (not movable/resizable) keep every rotate gesture away from it. */
1390
1405
  declare function geomRotation(g: Geom): number;
1391
1406
  /**
1392
1407
  * The rotation PIVOT for a single shape: a box turns about its own `rect`
@@ -1395,7 +1410,10 @@ declare function geomRotation(g: Geom): number;
1395
1410
  * stays cleanly additive across gestures and reset is exact.
1396
1411
  */
1397
1412
  declare function centroidOf(g: Geom): Vec;
1398
- /** Is this kind rotatable (the geometry carries a meaningful `rot`)? */
1413
+ /** Does the geometry carry a meaningful `rot` (an oriented local box exists)?
1414
+ * ORIENTATION is a geometry fact; whether the USER may rotate is the separate
1415
+ * `caps.rotatable` gate — a caret is oriented (it rides its text's tilt) yet
1416
+ * offers no rotate gesture. */
1399
1417
  declare function isRotatableGeom(g: Geom): boolean;
1400
1418
  /**
1401
1419
  * Rotate a geom by `deltaDeg` (clockwise) about `pivot`.
@@ -1404,7 +1422,10 @@ declare function isRotatableGeom(g: Geom): boolean;
1404
1422
  * pivot IS the box centre this is a pure `rot += delta`.
1405
1423
  * - VERTEX (`line`/`poly`/`ink`): map every point through the rotation AND bump
1406
1424
  * the advisory `rot` (the points stay the authoritative visual).
1407
- * Non-rotatable kinds (caret/quads, callouts) are returned unchanged.
1425
+ * Kinds without a rotate VERB are returned unchanged: quads and callouts, and
1426
+ * also the caret — oriented (`isRotatableGeom`) but text-anchored, so its tilt
1427
+ * is authoring metadata that no gesture edits (`geomResetRotation` still
1428
+ * clears it).
1408
1429
  */
1409
1430
  declare function geomRotateAbout(g: Geom, pivot: Vec, deltaDeg: number): Geom;
1410
1431
  /** The AABB of `rect` rotated `deg` about its own centre. */
@@ -1520,6 +1541,26 @@ declare function calloutLinePoints(g: Extract<Geom, {
1520
1541
  */
1521
1542
  declare function shapeRectFor(dragged: Rect, ellipse: boolean, style: Style): Rect;
1522
1543
  declare function caretRectFromTextEnd(lineRect: Rect): Rect;
1544
+ /**
1545
+ * Caret box for a text-edit anchor: half the glyph's ink height, centered on
1546
+ * the TRAILING baseline corner in READING direction (`advance` decides which
1547
+ * end — RTL carets land on the visual left), sitting on the baseline. The box
1548
+ * stays axis-aligned; use {@link caretGeomFromAnchor} for the tilt-carrying
1549
+ * geometry.
1550
+ */
1551
+ declare function caretRectFromAnchor(anchor: TextEndAnchor): Rect;
1552
+ /**
1553
+ * Caret GEOMETRY for a text-edit anchor: the box-family pair — an UNROTATED
1554
+ * box whose centre sits half a caret-size ascent-ward of the trailing
1555
+ * baseline corner, plus `rot` = the text's baseline tilt (deg, CW in y-down
1556
+ * content space). Rotating the box about its centre by `rot` lands it
1557
+ * hugging the rotated baseline, symbol pointing at its text. For upright
1558
+ * anchors this degenerates EXACTLY to {@link caretRectFromAnchor} with no
1559
+ * `rot` key — the dominant case is byte-identical.
1560
+ */
1561
+ declare function caretGeomFromAnchor(anchor: TextEndAnchor): Extract<Geom, {
1562
+ t: 'caret';
1563
+ }>;
1523
1564
  /** Miter limit shared by the bounds math AND the SVG renderer (`stroke-miterlimit`),
1524
1565
  * so the computed box and the drawn stroke always agree on where a sharp join
1525
1566
  * bevels instead of spiking. 10 = the PDF default (also what the baked /AP uses). */
@@ -1632,5 +1673,5 @@ declare function scene(item: RenderItem): SceneNode[];
1632
1673
  */
1633
1674
  declare function straightenInkStroke(points: readonly Vec[], options: InkStraightenOptions): Vec[];
1634
1675
  //#endregion
1635
- export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type SceneNode, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotInteractive, annotTransformable, applyProps, calloutConnection, calloutLinePoints, canMove, capsFor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isRotatableGeom, isSelectable, mergeFlags, normalizeDeg, obbFromGeom, pageItems, pdfToContentPoint, pdfToContentRect, placeRotateKnob, pointInQuad, propsFor, quadIntersectsRect, readProp, rectFromPoints, resolveClickPlacement, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeRectFor, sharedProps, straightenInkStroke, styleFromProps, textBoxes, textStyleFromProps, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable };
1676
+ export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type SceneNode, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextEndAnchor, type TextQuad, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotInteractive, annotTransformable, applyProps, calloutConnection, calloutLinePoints, canMove, capsFor, caretGeomFromAnchor, caretRectFromAnchor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isRotatableGeom, isSelectable, mergeFlags, normalizeDeg, obbFromGeom, pageItems, pdfToContentPoint, pdfToContentRect, placeRotateKnob, pointInQuad, propsFor, quadIntersectsRect, readProp, rectFromPoints, resolveClickPlacement, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeRectFor, sharedProps, straightenInkStroke, styleFromProps, textBoxes, textStyleFromProps, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable };
1636
1677
  //# sourceMappingURL=index.d.ts.map