@inkbar/react 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ComponentPropsWithoutRef, ReactNode, Ref } from "react";
2
- import { Annotation, AnnotationChange, AnnotationDefaults, AnnotationDocument, AnnotationInput, ConfidenceBucket, DocumentSource, ImportOptions, InkDocument, InkError, InkStatus, PageInfo, PdfAssets, Readable } from "@inkbar/core";
3
- import { AnnotationSlotProps, AnnotationSlotProps as AnnotationSlotProps$1, AnnotationState, LayoutMode, NotePopoverSlotProps, NotePopoverSlotProps as NotePopoverSlotProps$1, PageMount, SuggestionCardSlotProps, SuggestionCardSlotProps as SuggestionCardSlotProps$1, ToolController, ToolId, ViewRotation, Viewport, ZoomValue } from "@inkbar/core/dom";
2
+ import { Annotation, AnnotationChange, AnnotationDefaults, AnnotationDocument, AnnotationInput, AnnotationPatch, CurrentStyle, DocumentSource, ImportOptions, InkDocument, InkError, InkStatus, PageInfo, PdfAssets, Readable, SignatureLibrary, SignatureStore, SignatureTemplate, StyleGroup, StyleKey, StyleProps } from "@inkbar/core";
3
+ import { AnnotationDecoration, AnnotationSlotProps, AnnotationSlotProps as AnnotationSlotProps$1, AnnotationState, ColorProperty, DecorateAnnotation, DecorateAnnotation as DecorateAnnotation$1, LayoutMode, PageMount, ThreadPopoverSlotProps, ThreadPopoverSlotProps as ThreadPopoverSlotProps$1, Tool, ToolController, ToolId, ToolOptions, ToolStyle, ViewRotation, Viewport, ZoomValue } from "@inkbar/core/dom";
4
4
  import { Select } from "radix-ui";
5
5
  import { IconNode } from "@inkbar/icons";
6
6
  //#region src/context.d.ts
@@ -32,6 +32,28 @@ interface InkContext {
32
32
  /** Desired tool; InkViewport applies it to the controller. */
33
33
  tool: ToolId;
34
34
  setTool: (id: ToolId) => void;
35
+ /** Host tools from InkRoot's `tools` prop; InkViewport registers them. */
36
+ hostTools: Tool[] | undefined;
37
+ /**
38
+ * Calls InkRoot's current `decorateAnnotation` prop. The function itself stays the same
39
+ * across renders, so a new prop does not re-render the context's consumers.
40
+ */
41
+ decorateAnnotation: DecorateAnnotation$1;
42
+ /**
43
+ * Calls `listener` after InkRoot's `decorateAnnotation` prop changes; InkViewport re-applies
44
+ * the decorations then. Returns the unsubscribe.
45
+ */
46
+ onDecorateAnnotationChange: (listener: () => void) => () => void;
47
+ /** The font families text boxes offer: InkRoot's `fonts`, else `FONT_FAMILIES`. */
48
+ fonts: readonly string[];
49
+ /** The tools' options for InkRoot's life, so they persist across documents. */
50
+ toolOptions: ToolOptions;
51
+ /** The saved signatures, from InkRoot's `signatures` store (memory by default). */
52
+ signatures: SignatureLibrary;
53
+ /** The fonts a typed signature offers: InkRoot's `signatureFonts`, else `SIGNATURE_FONTS`. */
54
+ signatureFonts: readonly string[];
55
+ /** The open document's tool style; `null` while no document is open. */
56
+ toolStyle: ToolStyle | null;
35
57
  /** Desired zoom and page from the host's props; InkViewport applies and reports back. */
36
58
  zoomModel: ZoomValue | undefined;
37
59
  pageModel: number | undefined;
@@ -39,6 +61,11 @@ interface InkContext {
39
61
  reportPage: (p: number) => void;
40
62
  /** Last activated annotation (Enter, click with the note tool, etc.). Popovers key off this. */
41
63
  activated: string | null;
64
+ /**
65
+ * Activates annotation `id`, or clears the activation with `null`. This is the context's
66
+ * own: unlike core's `Viewer.setActivated`, it calls InkRoot's `onActivate` for an id, and
67
+ * it does not check that the id is in the document.
68
+ */
42
69
  setActivated: (id: string | null) => void;
43
70
  history: InkHistory;
44
71
  rootEl: HTMLElement | null;
@@ -73,19 +100,6 @@ export declare function useDocument(): {
73
100
  //#region src/hooks/useAnnotations.d.ts
74
101
  export declare function useAnnotations(): {
75
102
  add: (input: AnnotationInput) => {
76
- id: string;
77
- page: number;
78
- rect: {
79
- x: number;
80
- y: number;
81
- width: number;
82
- height: number;
83
- };
84
- color: string;
85
- opacity: number;
86
- createdAt: string;
87
- modifiedAt: string;
88
- source: "session" | "pdf";
89
103
  type: "highlight" | "underline" | "strikeout" | "squiggly";
90
104
  quads: {
91
105
  p1: {
@@ -105,14 +119,27 @@ export declare function useAnnotations(): {
105
119
  y: number;
106
120
  };
107
121
  }[];
122
+ rect: {
123
+ x: number;
124
+ y: number;
125
+ width: number;
126
+ height: number;
127
+ };
128
+ color: string;
129
+ opacity: number;
130
+ createdAt: string;
131
+ modifiedAt: string;
132
+ source: "session" | "pdf";
133
+ id: string;
134
+ page: number;
135
+ locked?: boolean | undefined;
108
136
  author?: string | undefined;
109
137
  contents?: string | undefined;
110
138
  inReplyTo?: string | undefined;
111
- locked?: boolean | undefined;
139
+ subject?: string | undefined;
140
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
112
141
  custom?: Record<string, unknown> | undefined;
113
142
  } | {
114
- id: string;
115
- page: number;
116
143
  rect: {
117
144
  x: number;
118
145
  y: number;
@@ -124,43 +151,68 @@ export declare function useAnnotations(): {
124
151
  createdAt: string;
125
152
  modifiedAt: string;
126
153
  source: "session" | "pdf";
154
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
155
+ id: string;
156
+ page: number;
127
157
  type: "text";
128
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
158
+ locked?: boolean | undefined;
129
159
  author?: string | undefined;
130
160
  contents?: string | undefined;
131
161
  inReplyTo?: string | undefined;
132
- locked?: boolean | undefined;
162
+ subject?: string | undefined;
163
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
133
164
  custom?: Record<string, unknown> | undefined;
134
165
  } | {
135
- id: string;
136
- page: number;
166
+ defaultStyle: {
167
+ color: string;
168
+ fontFamily: string;
169
+ fontSize: number;
170
+ textAlign: "left" | "right" | "center" | "justify";
171
+ align?: undefined;
172
+ fontWeight?: "bold" | undefined;
173
+ fontStyle?: "italic" | undefined;
174
+ textDecoration?: "underline" | undefined;
175
+ };
137
176
  rect: {
138
177
  x: number;
139
178
  y: number;
140
179
  width: number;
141
180
  height: number;
142
181
  };
143
- color: string;
144
182
  opacity: number;
145
183
  createdAt: string;
146
184
  modifiedAt: string;
147
185
  source: "session" | "pdf";
148
- type: "freetext";
149
186
  contents: string;
150
- fontSize: number;
151
- fontFamily: string;
152
- align: "left" | "center" | "right";
153
- author?: string | undefined;
154
- inReplyTo?: string | undefined;
155
- locked?: boolean | undefined;
156
- custom?: Record<string, unknown> | undefined;
187
+ width: number;
188
+ id: string;
189
+ page: number;
190
+ type: "freetext";
191
+ color?: string | undefined;
192
+ borderColor?: string | undefined;
193
+ fringe?: {
194
+ left: number;
195
+ top: number;
196
+ right: number;
197
+ bottom: number;
198
+ } | undefined;
157
199
  callout?: {
158
200
  x: number;
159
201
  y: number;
160
202
  }[] | undefined;
203
+ fontFamily?: undefined;
204
+ fontSize?: undefined;
205
+ align?: undefined;
206
+ locked?: boolean | undefined;
207
+ dashes?: number[] | undefined;
208
+ cornerRadius?: number | undefined;
209
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
210
+ author?: string | undefined;
211
+ inReplyTo?: string | undefined;
212
+ subject?: string | undefined;
213
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
214
+ custom?: Record<string, unknown> | undefined;
161
215
  } | {
162
- id: string;
163
- page: number;
164
216
  rect: {
165
217
  x: number;
166
218
  y: number;
@@ -172,17 +224,21 @@ export declare function useAnnotations(): {
172
224
  createdAt: string;
173
225
  modifiedAt: string;
174
226
  source: "session" | "pdf";
175
- type: "square" | "circle";
176
227
  width: number;
228
+ id: string;
229
+ page: number;
230
+ type: "square";
231
+ locked?: boolean | undefined;
232
+ dashes?: number[] | undefined;
233
+ interiorColor?: string | undefined;
234
+ cornerRadius?: number | undefined;
177
235
  author?: string | undefined;
178
236
  contents?: string | undefined;
179
237
  inReplyTo?: string | undefined;
180
- locked?: boolean | undefined;
238
+ subject?: string | undefined;
239
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
181
240
  custom?: Record<string, unknown> | undefined;
182
- interiorColor?: string | undefined;
183
241
  } | {
184
- id: string;
185
- page: number;
186
242
  rect: {
187
243
  x: number;
188
244
  y: number;
@@ -194,7 +250,21 @@ export declare function useAnnotations(): {
194
250
  createdAt: string;
195
251
  modifiedAt: string;
196
252
  source: "session" | "pdf";
197
- type: "line";
253
+ width: number;
254
+ id: string;
255
+ page: number;
256
+ type: "circle";
257
+ cornerRadius?: undefined;
258
+ locked?: boolean | undefined;
259
+ dashes?: number[] | undefined;
260
+ interiorColor?: string | undefined;
261
+ author?: string | undefined;
262
+ contents?: string | undefined;
263
+ inReplyTo?: string | undefined;
264
+ subject?: string | undefined;
265
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
266
+ custom?: Record<string, unknown> | undefined;
267
+ } | {
198
268
  start: {
199
269
  x: number;
200
270
  y: number;
@@ -203,17 +273,36 @@ export declare function useAnnotations(): {
203
273
  x: number;
204
274
  y: number;
205
275
  };
276
+ rect: {
277
+ x: number;
278
+ y: number;
279
+ width: number;
280
+ height: number;
281
+ };
282
+ color: string;
283
+ opacity: number;
284
+ createdAt: string;
285
+ modifiedAt: string;
286
+ source: "session" | "pdf";
206
287
  width: number;
288
+ id: string;
289
+ page: number;
290
+ type: "line";
291
+ locked?: boolean | undefined;
292
+ dashes?: number[] | undefined;
293
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
294
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
207
295
  author?: string | undefined;
208
296
  contents?: string | undefined;
209
297
  inReplyTo?: string | undefined;
210
- locked?: boolean | undefined;
298
+ subject?: string | undefined;
299
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
211
300
  custom?: Record<string, unknown> | undefined;
212
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
213
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
214
301
  } | {
215
- id: string;
216
- page: number;
302
+ vertices: {
303
+ x: number;
304
+ y: number;
305
+ }[];
217
306
  rect: {
218
307
  x: number;
219
308
  y: number;
@@ -225,21 +314,57 @@ export declare function useAnnotations(): {
225
314
  createdAt: string;
226
315
  modifiedAt: string;
227
316
  source: "session" | "pdf";
228
- type: "polyline" | "polygon";
317
+ width: number;
318
+ id: string;
319
+ page: number;
320
+ type: "polyline";
321
+ locked?: boolean | undefined;
322
+ dashes?: number[] | undefined;
323
+ interiorColor?: string | undefined;
324
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
325
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
326
+ author?: string | undefined;
327
+ contents?: string | undefined;
328
+ inReplyTo?: string | undefined;
329
+ subject?: string | undefined;
330
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
331
+ custom?: Record<string, unknown> | undefined;
332
+ } | {
229
333
  vertices: {
230
334
  x: number;
231
335
  y: number;
232
336
  }[];
337
+ rect: {
338
+ x: number;
339
+ y: number;
340
+ width: number;
341
+ height: number;
342
+ };
343
+ color: string;
344
+ opacity: number;
345
+ createdAt: string;
346
+ modifiedAt: string;
347
+ source: "session" | "pdf";
233
348
  width: number;
349
+ id: string;
350
+ page: number;
351
+ type: "polygon";
352
+ head?: undefined;
353
+ tail?: undefined;
354
+ locked?: boolean | undefined;
355
+ dashes?: number[] | undefined;
356
+ interiorColor?: string | undefined;
234
357
  author?: string | undefined;
235
358
  contents?: string | undefined;
236
359
  inReplyTo?: string | undefined;
237
- locked?: boolean | undefined;
360
+ subject?: string | undefined;
361
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
238
362
  custom?: Record<string, unknown> | undefined;
239
- interiorColor?: string | undefined;
240
363
  } | {
241
- id: string;
242
- page: number;
364
+ inklist: {
365
+ x: number;
366
+ y: number;
367
+ }[][];
243
368
  rect: {
244
369
  x: number;
245
370
  y: number;
@@ -251,20 +376,68 @@ export declare function useAnnotations(): {
251
376
  createdAt: string;
252
377
  modifiedAt: string;
253
378
  source: "session" | "pdf";
379
+ width: number;
380
+ id: string;
381
+ page: number;
254
382
  type: "ink";
255
- inklist: {
383
+ pressure?: number[][] | undefined;
384
+ locked?: boolean | undefined;
385
+ dashes?: number[] | undefined;
386
+ author?: string | undefined;
387
+ contents?: string | undefined;
388
+ inReplyTo?: string | undefined;
389
+ subject?: string | undefined;
390
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
391
+ custom?: Record<string, unknown> | undefined;
392
+ } | {
393
+ rect: {
256
394
  x: number;
257
395
  y: number;
258
- }[][];
259
- width: number;
396
+ width: number;
397
+ height: number;
398
+ };
399
+ color: string;
400
+ opacity: number;
401
+ createdAt: string;
402
+ modifiedAt: string;
403
+ source: "session" | "pdf";
404
+ imagedata: string;
405
+ id: string;
406
+ page: number;
407
+ type: "stamp";
408
+ locked?: boolean | undefined;
409
+ rotation?: 0 | 90 | 180 | 270 | undefined;
260
410
  author?: string | undefined;
261
411
  contents?: string | undefined;
262
412
  inReplyTo?: string | undefined;
263
- locked?: boolean | undefined;
413
+ subject?: string | undefined;
414
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
264
415
  custom?: Record<string, unknown> | undefined;
265
416
  } | {
417
+ rect: {
418
+ x: number;
419
+ y: number;
420
+ width: number;
421
+ height: number;
422
+ };
423
+ color: string;
424
+ opacity: number;
425
+ createdAt: string;
426
+ modifiedAt: string;
427
+ source: "session" | "pdf";
428
+ magnification: number;
429
+ width: number;
266
430
  id: string;
267
431
  page: number;
432
+ type: "loupe";
433
+ locked?: boolean | undefined;
434
+ author?: string | undefined;
435
+ contents?: string | undefined;
436
+ inReplyTo?: string | undefined;
437
+ subject?: string | undefined;
438
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
439
+ custom?: Record<string, unknown> | undefined;
440
+ } | {
268
441
  rect: {
269
442
  x: number;
270
443
  y: number;
@@ -276,14 +449,34 @@ export declare function useAnnotations(): {
276
449
  createdAt: string;
277
450
  modifiedAt: string;
278
451
  source: "session" | "pdf";
279
- type: "redact";
280
- origin: "user" | "suggested";
281
- interiorColor: string;
452
+ shape: "rect" | "ellipse";
453
+ dim: number;
454
+ id: string;
455
+ page: number;
456
+ type: "mask";
457
+ locked?: boolean | undefined;
282
458
  author?: string | undefined;
283
459
  contents?: string | undefined;
284
460
  inReplyTo?: string | undefined;
285
- locked?: boolean | undefined;
461
+ subject?: string | undefined;
462
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
286
463
  custom?: Record<string, unknown> | undefined;
464
+ } | {
465
+ interiorColor: string;
466
+ rect: {
467
+ x: number;
468
+ y: number;
469
+ width: number;
470
+ height: number;
471
+ };
472
+ color: string;
473
+ opacity: number;
474
+ createdAt: string;
475
+ modifiedAt: string;
476
+ source: "session" | "pdf";
477
+ id: string;
478
+ page: number;
479
+ type: "redact";
287
480
  quads?: {
288
481
  p1: {
289
482
  x: number;
@@ -302,29 +495,16 @@ export declare function useAnnotations(): {
302
495
  y: number;
303
496
  };
304
497
  }[] | undefined;
305
- suggestion?: {
306
- confidence: number;
307
- jobId?: string | undefined;
308
- reason?: string | undefined;
309
- explanation?: string | undefined;
310
- recommendation?: "redact" | "review" | "keep" | undefined;
311
- } | undefined;
498
+ locked?: boolean | undefined;
312
499
  overlayText?: string | undefined;
500
+ author?: string | undefined;
501
+ contents?: string | undefined;
502
+ inReplyTo?: string | undefined;
503
+ subject?: string | undefined;
504
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
505
+ custom?: Record<string, unknown> | undefined;
313
506
  } | undefined;
314
- update: (id: string, patch: Partial<Annotation>) => {
315
- id: string;
316
- page: number;
317
- rect: {
318
- x: number;
319
- y: number;
320
- width: number;
321
- height: number;
322
- };
323
- color: string;
324
- opacity: number;
325
- createdAt: string;
326
- modifiedAt: string;
327
- source: "session" | "pdf";
507
+ update: (id: string, patch: AnnotationPatch) => {
328
508
  type: "highlight" | "underline" | "strikeout" | "squiggly";
329
509
  quads: {
330
510
  p1: {
@@ -344,14 +524,6 @@ export declare function useAnnotations(): {
344
524
  y: number;
345
525
  };
346
526
  }[];
347
- author?: string | undefined;
348
- contents?: string | undefined;
349
- inReplyTo?: string | undefined;
350
- locked?: boolean | undefined;
351
- custom?: Record<string, unknown> | undefined;
352
- } | {
353
- id: string;
354
- page: number;
355
527
  rect: {
356
528
  x: number;
357
529
  y: number;
@@ -363,16 +535,16 @@ export declare function useAnnotations(): {
363
535
  createdAt: string;
364
536
  modifiedAt: string;
365
537
  source: "session" | "pdf";
366
- type: "text";
367
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
538
+ id: string;
539
+ page: number;
540
+ locked?: boolean | undefined;
368
541
  author?: string | undefined;
369
542
  contents?: string | undefined;
370
543
  inReplyTo?: string | undefined;
371
- locked?: boolean | undefined;
544
+ subject?: string | undefined;
545
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
372
546
  custom?: Record<string, unknown> | undefined;
373
547
  } | {
374
- id: string;
375
- page: number;
376
548
  rect: {
377
549
  x: number;
378
550
  y: number;
@@ -384,75 +556,68 @@ export declare function useAnnotations(): {
384
556
  createdAt: string;
385
557
  modifiedAt: string;
386
558
  source: "session" | "pdf";
387
- type: "freetext";
388
- contents: string;
389
- fontSize: number;
390
- fontFamily: string;
391
- align: "left" | "center" | "right";
559
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
560
+ id: string;
561
+ page: number;
562
+ type: "text";
563
+ locked?: boolean | undefined;
392
564
  author?: string | undefined;
565
+ contents?: string | undefined;
393
566
  inReplyTo?: string | undefined;
394
- locked?: boolean | undefined;
567
+ subject?: string | undefined;
568
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
395
569
  custom?: Record<string, unknown> | undefined;
396
- callout?: {
397
- x: number;
398
- y: number;
399
- }[] | undefined;
400
570
  } | {
401
- id: string;
402
- page: number;
571
+ defaultStyle: {
572
+ color: string;
573
+ fontFamily: string;
574
+ fontSize: number;
575
+ textAlign: "left" | "right" | "center" | "justify";
576
+ align?: undefined;
577
+ fontWeight?: "bold" | undefined;
578
+ fontStyle?: "italic" | undefined;
579
+ textDecoration?: "underline" | undefined;
580
+ };
403
581
  rect: {
404
582
  x: number;
405
583
  y: number;
406
584
  width: number;
407
585
  height: number;
408
586
  };
409
- color: string;
410
587
  opacity: number;
411
588
  createdAt: string;
412
589
  modifiedAt: string;
413
590
  source: "session" | "pdf";
414
- type: "square" | "circle";
591
+ contents: string;
415
592
  width: number;
416
- author?: string | undefined;
417
- contents?: string | undefined;
418
- inReplyTo?: string | undefined;
419
- locked?: boolean | undefined;
420
- custom?: Record<string, unknown> | undefined;
421
- interiorColor?: string | undefined;
422
- } | {
423
593
  id: string;
424
594
  page: number;
425
- rect: {
426
- x: number;
427
- y: number;
428
- width: number;
429
- height: number;
430
- };
431
- color: string;
432
- opacity: number;
433
- createdAt: string;
434
- modifiedAt: string;
435
- source: "session" | "pdf";
436
- type: "line";
437
- start: {
438
- x: number;
439
- y: number;
440
- };
441
- end: {
595
+ type: "freetext";
596
+ color?: string | undefined;
597
+ borderColor?: string | undefined;
598
+ fringe?: {
599
+ left: number;
600
+ top: number;
601
+ right: number;
602
+ bottom: number;
603
+ } | undefined;
604
+ callout?: {
442
605
  x: number;
443
606
  y: number;
444
- };
445
- width: number;
607
+ }[] | undefined;
608
+ fontFamily?: undefined;
609
+ fontSize?: undefined;
610
+ align?: undefined;
611
+ locked?: boolean | undefined;
612
+ dashes?: number[] | undefined;
613
+ cornerRadius?: number | undefined;
614
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
446
615
  author?: string | undefined;
447
- contents?: string | undefined;
448
616
  inReplyTo?: string | undefined;
449
- locked?: boolean | undefined;
617
+ subject?: string | undefined;
618
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
450
619
  custom?: Record<string, unknown> | undefined;
451
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
452
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
453
620
  } | {
454
- id: string;
455
- page: number;
456
621
  rect: {
457
622
  x: number;
458
623
  y: number;
@@ -464,21 +629,21 @@ export declare function useAnnotations(): {
464
629
  createdAt: string;
465
630
  modifiedAt: string;
466
631
  source: "session" | "pdf";
467
- type: "polyline" | "polygon";
468
- vertices: {
469
- x: number;
470
- y: number;
471
- }[];
472
632
  width: number;
633
+ id: string;
634
+ page: number;
635
+ type: "square";
636
+ locked?: boolean | undefined;
637
+ dashes?: number[] | undefined;
638
+ interiorColor?: string | undefined;
639
+ cornerRadius?: number | undefined;
473
640
  author?: string | undefined;
474
641
  contents?: string | undefined;
475
642
  inReplyTo?: string | undefined;
476
- locked?: boolean | undefined;
643
+ subject?: string | undefined;
644
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
477
645
  custom?: Record<string, unknown> | undefined;
478
- interiorColor?: string | undefined;
479
646
  } | {
480
- id: string;
481
- page: number;
482
647
  rect: {
483
648
  x: number;
484
649
  y: number;
@@ -490,72 +655,29 @@ export declare function useAnnotations(): {
490
655
  createdAt: string;
491
656
  modifiedAt: string;
492
657
  source: "session" | "pdf";
493
- type: "ink";
494
- inklist: {
495
- x: number;
496
- y: number;
497
- }[][];
498
658
  width: number;
659
+ id: string;
660
+ page: number;
661
+ type: "circle";
662
+ cornerRadius?: undefined;
663
+ locked?: boolean | undefined;
664
+ dashes?: number[] | undefined;
665
+ interiorColor?: string | undefined;
499
666
  author?: string | undefined;
500
667
  contents?: string | undefined;
501
668
  inReplyTo?: string | undefined;
502
- locked?: boolean | undefined;
669
+ subject?: string | undefined;
670
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
503
671
  custom?: Record<string, unknown> | undefined;
504
672
  } | {
505
- id: string;
506
- page: number;
507
- rect: {
673
+ start: {
674
+ x: number;
675
+ y: number;
676
+ };
677
+ end: {
508
678
  x: number;
509
679
  y: number;
510
- width: number;
511
- height: number;
512
680
  };
513
- color: string;
514
- opacity: number;
515
- createdAt: string;
516
- modifiedAt: string;
517
- source: "session" | "pdf";
518
- type: "redact";
519
- origin: "user" | "suggested";
520
- interiorColor: string;
521
- author?: string | undefined;
522
- contents?: string | undefined;
523
- inReplyTo?: string | undefined;
524
- locked?: boolean | undefined;
525
- custom?: Record<string, unknown> | undefined;
526
- quads?: {
527
- p1: {
528
- x: number;
529
- y: number;
530
- };
531
- p2: {
532
- x: number;
533
- y: number;
534
- };
535
- p3: {
536
- x: number;
537
- y: number;
538
- };
539
- p4: {
540
- x: number;
541
- y: number;
542
- };
543
- }[] | undefined;
544
- suggestion?: {
545
- confidence: number;
546
- jobId?: string | undefined;
547
- reason?: string | undefined;
548
- explanation?: string | undefined;
549
- recommendation?: "redact" | "review" | "keep" | undefined;
550
- } | undefined;
551
- overlayText?: string | undefined;
552
- } | undefined;
553
- remove: (id: string) => boolean;
554
- select: (ids: string[]) => void | undefined;
555
- /** Keeps a suggested redaction as the user's own, in the default redaction colour. */
556
- accept: (id: string) => {
557
- id: string;
558
- page: number;
559
681
  rect: {
560
682
  x: number;
561
683
  y: number;
@@ -567,33 +689,25 @@ export declare function useAnnotations(): {
567
689
  createdAt: string;
568
690
  modifiedAt: string;
569
691
  source: "session" | "pdf";
570
- type: "highlight" | "underline" | "strikeout" | "squiggly";
571
- quads: {
572
- p1: {
573
- x: number;
574
- y: number;
575
- };
576
- p2: {
577
- x: number;
578
- y: number;
579
- };
580
- p3: {
581
- x: number;
582
- y: number;
583
- };
584
- p4: {
585
- x: number;
586
- y: number;
587
- };
588
- }[];
692
+ width: number;
693
+ id: string;
694
+ page: number;
695
+ type: "line";
696
+ locked?: boolean | undefined;
697
+ dashes?: number[] | undefined;
698
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
699
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
589
700
  author?: string | undefined;
590
701
  contents?: string | undefined;
591
702
  inReplyTo?: string | undefined;
592
- locked?: boolean | undefined;
703
+ subject?: string | undefined;
704
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
593
705
  custom?: Record<string, unknown> | undefined;
594
706
  } | {
595
- id: string;
596
- page: number;
707
+ vertices: {
708
+ x: number;
709
+ y: number;
710
+ }[];
597
711
  rect: {
598
712
  x: number;
599
713
  y: number;
@@ -605,16 +719,26 @@ export declare function useAnnotations(): {
605
719
  createdAt: string;
606
720
  modifiedAt: string;
607
721
  source: "session" | "pdf";
608
- type: "text";
609
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
722
+ width: number;
723
+ id: string;
724
+ page: number;
725
+ type: "polyline";
726
+ locked?: boolean | undefined;
727
+ dashes?: number[] | undefined;
728
+ interiorColor?: string | undefined;
729
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
730
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
610
731
  author?: string | undefined;
611
732
  contents?: string | undefined;
612
733
  inReplyTo?: string | undefined;
613
- locked?: boolean | undefined;
734
+ subject?: string | undefined;
735
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
614
736
  custom?: Record<string, unknown> | undefined;
615
737
  } | {
616
- id: string;
617
- page: number;
738
+ vertices: {
739
+ x: number;
740
+ y: number;
741
+ }[];
618
742
  rect: {
619
743
  x: number;
620
744
  y: number;
@@ -626,22 +750,26 @@ export declare function useAnnotations(): {
626
750
  createdAt: string;
627
751
  modifiedAt: string;
628
752
  source: "session" | "pdf";
629
- type: "freetext";
630
- contents: string;
631
- fontSize: number;
632
- fontFamily: string;
633
- align: "left" | "center" | "right";
753
+ width: number;
754
+ id: string;
755
+ page: number;
756
+ type: "polygon";
757
+ head?: undefined;
758
+ tail?: undefined;
759
+ locked?: boolean | undefined;
760
+ dashes?: number[] | undefined;
761
+ interiorColor?: string | undefined;
634
762
  author?: string | undefined;
763
+ contents?: string | undefined;
635
764
  inReplyTo?: string | undefined;
636
- locked?: boolean | undefined;
765
+ subject?: string | undefined;
766
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
637
767
  custom?: Record<string, unknown> | undefined;
638
- callout?: {
768
+ } | {
769
+ inklist: {
639
770
  x: number;
640
771
  y: number;
641
- }[] | undefined;
642
- } | {
643
- id: string;
644
- page: number;
772
+ }[][];
645
773
  rect: {
646
774
  x: number;
647
775
  y: number;
@@ -653,17 +781,20 @@ export declare function useAnnotations(): {
653
781
  createdAt: string;
654
782
  modifiedAt: string;
655
783
  source: "session" | "pdf";
656
- type: "square" | "circle";
657
784
  width: number;
785
+ id: string;
786
+ page: number;
787
+ type: "ink";
788
+ pressure?: number[][] | undefined;
789
+ locked?: boolean | undefined;
790
+ dashes?: number[] | undefined;
658
791
  author?: string | undefined;
659
792
  contents?: string | undefined;
660
793
  inReplyTo?: string | undefined;
661
- locked?: boolean | undefined;
794
+ subject?: string | undefined;
795
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
662
796
  custom?: Record<string, unknown> | undefined;
663
- interiorColor?: string | undefined;
664
797
  } | {
665
- id: string;
666
- page: number;
667
798
  rect: {
668
799
  x: number;
669
800
  y: number;
@@ -675,26 +806,19 @@ export declare function useAnnotations(): {
675
806
  createdAt: string;
676
807
  modifiedAt: string;
677
808
  source: "session" | "pdf";
678
- type: "line";
679
- start: {
680
- x: number;
681
- y: number;
682
- };
683
- end: {
684
- x: number;
685
- y: number;
686
- };
687
- width: number;
809
+ imagedata: string;
810
+ id: string;
811
+ page: number;
812
+ type: "stamp";
813
+ locked?: boolean | undefined;
814
+ rotation?: 0 | 90 | 180 | 270 | undefined;
688
815
  author?: string | undefined;
689
816
  contents?: string | undefined;
690
817
  inReplyTo?: string | undefined;
691
- locked?: boolean | undefined;
818
+ subject?: string | undefined;
819
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
692
820
  custom?: Record<string, unknown> | undefined;
693
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
694
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
695
821
  } | {
696
- id: string;
697
- page: number;
698
822
  rect: {
699
823
  x: number;
700
824
  y: number;
@@ -706,21 +830,19 @@ export declare function useAnnotations(): {
706
830
  createdAt: string;
707
831
  modifiedAt: string;
708
832
  source: "session" | "pdf";
709
- type: "polyline" | "polygon";
710
- vertices: {
711
- x: number;
712
- y: number;
713
- }[];
833
+ magnification: number;
714
834
  width: number;
835
+ id: string;
836
+ page: number;
837
+ type: "loupe";
838
+ locked?: boolean | undefined;
715
839
  author?: string | undefined;
716
840
  contents?: string | undefined;
717
841
  inReplyTo?: string | undefined;
718
- locked?: boolean | undefined;
842
+ subject?: string | undefined;
843
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
719
844
  custom?: Record<string, unknown> | undefined;
720
- interiorColor?: string | undefined;
721
845
  } | {
722
- id: string;
723
- page: number;
724
846
  rect: {
725
847
  x: number;
726
848
  y: number;
@@ -732,20 +854,20 @@ export declare function useAnnotations(): {
732
854
  createdAt: string;
733
855
  modifiedAt: string;
734
856
  source: "session" | "pdf";
735
- type: "ink";
736
- inklist: {
737
- x: number;
738
- y: number;
739
- }[][];
740
- width: number;
857
+ shape: "rect" | "ellipse";
858
+ dim: number;
859
+ id: string;
860
+ page: number;
861
+ type: "mask";
862
+ locked?: boolean | undefined;
741
863
  author?: string | undefined;
742
864
  contents?: string | undefined;
743
865
  inReplyTo?: string | undefined;
744
- locked?: boolean | undefined;
866
+ subject?: string | undefined;
867
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
745
868
  custom?: Record<string, unknown> | undefined;
746
869
  } | {
747
- id: string;
748
- page: number;
870
+ interiorColor: string;
749
871
  rect: {
750
872
  x: number;
751
873
  y: number;
@@ -757,14 +879,9 @@ export declare function useAnnotations(): {
757
879
  createdAt: string;
758
880
  modifiedAt: string;
759
881
  source: "session" | "pdf";
882
+ id: string;
883
+ page: number;
760
884
  type: "redact";
761
- origin: "user" | "suggested";
762
- interiorColor: string;
763
- author?: string | undefined;
764
- contents?: string | undefined;
765
- inReplyTo?: string | undefined;
766
- locked?: boolean | undefined;
767
- custom?: Record<string, unknown> | undefined;
768
885
  quads?: {
769
886
  p1: {
770
887
  x: number;
@@ -783,30 +900,18 @@ export declare function useAnnotations(): {
783
900
  y: number;
784
901
  };
785
902
  }[] | undefined;
786
- suggestion?: {
787
- confidence: number;
788
- jobId?: string | undefined;
789
- reason?: string | undefined;
790
- explanation?: string | undefined;
791
- recommendation?: "redact" | "review" | "keep" | undefined;
792
- } | undefined;
903
+ locked?: boolean | undefined;
793
904
  overlayText?: string | undefined;
905
+ author?: string | undefined;
906
+ contents?: string | undefined;
907
+ inReplyTo?: string | undefined;
908
+ subject?: string | undefined;
909
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
910
+ custom?: Record<string, unknown> | undefined;
794
911
  } | undefined;
795
- dismiss: (id: string) => boolean;
912
+ remove: (id: string) => boolean;
913
+ select: (ids: string[]) => void | undefined;
796
914
  annotations: readonly ({
797
- id: string;
798
- page: number;
799
- rect: {
800
- x: number;
801
- y: number;
802
- width: number;
803
- height: number;
804
- };
805
- color: string;
806
- opacity: number;
807
- createdAt: string;
808
- modifiedAt: string;
809
- source: "session" | "pdf";
810
915
  type: "highlight" | "underline" | "strikeout" | "squiggly";
811
916
  quads: {
812
917
  p1: {
@@ -826,14 +931,6 @@ export declare function useAnnotations(): {
826
931
  y: number;
827
932
  };
828
933
  }[];
829
- author?: string | undefined;
830
- contents?: string | undefined;
831
- inReplyTo?: string | undefined;
832
- locked?: boolean | undefined;
833
- custom?: Record<string, unknown> | undefined;
834
- } | {
835
- id: string;
836
- page: number;
837
934
  rect: {
838
935
  x: number;
839
936
  y: number;
@@ -845,16 +942,16 @@ export declare function useAnnotations(): {
845
942
  createdAt: string;
846
943
  modifiedAt: string;
847
944
  source: "session" | "pdf";
848
- type: "text";
849
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
945
+ id: string;
946
+ page: number;
947
+ locked?: boolean | undefined;
850
948
  author?: string | undefined;
851
949
  contents?: string | undefined;
852
950
  inReplyTo?: string | undefined;
853
- locked?: boolean | undefined;
951
+ subject?: string | undefined;
952
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
854
953
  custom?: Record<string, unknown> | undefined;
855
954
  } | {
856
- id: string;
857
- page: number;
858
955
  rect: {
859
956
  x: number;
860
957
  y: number;
@@ -866,75 +963,68 @@ export declare function useAnnotations(): {
866
963
  createdAt: string;
867
964
  modifiedAt: string;
868
965
  source: "session" | "pdf";
869
- type: "freetext";
870
- contents: string;
871
- fontSize: number;
872
- fontFamily: string;
873
- align: "left" | "center" | "right";
874
- author?: string | undefined;
875
- inReplyTo?: string | undefined;
876
- locked?: boolean | undefined;
877
- custom?: Record<string, unknown> | undefined;
878
- callout?: {
879
- x: number;
880
- y: number;
881
- }[] | undefined;
882
- } | {
966
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
883
967
  id: string;
884
968
  page: number;
885
- rect: {
886
- x: number;
887
- y: number;
888
- width: number;
889
- height: number;
890
- };
891
- color: string;
892
- opacity: number;
893
- createdAt: string;
894
- modifiedAt: string;
895
- source: "session" | "pdf";
896
- type: "square" | "circle";
897
- width: number;
969
+ type: "text";
970
+ locked?: boolean | undefined;
898
971
  author?: string | undefined;
899
972
  contents?: string | undefined;
900
973
  inReplyTo?: string | undefined;
901
- locked?: boolean | undefined;
974
+ subject?: string | undefined;
975
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
902
976
  custom?: Record<string, unknown> | undefined;
903
- interiorColor?: string | undefined;
904
977
  } | {
905
- id: string;
906
- page: number;
978
+ defaultStyle: {
979
+ color: string;
980
+ fontFamily: string;
981
+ fontSize: number;
982
+ textAlign: "left" | "right" | "center" | "justify";
983
+ align?: undefined;
984
+ fontWeight?: "bold" | undefined;
985
+ fontStyle?: "italic" | undefined;
986
+ textDecoration?: "underline" | undefined;
987
+ };
907
988
  rect: {
908
989
  x: number;
909
990
  y: number;
910
991
  width: number;
911
992
  height: number;
912
993
  };
913
- color: string;
914
994
  opacity: number;
915
995
  createdAt: string;
916
996
  modifiedAt: string;
917
997
  source: "session" | "pdf";
918
- type: "line";
919
- start: {
920
- x: number;
921
- y: number;
922
- };
923
- end: {
998
+ contents: string;
999
+ width: number;
1000
+ id: string;
1001
+ page: number;
1002
+ type: "freetext";
1003
+ color?: string | undefined;
1004
+ borderColor?: string | undefined;
1005
+ fringe?: {
1006
+ left: number;
1007
+ top: number;
1008
+ right: number;
1009
+ bottom: number;
1010
+ } | undefined;
1011
+ callout?: {
924
1012
  x: number;
925
1013
  y: number;
926
- };
927
- width: number;
1014
+ }[] | undefined;
1015
+ fontFamily?: undefined;
1016
+ fontSize?: undefined;
1017
+ align?: undefined;
1018
+ locked?: boolean | undefined;
1019
+ dashes?: number[] | undefined;
1020
+ cornerRadius?: number | undefined;
1021
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
928
1022
  author?: string | undefined;
929
- contents?: string | undefined;
930
1023
  inReplyTo?: string | undefined;
931
- locked?: boolean | undefined;
1024
+ subject?: string | undefined;
1025
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
932
1026
  custom?: Record<string, unknown> | undefined;
933
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
934
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
935
1027
  } | {
936
- id: string;
937
- page: number;
938
1028
  rect: {
939
1029
  x: number;
940
1030
  y: number;
@@ -946,21 +1036,21 @@ export declare function useAnnotations(): {
946
1036
  createdAt: string;
947
1037
  modifiedAt: string;
948
1038
  source: "session" | "pdf";
949
- type: "polyline" | "polygon";
950
- vertices: {
951
- x: number;
952
- y: number;
953
- }[];
954
1039
  width: number;
1040
+ id: string;
1041
+ page: number;
1042
+ type: "square";
1043
+ locked?: boolean | undefined;
1044
+ dashes?: number[] | undefined;
1045
+ interiorColor?: string | undefined;
1046
+ cornerRadius?: number | undefined;
955
1047
  author?: string | undefined;
956
1048
  contents?: string | undefined;
957
1049
  inReplyTo?: string | undefined;
958
- locked?: boolean | undefined;
1050
+ subject?: string | undefined;
1051
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
959
1052
  custom?: Record<string, unknown> | undefined;
960
- interiorColor?: string | undefined;
961
1053
  } | {
962
- id: string;
963
- page: number;
964
1054
  rect: {
965
1055
  x: number;
966
1056
  y: number;
@@ -972,70 +1062,29 @@ export declare function useAnnotations(): {
972
1062
  createdAt: string;
973
1063
  modifiedAt: string;
974
1064
  source: "session" | "pdf";
975
- type: "ink";
976
- inklist: {
977
- x: number;
978
- y: number;
979
- }[][];
980
1065
  width: number;
1066
+ id: string;
1067
+ page: number;
1068
+ type: "circle";
1069
+ cornerRadius?: undefined;
1070
+ locked?: boolean | undefined;
1071
+ dashes?: number[] | undefined;
1072
+ interiorColor?: string | undefined;
981
1073
  author?: string | undefined;
982
1074
  contents?: string | undefined;
983
1075
  inReplyTo?: string | undefined;
984
- locked?: boolean | undefined;
1076
+ subject?: string | undefined;
1077
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
985
1078
  custom?: Record<string, unknown> | undefined;
986
1079
  } | {
987
- id: string;
988
- page: number;
989
- rect: {
1080
+ start: {
1081
+ x: number;
1082
+ y: number;
1083
+ };
1084
+ end: {
990
1085
  x: number;
991
1086
  y: number;
992
- width: number;
993
- height: number;
994
1087
  };
995
- color: string;
996
- opacity: number;
997
- createdAt: string;
998
- modifiedAt: string;
999
- source: "session" | "pdf";
1000
- type: "redact";
1001
- origin: "user" | "suggested";
1002
- interiorColor: string;
1003
- author?: string | undefined;
1004
- contents?: string | undefined;
1005
- inReplyTo?: string | undefined;
1006
- locked?: boolean | undefined;
1007
- custom?: Record<string, unknown> | undefined;
1008
- quads?: {
1009
- p1: {
1010
- x: number;
1011
- y: number;
1012
- };
1013
- p2: {
1014
- x: number;
1015
- y: number;
1016
- };
1017
- p3: {
1018
- x: number;
1019
- y: number;
1020
- };
1021
- p4: {
1022
- x: number;
1023
- y: number;
1024
- };
1025
- }[] | undefined;
1026
- suggestion?: {
1027
- confidence: number;
1028
- jobId?: string | undefined;
1029
- reason?: string | undefined;
1030
- explanation?: string | undefined;
1031
- recommendation?: "redact" | "review" | "keep" | undefined;
1032
- } | undefined;
1033
- overlayText?: string | undefined;
1034
- })[];
1035
- selection: readonly string[];
1036
- selected: ({
1037
- id: string;
1038
- page: number;
1039
1088
  rect: {
1040
1089
  x: number;
1041
1090
  y: number;
@@ -1047,33 +1096,25 @@ export declare function useAnnotations(): {
1047
1096
  createdAt: string;
1048
1097
  modifiedAt: string;
1049
1098
  source: "session" | "pdf";
1050
- type: "highlight" | "underline" | "strikeout" | "squiggly";
1051
- quads: {
1052
- p1: {
1053
- x: number;
1054
- y: number;
1055
- };
1056
- p2: {
1057
- x: number;
1058
- y: number;
1059
- };
1060
- p3: {
1061
- x: number;
1062
- y: number;
1063
- };
1064
- p4: {
1065
- x: number;
1066
- y: number;
1067
- };
1068
- }[];
1099
+ width: number;
1100
+ id: string;
1101
+ page: number;
1102
+ type: "line";
1103
+ locked?: boolean | undefined;
1104
+ dashes?: number[] | undefined;
1105
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1106
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1069
1107
  author?: string | undefined;
1070
1108
  contents?: string | undefined;
1071
1109
  inReplyTo?: string | undefined;
1072
- locked?: boolean | undefined;
1110
+ subject?: string | undefined;
1111
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1073
1112
  custom?: Record<string, unknown> | undefined;
1074
1113
  } | {
1075
- id: string;
1076
- page: number;
1114
+ vertices: {
1115
+ x: number;
1116
+ y: number;
1117
+ }[];
1077
1118
  rect: {
1078
1119
  x: number;
1079
1120
  y: number;
@@ -1085,16 +1126,26 @@ export declare function useAnnotations(): {
1085
1126
  createdAt: string;
1086
1127
  modifiedAt: string;
1087
1128
  source: "session" | "pdf";
1088
- type: "text";
1089
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
1129
+ width: number;
1130
+ id: string;
1131
+ page: number;
1132
+ type: "polyline";
1133
+ locked?: boolean | undefined;
1134
+ dashes?: number[] | undefined;
1135
+ interiorColor?: string | undefined;
1136
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1137
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1090
1138
  author?: string | undefined;
1091
1139
  contents?: string | undefined;
1092
1140
  inReplyTo?: string | undefined;
1093
- locked?: boolean | undefined;
1141
+ subject?: string | undefined;
1142
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1094
1143
  custom?: Record<string, unknown> | undefined;
1095
1144
  } | {
1096
- id: string;
1097
- page: number;
1145
+ vertices: {
1146
+ x: number;
1147
+ y: number;
1148
+ }[];
1098
1149
  rect: {
1099
1150
  x: number;
1100
1151
  y: number;
@@ -1106,22 +1157,26 @@ export declare function useAnnotations(): {
1106
1157
  createdAt: string;
1107
1158
  modifiedAt: string;
1108
1159
  source: "session" | "pdf";
1109
- type: "freetext";
1110
- contents: string;
1111
- fontSize: number;
1112
- fontFamily: string;
1113
- align: "left" | "center" | "right";
1160
+ width: number;
1161
+ id: string;
1162
+ page: number;
1163
+ type: "polygon";
1164
+ head?: undefined;
1165
+ tail?: undefined;
1166
+ locked?: boolean | undefined;
1167
+ dashes?: number[] | undefined;
1168
+ interiorColor?: string | undefined;
1114
1169
  author?: string | undefined;
1170
+ contents?: string | undefined;
1115
1171
  inReplyTo?: string | undefined;
1116
- locked?: boolean | undefined;
1172
+ subject?: string | undefined;
1173
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1117
1174
  custom?: Record<string, unknown> | undefined;
1118
- callout?: {
1175
+ } | {
1176
+ inklist: {
1119
1177
  x: number;
1120
1178
  y: number;
1121
- }[] | undefined;
1122
- } | {
1123
- id: string;
1124
- page: number;
1179
+ }[][];
1125
1180
  rect: {
1126
1181
  x: number;
1127
1182
  y: number;
@@ -1133,17 +1188,20 @@ export declare function useAnnotations(): {
1133
1188
  createdAt: string;
1134
1189
  modifiedAt: string;
1135
1190
  source: "session" | "pdf";
1136
- type: "square" | "circle";
1137
1191
  width: number;
1192
+ id: string;
1193
+ page: number;
1194
+ type: "ink";
1195
+ pressure?: number[][] | undefined;
1196
+ locked?: boolean | undefined;
1197
+ dashes?: number[] | undefined;
1138
1198
  author?: string | undefined;
1139
1199
  contents?: string | undefined;
1140
1200
  inReplyTo?: string | undefined;
1141
- locked?: boolean | undefined;
1201
+ subject?: string | undefined;
1202
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1142
1203
  custom?: Record<string, unknown> | undefined;
1143
- interiorColor?: string | undefined;
1144
1204
  } | {
1145
- id: string;
1146
- page: number;
1147
1205
  rect: {
1148
1206
  x: number;
1149
1207
  y: number;
@@ -1155,26 +1213,19 @@ export declare function useAnnotations(): {
1155
1213
  createdAt: string;
1156
1214
  modifiedAt: string;
1157
1215
  source: "session" | "pdf";
1158
- type: "line";
1159
- start: {
1160
- x: number;
1161
- y: number;
1162
- };
1163
- end: {
1164
- x: number;
1165
- y: number;
1166
- };
1167
- width: number;
1216
+ imagedata: string;
1217
+ id: string;
1218
+ page: number;
1219
+ type: "stamp";
1220
+ locked?: boolean | undefined;
1221
+ rotation?: 0 | 90 | 180 | 270 | undefined;
1168
1222
  author?: string | undefined;
1169
1223
  contents?: string | undefined;
1170
1224
  inReplyTo?: string | undefined;
1171
- locked?: boolean | undefined;
1225
+ subject?: string | undefined;
1226
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1172
1227
  custom?: Record<string, unknown> | undefined;
1173
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1174
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1175
1228
  } | {
1176
- id: string;
1177
- page: number;
1178
1229
  rect: {
1179
1230
  x: number;
1180
1231
  y: number;
@@ -1186,21 +1237,19 @@ export declare function useAnnotations(): {
1186
1237
  createdAt: string;
1187
1238
  modifiedAt: string;
1188
1239
  source: "session" | "pdf";
1189
- type: "polyline" | "polygon";
1190
- vertices: {
1191
- x: number;
1192
- y: number;
1193
- }[];
1240
+ magnification: number;
1194
1241
  width: number;
1242
+ id: string;
1243
+ page: number;
1244
+ type: "loupe";
1245
+ locked?: boolean | undefined;
1195
1246
  author?: string | undefined;
1196
1247
  contents?: string | undefined;
1197
1248
  inReplyTo?: string | undefined;
1198
- locked?: boolean | undefined;
1249
+ subject?: string | undefined;
1250
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1199
1251
  custom?: Record<string, unknown> | undefined;
1200
- interiorColor?: string | undefined;
1201
1252
  } | {
1202
- id: string;
1203
- page: number;
1204
1253
  rect: {
1205
1254
  x: number;
1206
1255
  y: number;
@@ -1212,20 +1261,20 @@ export declare function useAnnotations(): {
1212
1261
  createdAt: string;
1213
1262
  modifiedAt: string;
1214
1263
  source: "session" | "pdf";
1215
- type: "ink";
1216
- inklist: {
1217
- x: number;
1218
- y: number;
1219
- }[][];
1220
- width: number;
1264
+ shape: "rect" | "ellipse";
1265
+ dim: number;
1266
+ id: string;
1267
+ page: number;
1268
+ type: "mask";
1269
+ locked?: boolean | undefined;
1221
1270
  author?: string | undefined;
1222
1271
  contents?: string | undefined;
1223
1272
  inReplyTo?: string | undefined;
1224
- locked?: boolean | undefined;
1273
+ subject?: string | undefined;
1274
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1225
1275
  custom?: Record<string, unknown> | undefined;
1226
1276
  } | {
1227
- id: string;
1228
- page: number;
1277
+ interiorColor: string;
1229
1278
  rect: {
1230
1279
  x: number;
1231
1280
  y: number;
@@ -1237,14 +1286,9 @@ export declare function useAnnotations(): {
1237
1286
  createdAt: string;
1238
1287
  modifiedAt: string;
1239
1288
  source: "session" | "pdf";
1289
+ id: string;
1290
+ page: number;
1240
1291
  type: "redact";
1241
- origin: "user" | "suggested";
1242
- interiorColor: string;
1243
- author?: string | undefined;
1244
- contents?: string | undefined;
1245
- inReplyTo?: string | undefined;
1246
- locked?: boolean | undefined;
1247
- custom?: Record<string, unknown> | undefined;
1248
1292
  quads?: {
1249
1293
  p1: {
1250
1294
  x: number;
@@ -1263,29 +1307,17 @@ export declare function useAnnotations(): {
1263
1307
  y: number;
1264
1308
  };
1265
1309
  }[] | undefined;
1266
- suggestion?: {
1267
- confidence: number;
1268
- jobId?: string | undefined;
1269
- reason?: string | undefined;
1270
- explanation?: string | undefined;
1271
- recommendation?: "redact" | "review" | "keep" | undefined;
1272
- } | undefined;
1310
+ locked?: boolean | undefined;
1273
1311
  overlayText?: string | undefined;
1312
+ author?: string | undefined;
1313
+ contents?: string | undefined;
1314
+ inReplyTo?: string | undefined;
1315
+ subject?: string | undefined;
1316
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1317
+ custom?: Record<string, unknown> | undefined;
1274
1318
  })[];
1275
- byPage: (page: number) => ({
1276
- id: string;
1277
- page: number;
1278
- rect: {
1279
- x: number;
1280
- y: number;
1281
- width: number;
1282
- height: number;
1283
- };
1284
- color: string;
1285
- opacity: number;
1286
- createdAt: string;
1287
- modifiedAt: string;
1288
- source: "session" | "pdf";
1319
+ selection: readonly string[];
1320
+ selected: ({
1289
1321
  type: "highlight" | "underline" | "strikeout" | "squiggly";
1290
1322
  quads: {
1291
1323
  p1: {
@@ -1305,14 +1337,531 @@ export declare function useAnnotations(): {
1305
1337
  y: number;
1306
1338
  };
1307
1339
  }[];
1308
- author?: string | undefined;
1340
+ rect: {
1341
+ x: number;
1342
+ y: number;
1343
+ width: number;
1344
+ height: number;
1345
+ };
1346
+ color: string;
1347
+ opacity: number;
1348
+ createdAt: string;
1349
+ modifiedAt: string;
1350
+ source: "session" | "pdf";
1351
+ id: string;
1352
+ page: number;
1353
+ locked?: boolean | undefined;
1354
+ author?: string | undefined;
1355
+ contents?: string | undefined;
1356
+ inReplyTo?: string | undefined;
1357
+ subject?: string | undefined;
1358
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1359
+ custom?: Record<string, unknown> | undefined;
1360
+ } | {
1361
+ rect: {
1362
+ x: number;
1363
+ y: number;
1364
+ width: number;
1365
+ height: number;
1366
+ };
1367
+ color: string;
1368
+ opacity: number;
1369
+ createdAt: string;
1370
+ modifiedAt: string;
1371
+ source: "session" | "pdf";
1372
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
1373
+ id: string;
1374
+ page: number;
1375
+ type: "text";
1376
+ locked?: boolean | undefined;
1377
+ author?: string | undefined;
1378
+ contents?: string | undefined;
1379
+ inReplyTo?: string | undefined;
1380
+ subject?: string | undefined;
1381
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1382
+ custom?: Record<string, unknown> | undefined;
1383
+ } | {
1384
+ defaultStyle: {
1385
+ color: string;
1386
+ fontFamily: string;
1387
+ fontSize: number;
1388
+ textAlign: "left" | "right" | "center" | "justify";
1389
+ align?: undefined;
1390
+ fontWeight?: "bold" | undefined;
1391
+ fontStyle?: "italic" | undefined;
1392
+ textDecoration?: "underline" | undefined;
1393
+ };
1394
+ rect: {
1395
+ x: number;
1396
+ y: number;
1397
+ width: number;
1398
+ height: number;
1399
+ };
1400
+ opacity: number;
1401
+ createdAt: string;
1402
+ modifiedAt: string;
1403
+ source: "session" | "pdf";
1404
+ contents: string;
1405
+ width: number;
1406
+ id: string;
1407
+ page: number;
1408
+ type: "freetext";
1409
+ color?: string | undefined;
1410
+ borderColor?: string | undefined;
1411
+ fringe?: {
1412
+ left: number;
1413
+ top: number;
1414
+ right: number;
1415
+ bottom: number;
1416
+ } | undefined;
1417
+ callout?: {
1418
+ x: number;
1419
+ y: number;
1420
+ }[] | undefined;
1421
+ fontFamily?: undefined;
1422
+ fontSize?: undefined;
1423
+ align?: undefined;
1424
+ locked?: boolean | undefined;
1425
+ dashes?: number[] | undefined;
1426
+ cornerRadius?: number | undefined;
1427
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1428
+ author?: string | undefined;
1429
+ inReplyTo?: string | undefined;
1430
+ subject?: string | undefined;
1431
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1432
+ custom?: Record<string, unknown> | undefined;
1433
+ } | {
1434
+ rect: {
1435
+ x: number;
1436
+ y: number;
1437
+ width: number;
1438
+ height: number;
1439
+ };
1440
+ color: string;
1441
+ opacity: number;
1442
+ createdAt: string;
1443
+ modifiedAt: string;
1444
+ source: "session" | "pdf";
1445
+ width: number;
1446
+ id: string;
1447
+ page: number;
1448
+ type: "square";
1449
+ locked?: boolean | undefined;
1450
+ dashes?: number[] | undefined;
1451
+ interiorColor?: string | undefined;
1452
+ cornerRadius?: number | undefined;
1453
+ author?: string | undefined;
1454
+ contents?: string | undefined;
1455
+ inReplyTo?: string | undefined;
1456
+ subject?: string | undefined;
1457
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1458
+ custom?: Record<string, unknown> | undefined;
1459
+ } | {
1460
+ rect: {
1461
+ x: number;
1462
+ y: number;
1463
+ width: number;
1464
+ height: number;
1465
+ };
1466
+ color: string;
1467
+ opacity: number;
1468
+ createdAt: string;
1469
+ modifiedAt: string;
1470
+ source: "session" | "pdf";
1471
+ width: number;
1472
+ id: string;
1473
+ page: number;
1474
+ type: "circle";
1475
+ cornerRadius?: undefined;
1476
+ locked?: boolean | undefined;
1477
+ dashes?: number[] | undefined;
1478
+ interiorColor?: string | undefined;
1479
+ author?: string | undefined;
1480
+ contents?: string | undefined;
1481
+ inReplyTo?: string | undefined;
1482
+ subject?: string | undefined;
1483
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1484
+ custom?: Record<string, unknown> | undefined;
1485
+ } | {
1486
+ start: {
1487
+ x: number;
1488
+ y: number;
1489
+ };
1490
+ end: {
1491
+ x: number;
1492
+ y: number;
1493
+ };
1494
+ rect: {
1495
+ x: number;
1496
+ y: number;
1497
+ width: number;
1498
+ height: number;
1499
+ };
1500
+ color: string;
1501
+ opacity: number;
1502
+ createdAt: string;
1503
+ modifiedAt: string;
1504
+ source: "session" | "pdf";
1505
+ width: number;
1506
+ id: string;
1507
+ page: number;
1508
+ type: "line";
1509
+ locked?: boolean | undefined;
1510
+ dashes?: number[] | undefined;
1511
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1512
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1513
+ author?: string | undefined;
1514
+ contents?: string | undefined;
1515
+ inReplyTo?: string | undefined;
1516
+ subject?: string | undefined;
1517
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1518
+ custom?: Record<string, unknown> | undefined;
1519
+ } | {
1520
+ vertices: {
1521
+ x: number;
1522
+ y: number;
1523
+ }[];
1524
+ rect: {
1525
+ x: number;
1526
+ y: number;
1527
+ width: number;
1528
+ height: number;
1529
+ };
1530
+ color: string;
1531
+ opacity: number;
1532
+ createdAt: string;
1533
+ modifiedAt: string;
1534
+ source: "session" | "pdf";
1535
+ width: number;
1536
+ id: string;
1537
+ page: number;
1538
+ type: "polyline";
1539
+ locked?: boolean | undefined;
1540
+ dashes?: number[] | undefined;
1541
+ interiorColor?: string | undefined;
1542
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1543
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1544
+ author?: string | undefined;
1545
+ contents?: string | undefined;
1546
+ inReplyTo?: string | undefined;
1547
+ subject?: string | undefined;
1548
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1549
+ custom?: Record<string, unknown> | undefined;
1550
+ } | {
1551
+ vertices: {
1552
+ x: number;
1553
+ y: number;
1554
+ }[];
1555
+ rect: {
1556
+ x: number;
1557
+ y: number;
1558
+ width: number;
1559
+ height: number;
1560
+ };
1561
+ color: string;
1562
+ opacity: number;
1563
+ createdAt: string;
1564
+ modifiedAt: string;
1565
+ source: "session" | "pdf";
1566
+ width: number;
1567
+ id: string;
1568
+ page: number;
1569
+ type: "polygon";
1570
+ head?: undefined;
1571
+ tail?: undefined;
1572
+ locked?: boolean | undefined;
1573
+ dashes?: number[] | undefined;
1574
+ interiorColor?: string | undefined;
1575
+ author?: string | undefined;
1576
+ contents?: string | undefined;
1577
+ inReplyTo?: string | undefined;
1578
+ subject?: string | undefined;
1579
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1580
+ custom?: Record<string, unknown> | undefined;
1581
+ } | {
1582
+ inklist: {
1583
+ x: number;
1584
+ y: number;
1585
+ }[][];
1586
+ rect: {
1587
+ x: number;
1588
+ y: number;
1589
+ width: number;
1590
+ height: number;
1591
+ };
1592
+ color: string;
1593
+ opacity: number;
1594
+ createdAt: string;
1595
+ modifiedAt: string;
1596
+ source: "session" | "pdf";
1597
+ width: number;
1598
+ id: string;
1599
+ page: number;
1600
+ type: "ink";
1601
+ pressure?: number[][] | undefined;
1602
+ locked?: boolean | undefined;
1603
+ dashes?: number[] | undefined;
1604
+ author?: string | undefined;
1605
+ contents?: string | undefined;
1606
+ inReplyTo?: string | undefined;
1607
+ subject?: string | undefined;
1608
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1609
+ custom?: Record<string, unknown> | undefined;
1610
+ } | {
1611
+ rect: {
1612
+ x: number;
1613
+ y: number;
1614
+ width: number;
1615
+ height: number;
1616
+ };
1617
+ color: string;
1618
+ opacity: number;
1619
+ createdAt: string;
1620
+ modifiedAt: string;
1621
+ source: "session" | "pdf";
1622
+ imagedata: string;
1623
+ id: string;
1624
+ page: number;
1625
+ type: "stamp";
1626
+ locked?: boolean | undefined;
1627
+ rotation?: 0 | 90 | 180 | 270 | undefined;
1628
+ author?: string | undefined;
1629
+ contents?: string | undefined;
1630
+ inReplyTo?: string | undefined;
1631
+ subject?: string | undefined;
1632
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1633
+ custom?: Record<string, unknown> | undefined;
1634
+ } | {
1635
+ rect: {
1636
+ x: number;
1637
+ y: number;
1638
+ width: number;
1639
+ height: number;
1640
+ };
1641
+ color: string;
1642
+ opacity: number;
1643
+ createdAt: string;
1644
+ modifiedAt: string;
1645
+ source: "session" | "pdf";
1646
+ magnification: number;
1647
+ width: number;
1648
+ id: string;
1649
+ page: number;
1650
+ type: "loupe";
1651
+ locked?: boolean | undefined;
1652
+ author?: string | undefined;
1653
+ contents?: string | undefined;
1654
+ inReplyTo?: string | undefined;
1655
+ subject?: string | undefined;
1656
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1657
+ custom?: Record<string, unknown> | undefined;
1658
+ } | {
1659
+ rect: {
1660
+ x: number;
1661
+ y: number;
1662
+ width: number;
1663
+ height: number;
1664
+ };
1665
+ color: string;
1666
+ opacity: number;
1667
+ createdAt: string;
1668
+ modifiedAt: string;
1669
+ source: "session" | "pdf";
1670
+ shape: "rect" | "ellipse";
1671
+ dim: number;
1672
+ id: string;
1673
+ page: number;
1674
+ type: "mask";
1675
+ locked?: boolean | undefined;
1676
+ author?: string | undefined;
1677
+ contents?: string | undefined;
1678
+ inReplyTo?: string | undefined;
1679
+ subject?: string | undefined;
1680
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1681
+ custom?: Record<string, unknown> | undefined;
1682
+ } | {
1683
+ interiorColor: string;
1684
+ rect: {
1685
+ x: number;
1686
+ y: number;
1687
+ width: number;
1688
+ height: number;
1689
+ };
1690
+ color: string;
1691
+ opacity: number;
1692
+ createdAt: string;
1693
+ modifiedAt: string;
1694
+ source: "session" | "pdf";
1695
+ id: string;
1696
+ page: number;
1697
+ type: "redact";
1698
+ quads?: {
1699
+ p1: {
1700
+ x: number;
1701
+ y: number;
1702
+ };
1703
+ p2: {
1704
+ x: number;
1705
+ y: number;
1706
+ };
1707
+ p3: {
1708
+ x: number;
1709
+ y: number;
1710
+ };
1711
+ p4: {
1712
+ x: number;
1713
+ y: number;
1714
+ };
1715
+ }[] | undefined;
1716
+ locked?: boolean | undefined;
1717
+ overlayText?: string | undefined;
1718
+ author?: string | undefined;
1719
+ contents?: string | undefined;
1720
+ inReplyTo?: string | undefined;
1721
+ subject?: string | undefined;
1722
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1723
+ custom?: Record<string, unknown> | undefined;
1724
+ })[];
1725
+ byPage: (page: number) => ({
1726
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
1727
+ quads: {
1728
+ p1: {
1729
+ x: number;
1730
+ y: number;
1731
+ };
1732
+ p2: {
1733
+ x: number;
1734
+ y: number;
1735
+ };
1736
+ p3: {
1737
+ x: number;
1738
+ y: number;
1739
+ };
1740
+ p4: {
1741
+ x: number;
1742
+ y: number;
1743
+ };
1744
+ }[];
1745
+ rect: {
1746
+ x: number;
1747
+ y: number;
1748
+ width: number;
1749
+ height: number;
1750
+ };
1751
+ color: string;
1752
+ opacity: number;
1753
+ createdAt: string;
1754
+ modifiedAt: string;
1755
+ source: "session" | "pdf";
1756
+ id: string;
1757
+ page: number;
1758
+ locked?: boolean | undefined;
1759
+ author?: string | undefined;
1760
+ contents?: string | undefined;
1761
+ inReplyTo?: string | undefined;
1762
+ subject?: string | undefined;
1763
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1764
+ custom?: Record<string, unknown> | undefined;
1765
+ } | {
1766
+ rect: {
1767
+ x: number;
1768
+ y: number;
1769
+ width: number;
1770
+ height: number;
1771
+ };
1772
+ color: string;
1773
+ opacity: number;
1774
+ createdAt: string;
1775
+ modifiedAt: string;
1776
+ source: "session" | "pdf";
1777
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
1778
+ id: string;
1779
+ page: number;
1780
+ type: "text";
1781
+ locked?: boolean | undefined;
1782
+ author?: string | undefined;
1309
1783
  contents?: string | undefined;
1310
1784
  inReplyTo?: string | undefined;
1785
+ subject?: string | undefined;
1786
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1787
+ custom?: Record<string, unknown> | undefined;
1788
+ } | {
1789
+ defaultStyle: {
1790
+ color: string;
1791
+ fontFamily: string;
1792
+ fontSize: number;
1793
+ textAlign: "left" | "right" | "center" | "justify";
1794
+ align?: undefined;
1795
+ fontWeight?: "bold" | undefined;
1796
+ fontStyle?: "italic" | undefined;
1797
+ textDecoration?: "underline" | undefined;
1798
+ };
1799
+ rect: {
1800
+ x: number;
1801
+ y: number;
1802
+ width: number;
1803
+ height: number;
1804
+ };
1805
+ opacity: number;
1806
+ createdAt: string;
1807
+ modifiedAt: string;
1808
+ source: "session" | "pdf";
1809
+ contents: string;
1810
+ width: number;
1811
+ id: string;
1812
+ page: number;
1813
+ type: "freetext";
1814
+ color?: string | undefined;
1815
+ borderColor?: string | undefined;
1816
+ fringe?: {
1817
+ left: number;
1818
+ top: number;
1819
+ right: number;
1820
+ bottom: number;
1821
+ } | undefined;
1822
+ callout?: {
1823
+ x: number;
1824
+ y: number;
1825
+ }[] | undefined;
1826
+ fontFamily?: undefined;
1827
+ fontSize?: undefined;
1828
+ align?: undefined;
1311
1829
  locked?: boolean | undefined;
1830
+ dashes?: number[] | undefined;
1831
+ cornerRadius?: number | undefined;
1832
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1833
+ author?: string | undefined;
1834
+ inReplyTo?: string | undefined;
1835
+ subject?: string | undefined;
1836
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1312
1837
  custom?: Record<string, unknown> | undefined;
1313
1838
  } | {
1839
+ rect: {
1840
+ x: number;
1841
+ y: number;
1842
+ width: number;
1843
+ height: number;
1844
+ };
1845
+ color: string;
1846
+ opacity: number;
1847
+ createdAt: string;
1848
+ modifiedAt: string;
1849
+ source: "session" | "pdf";
1850
+ width: number;
1314
1851
  id: string;
1315
1852
  page: number;
1853
+ type: "square";
1854
+ locked?: boolean | undefined;
1855
+ dashes?: number[] | undefined;
1856
+ interiorColor?: string | undefined;
1857
+ cornerRadius?: number | undefined;
1858
+ author?: string | undefined;
1859
+ contents?: string | undefined;
1860
+ inReplyTo?: string | undefined;
1861
+ subject?: string | undefined;
1862
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1863
+ custom?: Record<string, unknown> | undefined;
1864
+ } | {
1316
1865
  rect: {
1317
1866
  x: number;
1318
1867
  y: number;
@@ -1324,16 +1873,90 @@ export declare function useAnnotations(): {
1324
1873
  createdAt: string;
1325
1874
  modifiedAt: string;
1326
1875
  source: "session" | "pdf";
1327
- type: "text";
1328
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
1876
+ width: number;
1877
+ id: string;
1878
+ page: number;
1879
+ type: "circle";
1880
+ cornerRadius?: undefined;
1881
+ locked?: boolean | undefined;
1882
+ dashes?: number[] | undefined;
1883
+ interiorColor?: string | undefined;
1329
1884
  author?: string | undefined;
1330
1885
  contents?: string | undefined;
1331
1886
  inReplyTo?: string | undefined;
1887
+ subject?: string | undefined;
1888
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1889
+ custom?: Record<string, unknown> | undefined;
1890
+ } | {
1891
+ start: {
1892
+ x: number;
1893
+ y: number;
1894
+ };
1895
+ end: {
1896
+ x: number;
1897
+ y: number;
1898
+ };
1899
+ rect: {
1900
+ x: number;
1901
+ y: number;
1902
+ width: number;
1903
+ height: number;
1904
+ };
1905
+ color: string;
1906
+ opacity: number;
1907
+ createdAt: string;
1908
+ modifiedAt: string;
1909
+ source: "session" | "pdf";
1910
+ width: number;
1911
+ id: string;
1912
+ page: number;
1913
+ type: "line";
1332
1914
  locked?: boolean | undefined;
1915
+ dashes?: number[] | undefined;
1916
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1917
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1918
+ author?: string | undefined;
1919
+ contents?: string | undefined;
1920
+ inReplyTo?: string | undefined;
1921
+ subject?: string | undefined;
1922
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1333
1923
  custom?: Record<string, unknown> | undefined;
1334
1924
  } | {
1925
+ vertices: {
1926
+ x: number;
1927
+ y: number;
1928
+ }[];
1929
+ rect: {
1930
+ x: number;
1931
+ y: number;
1932
+ width: number;
1933
+ height: number;
1934
+ };
1935
+ color: string;
1936
+ opacity: number;
1937
+ createdAt: string;
1938
+ modifiedAt: string;
1939
+ source: "session" | "pdf";
1940
+ width: number;
1335
1941
  id: string;
1336
1942
  page: number;
1943
+ type: "polyline";
1944
+ locked?: boolean | undefined;
1945
+ dashes?: number[] | undefined;
1946
+ interiorColor?: string | undefined;
1947
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1948
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1949
+ author?: string | undefined;
1950
+ contents?: string | undefined;
1951
+ inReplyTo?: string | undefined;
1952
+ subject?: string | undefined;
1953
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1954
+ custom?: Record<string, unknown> | undefined;
1955
+ } | {
1956
+ vertices: {
1957
+ x: number;
1958
+ y: number;
1959
+ }[];
1337
1960
  rect: {
1338
1961
  x: number;
1339
1962
  y: number;
@@ -1345,22 +1968,186 @@ export declare function useAnnotations(): {
1345
1968
  createdAt: string;
1346
1969
  modifiedAt: string;
1347
1970
  source: "session" | "pdf";
1348
- type: "freetext";
1349
- contents: string;
1350
- fontSize: number;
1351
- fontFamily: string;
1352
- align: "left" | "center" | "right";
1971
+ width: number;
1972
+ id: string;
1973
+ page: number;
1974
+ type: "polygon";
1975
+ head?: undefined;
1976
+ tail?: undefined;
1977
+ locked?: boolean | undefined;
1978
+ dashes?: number[] | undefined;
1979
+ interiorColor?: string | undefined;
1980
+ author?: string | undefined;
1981
+ contents?: string | undefined;
1982
+ inReplyTo?: string | undefined;
1983
+ subject?: string | undefined;
1984
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1985
+ custom?: Record<string, unknown> | undefined;
1986
+ } | {
1987
+ inklist: {
1988
+ x: number;
1989
+ y: number;
1990
+ }[][];
1991
+ rect: {
1992
+ x: number;
1993
+ y: number;
1994
+ width: number;
1995
+ height: number;
1996
+ };
1997
+ color: string;
1998
+ opacity: number;
1999
+ createdAt: string;
2000
+ modifiedAt: string;
2001
+ source: "session" | "pdf";
2002
+ width: number;
2003
+ id: string;
2004
+ page: number;
2005
+ type: "ink";
2006
+ pressure?: number[][] | undefined;
2007
+ locked?: boolean | undefined;
2008
+ dashes?: number[] | undefined;
1353
2009
  author?: string | undefined;
2010
+ contents?: string | undefined;
1354
2011
  inReplyTo?: string | undefined;
2012
+ subject?: string | undefined;
2013
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
2014
+ custom?: Record<string, unknown> | undefined;
2015
+ } | {
2016
+ rect: {
2017
+ x: number;
2018
+ y: number;
2019
+ width: number;
2020
+ height: number;
2021
+ };
2022
+ color: string;
2023
+ opacity: number;
2024
+ createdAt: string;
2025
+ modifiedAt: string;
2026
+ source: "session" | "pdf";
2027
+ imagedata: string;
2028
+ id: string;
2029
+ page: number;
2030
+ type: "stamp";
1355
2031
  locked?: boolean | undefined;
2032
+ rotation?: 0 | 90 | 180 | 270 | undefined;
2033
+ author?: string | undefined;
2034
+ contents?: string | undefined;
2035
+ inReplyTo?: string | undefined;
2036
+ subject?: string | undefined;
2037
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1356
2038
  custom?: Record<string, unknown> | undefined;
1357
- callout?: {
2039
+ } | {
2040
+ rect: {
1358
2041
  x: number;
1359
2042
  y: number;
1360
- }[] | undefined;
2043
+ width: number;
2044
+ height: number;
2045
+ };
2046
+ color: string;
2047
+ opacity: number;
2048
+ createdAt: string;
2049
+ modifiedAt: string;
2050
+ source: "session" | "pdf";
2051
+ magnification: number;
2052
+ width: number;
2053
+ id: string;
2054
+ page: number;
2055
+ type: "loupe";
2056
+ locked?: boolean | undefined;
2057
+ author?: string | undefined;
2058
+ contents?: string | undefined;
2059
+ inReplyTo?: string | undefined;
2060
+ subject?: string | undefined;
2061
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
2062
+ custom?: Record<string, unknown> | undefined;
2063
+ } | {
2064
+ rect: {
2065
+ x: number;
2066
+ y: number;
2067
+ width: number;
2068
+ height: number;
2069
+ };
2070
+ color: string;
2071
+ opacity: number;
2072
+ createdAt: string;
2073
+ modifiedAt: string;
2074
+ source: "session" | "pdf";
2075
+ shape: "rect" | "ellipse";
2076
+ dim: number;
2077
+ id: string;
2078
+ page: number;
2079
+ type: "mask";
2080
+ locked?: boolean | undefined;
2081
+ author?: string | undefined;
2082
+ contents?: string | undefined;
2083
+ inReplyTo?: string | undefined;
2084
+ subject?: string | undefined;
2085
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
2086
+ custom?: Record<string, unknown> | undefined;
1361
2087
  } | {
2088
+ interiorColor: string;
2089
+ rect: {
2090
+ x: number;
2091
+ y: number;
2092
+ width: number;
2093
+ height: number;
2094
+ };
2095
+ color: string;
2096
+ opacity: number;
2097
+ createdAt: string;
2098
+ modifiedAt: string;
2099
+ source: "session" | "pdf";
1362
2100
  id: string;
1363
2101
  page: number;
2102
+ type: "redact";
2103
+ quads?: {
2104
+ p1: {
2105
+ x: number;
2106
+ y: number;
2107
+ };
2108
+ p2: {
2109
+ x: number;
2110
+ y: number;
2111
+ };
2112
+ p3: {
2113
+ x: number;
2114
+ y: number;
2115
+ };
2116
+ p4: {
2117
+ x: number;
2118
+ y: number;
2119
+ };
2120
+ }[] | undefined;
2121
+ locked?: boolean | undefined;
2122
+ overlayText?: string | undefined;
2123
+ author?: string | undefined;
2124
+ contents?: string | undefined;
2125
+ inReplyTo?: string | undefined;
2126
+ subject?: string | undefined;
2127
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
2128
+ custom?: Record<string, unknown> | undefined;
2129
+ })[];
2130
+ /** Replies in creation order for a note id. */
2131
+ replies: (id: string) => ({
2132
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
2133
+ quads: {
2134
+ p1: {
2135
+ x: number;
2136
+ y: number;
2137
+ };
2138
+ p2: {
2139
+ x: number;
2140
+ y: number;
2141
+ };
2142
+ p3: {
2143
+ x: number;
2144
+ y: number;
2145
+ };
2146
+ p4: {
2147
+ x: number;
2148
+ y: number;
2149
+ };
2150
+ }[];
1364
2151
  rect: {
1365
2152
  x: number;
1366
2153
  y: number;
@@ -1372,17 +2159,16 @@ export declare function useAnnotations(): {
1372
2159
  createdAt: string;
1373
2160
  modifiedAt: string;
1374
2161
  source: "session" | "pdf";
1375
- type: "square" | "circle";
1376
- width: number;
2162
+ id: string;
2163
+ page: number;
2164
+ locked?: boolean | undefined;
1377
2165
  author?: string | undefined;
1378
2166
  contents?: string | undefined;
1379
2167
  inReplyTo?: string | undefined;
1380
- locked?: boolean | undefined;
2168
+ subject?: string | undefined;
2169
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1381
2170
  custom?: Record<string, unknown> | undefined;
1382
- interiorColor?: string | undefined;
1383
2171
  } | {
1384
- id: string;
1385
- page: number;
1386
2172
  rect: {
1387
2173
  x: number;
1388
2174
  y: number;
@@ -1394,52 +2180,68 @@ export declare function useAnnotations(): {
1394
2180
  createdAt: string;
1395
2181
  modifiedAt: string;
1396
2182
  source: "session" | "pdf";
1397
- type: "line";
1398
- start: {
1399
- x: number;
1400
- y: number;
1401
- };
1402
- end: {
1403
- x: number;
1404
- y: number;
1405
- };
1406
- width: number;
2183
+ icon: (string & {}) | "Comment" | "Note" | "Help" | "Insert" | "Key" | "NewParagraph" | "Paragraph";
2184
+ id: string;
2185
+ page: number;
2186
+ type: "text";
2187
+ locked?: boolean | undefined;
1407
2188
  author?: string | undefined;
1408
2189
  contents?: string | undefined;
1409
2190
  inReplyTo?: string | undefined;
1410
- locked?: boolean | undefined;
2191
+ subject?: string | undefined;
2192
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1411
2193
  custom?: Record<string, unknown> | undefined;
1412
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1413
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1414
2194
  } | {
1415
- id: string;
1416
- page: number;
2195
+ defaultStyle: {
2196
+ color: string;
2197
+ fontFamily: string;
2198
+ fontSize: number;
2199
+ textAlign: "left" | "right" | "center" | "justify";
2200
+ align?: undefined;
2201
+ fontWeight?: "bold" | undefined;
2202
+ fontStyle?: "italic" | undefined;
2203
+ textDecoration?: "underline" | undefined;
2204
+ };
1417
2205
  rect: {
1418
2206
  x: number;
1419
2207
  y: number;
1420
2208
  width: number;
1421
2209
  height: number;
1422
2210
  };
1423
- color: string;
1424
2211
  opacity: number;
1425
2212
  createdAt: string;
1426
2213
  modifiedAt: string;
1427
2214
  source: "session" | "pdf";
1428
- type: "polyline" | "polygon";
1429
- vertices: {
2215
+ contents: string;
2216
+ width: number;
2217
+ id: string;
2218
+ page: number;
2219
+ type: "freetext";
2220
+ color?: string | undefined;
2221
+ borderColor?: string | undefined;
2222
+ fringe?: {
2223
+ left: number;
2224
+ top: number;
2225
+ right: number;
2226
+ bottom: number;
2227
+ } | undefined;
2228
+ callout?: {
1430
2229
  x: number;
1431
2230
  y: number;
1432
- }[];
1433
- width: number;
2231
+ }[] | undefined;
2232
+ fontFamily?: undefined;
2233
+ fontSize?: undefined;
2234
+ align?: undefined;
2235
+ locked?: boolean | undefined;
2236
+ dashes?: number[] | undefined;
2237
+ cornerRadius?: number | undefined;
2238
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1434
2239
  author?: string | undefined;
1435
- contents?: string | undefined;
1436
2240
  inReplyTo?: string | undefined;
1437
- locked?: boolean | undefined;
2241
+ subject?: string | undefined;
2242
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1438
2243
  custom?: Record<string, unknown> | undefined;
1439
- interiorColor?: string | undefined;
1440
2244
  } | {
1441
- id: string;
1442
- page: number;
1443
2245
  rect: {
1444
2246
  x: number;
1445
2247
  y: number;
@@ -1451,20 +2253,21 @@ export declare function useAnnotations(): {
1451
2253
  createdAt: string;
1452
2254
  modifiedAt: string;
1453
2255
  source: "session" | "pdf";
1454
- type: "ink";
1455
- inklist: {
1456
- x: number;
1457
- y: number;
1458
- }[][];
1459
2256
  width: number;
2257
+ id: string;
2258
+ page: number;
2259
+ type: "square";
2260
+ locked?: boolean | undefined;
2261
+ dashes?: number[] | undefined;
2262
+ interiorColor?: string | undefined;
2263
+ cornerRadius?: number | undefined;
1460
2264
  author?: string | undefined;
1461
2265
  contents?: string | undefined;
1462
2266
  inReplyTo?: string | undefined;
1463
- locked?: boolean | undefined;
2267
+ subject?: string | undefined;
2268
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1464
2269
  custom?: Record<string, unknown> | undefined;
1465
2270
  } | {
1466
- id: string;
1467
- page: number;
1468
2271
  rect: {
1469
2272
  x: number;
1470
2273
  y: number;
@@ -1476,45 +2279,29 @@ export declare function useAnnotations(): {
1476
2279
  createdAt: string;
1477
2280
  modifiedAt: string;
1478
2281
  source: "session" | "pdf";
1479
- type: "redact";
1480
- origin: "user" | "suggested";
1481
- interiorColor: string;
2282
+ width: number;
2283
+ id: string;
2284
+ page: number;
2285
+ type: "circle";
2286
+ cornerRadius?: undefined;
2287
+ locked?: boolean | undefined;
2288
+ dashes?: number[] | undefined;
2289
+ interiorColor?: string | undefined;
1482
2290
  author?: string | undefined;
1483
2291
  contents?: string | undefined;
1484
2292
  inReplyTo?: string | undefined;
1485
- locked?: boolean | undefined;
2293
+ subject?: string | undefined;
2294
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1486
2295
  custom?: Record<string, unknown> | undefined;
1487
- quads?: {
1488
- p1: {
1489
- x: number;
1490
- y: number;
1491
- };
1492
- p2: {
1493
- x: number;
1494
- y: number;
1495
- };
1496
- p3: {
1497
- x: number;
1498
- y: number;
1499
- };
1500
- p4: {
1501
- x: number;
1502
- y: number;
1503
- };
1504
- }[] | undefined;
1505
- suggestion?: {
1506
- confidence: number;
1507
- jobId?: string | undefined;
1508
- reason?: string | undefined;
1509
- explanation?: string | undefined;
1510
- recommendation?: "redact" | "review" | "keep" | undefined;
1511
- } | undefined;
1512
- overlayText?: string | undefined;
1513
- })[];
1514
- /** Replies in creation order for a note id. */
1515
- replies: (id: string) => ({
1516
- id: string;
1517
- page: number;
2296
+ } | {
2297
+ start: {
2298
+ x: number;
2299
+ y: number;
2300
+ };
2301
+ end: {
2302
+ x: number;
2303
+ y: number;
2304
+ };
1518
2305
  rect: {
1519
2306
  x: number;
1520
2307
  y: number;
@@ -1526,33 +2313,25 @@ export declare function useAnnotations(): {
1526
2313
  createdAt: string;
1527
2314
  modifiedAt: string;
1528
2315
  source: "session" | "pdf";
1529
- type: "highlight" | "underline" | "strikeout" | "squiggly";
1530
- quads: {
1531
- p1: {
1532
- x: number;
1533
- y: number;
1534
- };
1535
- p2: {
1536
- x: number;
1537
- y: number;
1538
- };
1539
- p3: {
1540
- x: number;
1541
- y: number;
1542
- };
1543
- p4: {
1544
- x: number;
1545
- y: number;
1546
- };
1547
- }[];
2316
+ width: number;
2317
+ id: string;
2318
+ page: number;
2319
+ type: "line";
2320
+ locked?: boolean | undefined;
2321
+ dashes?: number[] | undefined;
2322
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
2323
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1548
2324
  author?: string | undefined;
1549
2325
  contents?: string | undefined;
1550
2326
  inReplyTo?: string | undefined;
1551
- locked?: boolean | undefined;
2327
+ subject?: string | undefined;
2328
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1552
2329
  custom?: Record<string, unknown> | undefined;
1553
2330
  } | {
1554
- id: string;
1555
- page: number;
2331
+ vertices: {
2332
+ x: number;
2333
+ y: number;
2334
+ }[];
1556
2335
  rect: {
1557
2336
  x: number;
1558
2337
  y: number;
@@ -1564,16 +2343,26 @@ export declare function useAnnotations(): {
1564
2343
  createdAt: string;
1565
2344
  modifiedAt: string;
1566
2345
  source: "session" | "pdf";
1567
- type: "text";
1568
- icon: "comment" | "note" | "help" | "insert" | "key" | "paragraph";
2346
+ width: number;
2347
+ id: string;
2348
+ page: number;
2349
+ type: "polyline";
2350
+ locked?: boolean | undefined;
2351
+ dashes?: number[] | undefined;
2352
+ interiorColor?: string | undefined;
2353
+ head?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
2354
+ tail?: (string & {}) | "None" | "Square" | "Circle" | "Diamond" | "OpenArrow" | "ClosedArrow" | "Butt" | "ROpenArrow" | "RClosedArrow" | "Slash" | undefined;
1569
2355
  author?: string | undefined;
1570
2356
  contents?: string | undefined;
1571
2357
  inReplyTo?: string | undefined;
1572
- locked?: boolean | undefined;
2358
+ subject?: string | undefined;
2359
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1573
2360
  custom?: Record<string, unknown> | undefined;
1574
2361
  } | {
1575
- id: string;
1576
- page: number;
2362
+ vertices: {
2363
+ x: number;
2364
+ y: number;
2365
+ }[];
1577
2366
  rect: {
1578
2367
  x: number;
1579
2368
  y: number;
@@ -1585,22 +2374,26 @@ export declare function useAnnotations(): {
1585
2374
  createdAt: string;
1586
2375
  modifiedAt: string;
1587
2376
  source: "session" | "pdf";
1588
- type: "freetext";
1589
- contents: string;
1590
- fontSize: number;
1591
- fontFamily: string;
1592
- align: "left" | "center" | "right";
2377
+ width: number;
2378
+ id: string;
2379
+ page: number;
2380
+ type: "polygon";
2381
+ head?: undefined;
2382
+ tail?: undefined;
2383
+ locked?: boolean | undefined;
2384
+ dashes?: number[] | undefined;
2385
+ interiorColor?: string | undefined;
1593
2386
  author?: string | undefined;
2387
+ contents?: string | undefined;
1594
2388
  inReplyTo?: string | undefined;
1595
- locked?: boolean | undefined;
2389
+ subject?: string | undefined;
2390
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1596
2391
  custom?: Record<string, unknown> | undefined;
1597
- callout?: {
2392
+ } | {
2393
+ inklist: {
1598
2394
  x: number;
1599
2395
  y: number;
1600
- }[] | undefined;
1601
- } | {
1602
- id: string;
1603
- page: number;
2396
+ }[][];
1604
2397
  rect: {
1605
2398
  x: number;
1606
2399
  y: number;
@@ -1612,17 +2405,20 @@ export declare function useAnnotations(): {
1612
2405
  createdAt: string;
1613
2406
  modifiedAt: string;
1614
2407
  source: "session" | "pdf";
1615
- type: "square" | "circle";
1616
2408
  width: number;
2409
+ id: string;
2410
+ page: number;
2411
+ type: "ink";
2412
+ pressure?: number[][] | undefined;
2413
+ locked?: boolean | undefined;
2414
+ dashes?: number[] | undefined;
1617
2415
  author?: string | undefined;
1618
2416
  contents?: string | undefined;
1619
2417
  inReplyTo?: string | undefined;
1620
- locked?: boolean | undefined;
2418
+ subject?: string | undefined;
2419
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1621
2420
  custom?: Record<string, unknown> | undefined;
1622
- interiorColor?: string | undefined;
1623
2421
  } | {
1624
- id: string;
1625
- page: number;
1626
2422
  rect: {
1627
2423
  x: number;
1628
2424
  y: number;
@@ -1634,26 +2430,19 @@ export declare function useAnnotations(): {
1634
2430
  createdAt: string;
1635
2431
  modifiedAt: string;
1636
2432
  source: "session" | "pdf";
1637
- type: "line";
1638
- start: {
1639
- x: number;
1640
- y: number;
1641
- };
1642
- end: {
1643
- x: number;
1644
- y: number;
1645
- };
1646
- width: number;
2433
+ imagedata: string;
2434
+ id: string;
2435
+ page: number;
2436
+ type: "stamp";
2437
+ locked?: boolean | undefined;
2438
+ rotation?: 0 | 90 | 180 | 270 | undefined;
1647
2439
  author?: string | undefined;
1648
2440
  contents?: string | undefined;
1649
2441
  inReplyTo?: string | undefined;
1650
- locked?: boolean | undefined;
2442
+ subject?: string | undefined;
2443
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1651
2444
  custom?: Record<string, unknown> | undefined;
1652
- head?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1653
- tail?: "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash" | undefined;
1654
2445
  } | {
1655
- id: string;
1656
- page: number;
1657
2446
  rect: {
1658
2447
  x: number;
1659
2448
  y: number;
@@ -1665,21 +2454,19 @@ export declare function useAnnotations(): {
1665
2454
  createdAt: string;
1666
2455
  modifiedAt: string;
1667
2456
  source: "session" | "pdf";
1668
- type: "polyline" | "polygon";
1669
- vertices: {
1670
- x: number;
1671
- y: number;
1672
- }[];
2457
+ magnification: number;
1673
2458
  width: number;
2459
+ id: string;
2460
+ page: number;
2461
+ type: "loupe";
2462
+ locked?: boolean | undefined;
1674
2463
  author?: string | undefined;
1675
2464
  contents?: string | undefined;
1676
2465
  inReplyTo?: string | undefined;
1677
- locked?: boolean | undefined;
2466
+ subject?: string | undefined;
2467
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1678
2468
  custom?: Record<string, unknown> | undefined;
1679
- interiorColor?: string | undefined;
1680
2469
  } | {
1681
- id: string;
1682
- page: number;
1683
2470
  rect: {
1684
2471
  x: number;
1685
2472
  y: number;
@@ -1691,20 +2478,20 @@ export declare function useAnnotations(): {
1691
2478
  createdAt: string;
1692
2479
  modifiedAt: string;
1693
2480
  source: "session" | "pdf";
1694
- type: "ink";
1695
- inklist: {
1696
- x: number;
1697
- y: number;
1698
- }[][];
1699
- width: number;
2481
+ shape: "rect" | "ellipse";
2482
+ dim: number;
2483
+ id: string;
2484
+ page: number;
2485
+ type: "mask";
2486
+ locked?: boolean | undefined;
1700
2487
  author?: string | undefined;
1701
2488
  contents?: string | undefined;
1702
2489
  inReplyTo?: string | undefined;
1703
- locked?: boolean | undefined;
2490
+ subject?: string | undefined;
2491
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
1704
2492
  custom?: Record<string, unknown> | undefined;
1705
2493
  } | {
1706
- id: string;
1707
- page: number;
2494
+ interiorColor: string;
1708
2495
  rect: {
1709
2496
  x: number;
1710
2497
  y: number;
@@ -1716,14 +2503,9 @@ export declare function useAnnotations(): {
1716
2503
  createdAt: string;
1717
2504
  modifiedAt: string;
1718
2505
  source: "session" | "pdf";
2506
+ id: string;
2507
+ page: number;
1719
2508
  type: "redact";
1720
- origin: "user" | "suggested";
1721
- interiorColor: string;
1722
- author?: string | undefined;
1723
- contents?: string | undefined;
1724
- inReplyTo?: string | undefined;
1725
- locked?: boolean | undefined;
1726
- custom?: Record<string, unknown> | undefined;
1727
2509
  quads?: {
1728
2510
  p1: {
1729
2511
  x: number;
@@ -1742,14 +2524,14 @@ export declare function useAnnotations(): {
1742
2524
  y: number;
1743
2525
  };
1744
2526
  }[] | undefined;
1745
- suggestion?: {
1746
- confidence: number;
1747
- jobId?: string | undefined;
1748
- reason?: string | undefined;
1749
- explanation?: string | undefined;
1750
- recommendation?: "redact" | "review" | "keep" | undefined;
1751
- } | undefined;
2527
+ locked?: boolean | undefined;
1752
2528
  overlayText?: string | undefined;
2529
+ author?: string | undefined;
2530
+ contents?: string | undefined;
2531
+ inReplyTo?: string | undefined;
2532
+ subject?: string | undefined;
2533
+ intent?: "FreeText" | "FreeTextCallout" | "FreeTextTypeWriter" | "LineArrow" | "LineDimension" | "PolygonCloud" | "PolygonDimension" | "PolyLineDimension" | (string & {}) | undefined;
2534
+ custom?: Record<string, unknown> | undefined;
1753
2535
  })[];
1754
2536
  };
1755
2537
  //#endregion
@@ -1759,6 +2541,43 @@ export declare function useTool(): {
1759
2541
  setTool: (id: import("@inkbar/core/dom").ToolId) => void;
1760
2542
  };
1761
2543
  //#endregion
2544
+ //#region src/hooks/useToolStyle.d.ts
2545
+ interface ToolStyleView {
2546
+ current: CurrentStyle;
2547
+ supported: ReadonlySet<StyleKey>;
2548
+ /** A group's own style. */
2549
+ get: (group: StyleGroup) => Readonly<StyleProps>;
2550
+ }
2551
+ /** The tool style for the active tool or the selection. */
2552
+ interface ToolStyleHandle extends ToolStyleView {
2553
+ set: (patch: StyleProps, opts?: {
2554
+ group?: StyleGroup;
2555
+ apply?: boolean;
2556
+ }) => void;
2557
+ }
2558
+ /** The tool style scoped to one group: `set` writes that group, so it takes no options. */
2559
+ interface ScopedToolStyleHandle extends ToolStyleView {
2560
+ set: (patch: StyleProps) => void;
2561
+ }
2562
+ /**
2563
+ * The tool style the style controls read and write: `current` shows the selection's values
2564
+ * (`'mixed'` where they differ), else the active tool's group; `supported` names the props
2565
+ * the active tool or the selection has. `set` updates the group and the selected annotations.
2566
+ *
2567
+ * With `group`, the style as a control for that group sees it, whatever tool is active: the
2568
+ * selection's when it is all in the group, else the group's own; `set` updates the group, and
2569
+ * the selection only when it is all in the group.
2570
+ */
2571
+ export declare function useToolStyle(): ToolStyleHandle;
2572
+ export declare function useToolStyle(group: StyleGroup | undefined): ScopedToolStyleHandle;
2573
+ //#endregion
2574
+ //#region src/hooks/useToolOptions.d.ts
2575
+ /**
2576
+ * A tool's options and a setter that merges a patch into them without switching tools.
2577
+ * Options are empty, and the setter does nothing, until the viewport has mounted.
2578
+ */
2579
+ export declare function useToolOptions<O extends object = object>(id: ToolId): [O, (patch: Partial<O>) => void];
2580
+ //#endregion
1762
2581
  //#region src/hooks/useSelection.d.ts
1763
2582
  export declare function useSelection(): {
1764
2583
  selection: readonly string[];
@@ -1825,6 +2644,31 @@ interface InkRootProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'
1825
2644
  onChange?: ((change: AnnotationChange) => void) | undefined;
1826
2645
  tool?: ToolId | undefined;
1827
2646
  onToolChange?: ((tool: ToolId) => void) | undefined;
2647
+ /**
2648
+ * Host tools, added to the built-ins; one with a built-in's id replaces it. Read when a
2649
+ * document opens.
2650
+ */
2651
+ tools?: Tool[] | undefined;
2652
+ /**
2653
+ * Adds `data-*` attributes, classes and a screen-reader description to each annotation's
2654
+ * element (see `DecorateAnnotation`). Decorations re-apply whenever the annotations change
2655
+ * and when this prop changes, without rebuilding the viewer. Pass a new function when its
2656
+ * output would change for any other reason.
2657
+ */
2658
+ decorateAnnotation?: DecorateAnnotation$1 | undefined;
2659
+ /**
2660
+ * The font families text boxes offer, replacing the PDF standard families
2661
+ * (`FONT_FAMILIES`). Fonts beyond those are the PDF writer's to embed.
2662
+ */
2663
+ fonts?: string[] | undefined;
2664
+ /**
2665
+ * Where saved signatures live. Default: memory, gone on reload. `createLocalSignatureStore`
2666
+ * keeps them in the browser; a host can keep them anywhere. A new store takes effect at
2667
+ * once, for the menus and the `signature` tool alike.
2668
+ */
2669
+ signatures?: SignatureStore | undefined;
2670
+ /** The handwriting fonts a typed signature offers; the host loads them. */
2671
+ signatureFonts?: string[] | undefined;
1828
2672
  page?: number | undefined;
1829
2673
  onPageChange?: ((page: number) => void) | undefined;
1830
2674
  zoom?: ZoomValue | undefined;
@@ -1841,7 +2685,7 @@ interface InkRootProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'
1841
2685
  }) => ReactNode);
1842
2686
  ref?: Ref<InkRootHandle>;
1843
2687
  }
1844
- export declare function InkRoot({ src, assets, password, defaults, annotations, onAnnotationsChange, onChange, tool, onToolChange, page, onPageChange, zoom, onZoomChange, history, asChild, onReady, onError, onActivate, children, ref, ...rest }: InkRootProps): import("react").JSX.Element;
2688
+ export declare function InkRoot({ src, assets, password, defaults, annotations, onAnnotationsChange, onChange, tool, onToolChange, tools: hostTools, decorateAnnotation, fonts: fontsProp, signatures: signatureStore, signatureFonts: signatureFontsProp, page, onPageChange, zoom, onZoomChange, history, asChild, onReady, onError, onActivate, children, ref, ...rest }: InkRootProps): import("react").JSX.Element;
1845
2689
  //#endregion
1846
2690
  //#region src/components/InkViewport.d.ts
1847
2691
  interface InkViewportProps extends ComponentPropsWithoutRef<'div'> {
@@ -1976,17 +2820,83 @@ export declare function InkPrevPage({ asChild, className, children, disabled, on
1976
2820
  //#region src/components/InkNextPage.d.ts
1977
2821
  export declare function InkNextPage({ asChild, className, children, disabled, onClick, ...rest }: InkPageButtonProps): import("react").JSX.Element;
1978
2822
  //#endregion
1979
- //#region src/components/InkNotePopover.d.ts
1980
- interface InkNotePopoverProps {
1981
- children?: ((props: NotePopoverSlotProps$1) => ReactNode) | undefined;
2823
+ //#region src/components/InkColorMenu.d.ts
2824
+ interface InkColorMenuProps extends Omit<ComponentPropsWithoutRef<'button'>, 'children'> {
2825
+ /** The colour this menu sets. */
2826
+ property: ColorProperty;
2827
+ /** Accessible name; defaults to "Border colour", "Fill colour" or "Text colour". */
2828
+ label?: string;
2829
+ /** Replaces the swatch. */
2830
+ children?: ReactNode;
2831
+ /**
2832
+ * Renders the trigger outside the toolbar's roving focus, for a menu nested in another
2833
+ * panel (the text style menu's text colour).
2834
+ */
2835
+ standalone?: boolean;
2836
+ /**
2837
+ * Scopes the menu to one style group: it shows and sets that group's colour whatever tool
2838
+ * is active, and recolours the selection only when it is all in the group.
2839
+ */
2840
+ group?: StyleGroup;
2841
+ /** The colour new annotations get while the style leaves it unset; the swatch shows it. */
2842
+ fallback?: string | undefined;
2843
+ }
2844
+ export declare function InkColorMenu({ property, label, className, children, standalone, group, fallback, disabled, ...rest }: InkColorMenuProps): import("react").JSX.Element;
2845
+ //#endregion
2846
+ //#region src/components/InkShapeMenu.d.ts
2847
+ interface InkShapeMenuProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'> {
2848
+ /** Replaces the main button's icon. */
2849
+ children?: ReactNode;
2850
+ }
2851
+ export declare function InkShapeMenu({ className, children, ...rest }: InkShapeMenuProps): import("react").JSX.Element;
2852
+ //#endregion
2853
+ //#region src/components/InkSignatureMenu.d.ts
2854
+ interface InkSignatureMenuProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'> {
2855
+ /** Replaces the main button's icon. */
2856
+ children?: ReactNode;
2857
+ /** The fonts the dialog's Type tab offers. Default: InkRoot's `signatureFonts`. */
2858
+ fonts?: readonly string[] | undefined;
2859
+ }
2860
+ export declare function InkSignatureMenu({ className, children, fonts, ...rest }: InkSignatureMenuProps): import("react").JSX.Element;
2861
+ //#endregion
2862
+ //#region src/components/InkSignatureDialog.d.ts
2863
+ interface InkSignatureDialogProps {
2864
+ open: boolean;
2865
+ onOpenChange: (open: boolean) => void;
2866
+ /** The fonts the Type tab offers. Default: InkRoot's `signatureFonts`. */
2867
+ fonts?: readonly string[] | undefined;
2868
+ /** Called with the new template once it is saved and selected. */
2869
+ onSave?: ((template: SignatureTemplate) => void) | undefined;
2870
+ /** Where focus goes on close; by default, back to what had it before. */
2871
+ onCloseAutoFocus?: ((event: Event) => void) | undefined;
2872
+ className?: string | undefined;
2873
+ }
2874
+ export declare function InkSignatureDialog({ open, onOpenChange, fonts, onSave, onCloseAutoFocus, className }: InkSignatureDialogProps): import("react").JSX.Element;
2875
+ //#endregion
2876
+ //#region src/components/InkHighlightMenu.d.ts
2877
+ interface InkHighlightMenuProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'> {
2878
+ /** Replaces the main button's icon. */
2879
+ children?: ReactNode;
2880
+ }
2881
+ export declare function InkHighlightMenu({ className, children, ...rest }: InkHighlightMenuProps): import("react").JSX.Element;
2882
+ //#endregion
2883
+ //#region src/components/InkTextStyleMenu.d.ts
2884
+ interface InkTextStyleMenuProps extends Omit<ComponentPropsWithoutRef<'button'>, 'children'> {
2885
+ children?: ReactNode;
2886
+ }
2887
+ export declare function InkTextStyleMenu({ className, children, disabled, ...rest }: InkTextStyleMenuProps): import("react").JSX.Element;
2888
+ //#endregion
2889
+ //#region src/components/InkLineStyleMenu.d.ts
2890
+ interface InkLineStyleMenuProps extends Omit<ComponentPropsWithoutRef<'button'>, 'children'> {
2891
+ children?: ReactNode;
1982
2892
  }
1983
- export declare function InkNotePopover({ children }: InkNotePopoverProps): import("react").JSX.Element;
2893
+ export declare function InkLineStyleMenu({ className, children, disabled, ...rest }: InkLineStyleMenuProps): import("react").JSX.Element;
1984
2894
  //#endregion
1985
- //#region src/components/InkSuggestionCard.d.ts
1986
- interface InkSuggestionCardProps {
1987
- children?: ((props: SuggestionCardSlotProps$1) => ReactNode) | undefined;
2895
+ //#region src/components/InkThreadPopover.d.ts
2896
+ interface InkThreadPopoverProps {
2897
+ children?: ((props: ThreadPopoverSlotProps$1) => ReactNode) | undefined;
1988
2898
  }
1989
- export declare function InkSuggestionCard({ children }: InkSuggestionCardProps): import("react").JSX.Element;
2899
+ export declare function InkThreadPopover({ children }: InkThreadPopoverProps): import("react").JSX.Element;
1990
2900
  //#endregion
1991
- export type { AnnotationSlotProps, AnnotationState, ConfidenceBucket, InkAnnotationProps, InkContext, InkHistory, InkHistoryButtonProps, InkIconProps, InkNotePopoverProps, InkPageButtonProps, InkPageInputProps, InkPageProps, InkRootHandle, InkRootProps, InkStatus, InkSuggestionCardProps, InkToolButtonProps, InkToolbarProps, InkToolbarSeparatorProps, InkViewportProps, InkZoomButtonProps, InkZoomSelectProps, NotePopoverSlotProps, SuggestionCardSlotProps };
2901
+ export type { AnnotationDecoration, AnnotationSlotProps, AnnotationState, DecorateAnnotation, InkAnnotationProps, InkColorMenuProps, InkContext, InkHighlightMenuProps, InkHistory, InkHistoryButtonProps, InkIconProps, InkLineStyleMenuProps, InkPageButtonProps, InkPageInputProps, InkPageProps, InkRootHandle, InkRootProps, InkShapeMenuProps, InkSignatureDialogProps, InkSignatureMenuProps, InkStatus, InkTextStyleMenuProps, InkThreadPopoverProps, InkToolButtonProps, InkToolbarProps, InkToolbarSeparatorProps, InkViewportProps, InkZoomButtonProps, InkZoomSelectProps, ScopedToolStyleHandle, ThreadPopoverSlotProps, ToolStyleHandle };
1992
2902
  //# sourceMappingURL=index.d.mts.map