@inkbar/svelte 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +154 -2
  3. package/dist/class-names.d.ts +3 -0
  4. package/dist/class-names.d.ts.map +1 -0
  5. package/dist/class-names.js +5 -0
  6. package/dist/components/InkAnnotation.svelte +73 -0
  7. package/dist/components/InkAnnotation.svelte.d.ts +13 -0
  8. package/dist/components/InkAnnotation.svelte.d.ts.map +1 -0
  9. package/dist/components/InkNotePopover.svelte +193 -0
  10. package/dist/components/InkNotePopover.svelte.d.ts +9 -0
  11. package/dist/components/InkNotePopover.svelte.d.ts.map +1 -0
  12. package/dist/components/InkPage.svelte +125 -0
  13. package/dist/components/InkPage.svelte.d.ts +22 -0
  14. package/dist/components/InkPage.svelte.d.ts.map +1 -0
  15. package/dist/components/InkPageCount.svelte +20 -0
  16. package/dist/components/InkPageCount.svelte.d.ts +6 -0
  17. package/dist/components/InkPageCount.svelte.d.ts.map +1 -0
  18. package/dist/components/InkPageInput.svelte +49 -0
  19. package/dist/components/InkPageInput.svelte.d.ts +6 -0
  20. package/dist/components/InkPageInput.svelte.d.ts.map +1 -0
  21. package/dist/components/InkRoot.svelte +358 -0
  22. package/dist/components/InkRoot.svelte.d.ts +51 -0
  23. package/dist/components/InkRoot.svelte.d.ts.map +1 -0
  24. package/dist/components/InkSuggestionCard.svelte +121 -0
  25. package/dist/components/InkSuggestionCard.svelte.d.ts +9 -0
  26. package/dist/components/InkSuggestionCard.svelte.d.ts.map +1 -0
  27. package/dist/components/InkToolButton.svelte +54 -0
  28. package/dist/components/InkToolButton.svelte.d.ts +17 -0
  29. package/dist/components/InkToolButton.svelte.d.ts.map +1 -0
  30. package/dist/components/InkToolbar.svelte +40 -0
  31. package/dist/components/InkToolbar.svelte.d.ts +13 -0
  32. package/dist/components/InkToolbar.svelte.d.ts.map +1 -0
  33. package/dist/components/InkViewport.svelte +306 -0
  34. package/dist/components/InkViewport.svelte.d.ts +27 -0
  35. package/dist/components/InkViewport.svelte.d.ts.map +1 -0
  36. package/dist/components/InkZoomIn.svelte +34 -0
  37. package/dist/components/InkZoomIn.svelte.d.ts +5 -0
  38. package/dist/components/InkZoomIn.svelte.d.ts.map +1 -0
  39. package/dist/components/InkZoomOut.svelte +34 -0
  40. package/dist/components/InkZoomOut.svelte.d.ts +5 -0
  41. package/dist/components/InkZoomOut.svelte.d.ts.map +1 -0
  42. package/dist/components/InkZoomSelect.svelte +56 -0
  43. package/dist/components/InkZoomSelect.svelte.d.ts +6 -0
  44. package/dist/components/InkZoomSelect.svelte.d.ts.map +1 -0
  45. package/dist/components/ThreadForm.svelte +42 -0
  46. package/dist/components/ThreadForm.svelte.d.ts +11 -0
  47. package/dist/components/ThreadForm.svelte.d.ts.map +1 -0
  48. package/dist/components/annotation-element.svelte.d.ts +9 -0
  49. package/dist/components/annotation-element.svelte.d.ts.map +1 -0
  50. package/dist/components/annotation-element.svelte.js +25 -0
  51. package/dist/components/child-snippet.d.ts +22 -0
  52. package/dist/components/child-snippet.d.ts.map +1 -0
  53. package/dist/components/child-snippet.js +14 -0
  54. package/dist/components/popover-focus.d.ts +33 -0
  55. package/dist/components/popover-focus.d.ts.map +1 -0
  56. package/dist/components/popover-focus.js +63 -0
  57. package/dist/components/portal.d.ts +26 -0
  58. package/dist/components/portal.d.ts.map +1 -0
  59. package/dist/components/portal.js +55 -0
  60. package/dist/components/zoom-button.d.ts +10 -0
  61. package/dist/components/zoom-button.d.ts.map +1 -0
  62. package/dist/components/zoom-button.js +1 -0
  63. package/dist/compositions/DefaultToolbar.svelte +90 -0
  64. package/dist/compositions/DefaultToolbar.svelte.d.ts +10 -0
  65. package/dist/compositions/DefaultToolbar.svelte.d.ts.map +1 -0
  66. package/dist/context.d.ts +57 -0
  67. package/dist/context.d.ts.map +1 -0
  68. package/dist/context.js +34 -0
  69. package/dist/hooks/useAnnotations.svelte.d.ts +1683 -0
  70. package/dist/hooks/useAnnotations.svelte.d.ts.map +1 -0
  71. package/dist/hooks/useAnnotations.svelte.js +33 -0
  72. package/dist/hooks/useDocument.svelte.d.ts +12 -0
  73. package/dist/hooks/useDocument.svelte.d.ts.map +1 -0
  74. package/dist/hooks/useDocument.svelte.js +28 -0
  75. package/dist/hooks/useEmbedded.svelte.d.ts +7 -0
  76. package/dist/hooks/useEmbedded.svelte.d.ts.map +1 -0
  77. package/dist/hooks/useEmbedded.svelte.js +17 -0
  78. package/dist/hooks/useHistory.svelte.d.ts +7 -0
  79. package/dist/hooks/useHistory.svelte.d.ts.map +1 -0
  80. package/dist/hooks/useHistory.svelte.js +8 -0
  81. package/dist/hooks/usePage.svelte.d.ts +10 -0
  82. package/dist/hooks/usePage.svelte.d.ts.map +1 -0
  83. package/dist/hooks/usePage.svelte.js +29 -0
  84. package/dist/hooks/useSelection.svelte.d.ts +6 -0
  85. package/dist/hooks/useSelection.svelte.d.ts.map +1 -0
  86. package/dist/hooks/useSelection.svelte.js +12 -0
  87. package/dist/hooks/useTool.svelte.d.ts +6 -0
  88. package/dist/hooks/useTool.svelte.d.ts.map +1 -0
  89. package/dist/hooks/useTool.svelte.js +10 -0
  90. package/dist/hooks/useZoom.svelte.d.ts +9 -0
  91. package/dist/hooks/useZoom.svelte.d.ts.map +1 -0
  92. package/dist/hooks/useZoom.svelte.js +18 -0
  93. package/dist/index.d.ts +45 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +24 -0
  96. package/dist/use-readable.svelte.d.ts +13 -0
  97. package/dist/use-readable.svelte.d.ts.map +1 -0
  98. package/dist/use-readable.svelte.js +28 -0
  99. package/package.json +56 -3
@@ -0,0 +1,1683 @@
1
+ import type { Annotation, AnnotationInput } from '@inkbar/core';
2
+ export declare function useAnnotations(): {
3
+ readonly annotations: readonly ({
4
+ id: string;
5
+ page: number;
6
+ rect: {
7
+ x: number;
8
+ y: number;
9
+ width: number;
10
+ height: number;
11
+ };
12
+ color: string;
13
+ opacity: number;
14
+ createdAt: string;
15
+ modifiedAt: string;
16
+ source: "session" | "pdf";
17
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
18
+ quads: {
19
+ p1: {
20
+ x: number;
21
+ y: number;
22
+ };
23
+ p2: {
24
+ x: number;
25
+ y: number;
26
+ };
27
+ p3: {
28
+ x: number;
29
+ y: number;
30
+ };
31
+ p4: {
32
+ x: number;
33
+ y: number;
34
+ };
35
+ }[];
36
+ author?: string | undefined;
37
+ contents?: string | undefined;
38
+ inReplyTo?: string | undefined;
39
+ locked?: boolean | undefined;
40
+ custom?: Record<string, unknown> | undefined;
41
+ } | {
42
+ id: string;
43
+ page: number;
44
+ rect: {
45
+ x: number;
46
+ y: number;
47
+ width: number;
48
+ height: number;
49
+ };
50
+ color: string;
51
+ opacity: number;
52
+ createdAt: string;
53
+ modifiedAt: string;
54
+ source: "session" | "pdf";
55
+ type: "note";
56
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
57
+ author?: string | undefined;
58
+ contents?: string | undefined;
59
+ inReplyTo?: string | undefined;
60
+ locked?: boolean | undefined;
61
+ custom?: Record<string, unknown> | undefined;
62
+ } | {
63
+ id: string;
64
+ page: number;
65
+ rect: {
66
+ x: number;
67
+ y: number;
68
+ width: number;
69
+ height: number;
70
+ };
71
+ color: string;
72
+ opacity: number;
73
+ createdAt: string;
74
+ modifiedAt: string;
75
+ source: "session" | "pdf";
76
+ type: "freeText";
77
+ text: string;
78
+ fontSize: number;
79
+ fontFamily: string;
80
+ align: "left" | "center" | "right";
81
+ author?: string | undefined;
82
+ contents?: string | undefined;
83
+ inReplyTo?: string | undefined;
84
+ locked?: boolean | undefined;
85
+ custom?: Record<string, unknown> | undefined;
86
+ callout?: {
87
+ x: number;
88
+ y: number;
89
+ }[] | undefined;
90
+ } | {
91
+ id: string;
92
+ page: number;
93
+ rect: {
94
+ x: number;
95
+ y: number;
96
+ width: number;
97
+ height: number;
98
+ };
99
+ color: string;
100
+ opacity: number;
101
+ createdAt: string;
102
+ modifiedAt: string;
103
+ source: "session" | "pdf";
104
+ type: "square" | "circle";
105
+ strokeWidth: number;
106
+ author?: string | undefined;
107
+ contents?: string | undefined;
108
+ inReplyTo?: string | undefined;
109
+ locked?: boolean | undefined;
110
+ custom?: Record<string, unknown> | undefined;
111
+ fill?: string | undefined;
112
+ } | {
113
+ id: string;
114
+ page: number;
115
+ rect: {
116
+ x: number;
117
+ y: number;
118
+ width: number;
119
+ height: number;
120
+ };
121
+ color: string;
122
+ opacity: number;
123
+ createdAt: string;
124
+ modifiedAt: string;
125
+ source: "session" | "pdf";
126
+ type: "line";
127
+ start: {
128
+ x: number;
129
+ y: number;
130
+ };
131
+ end: {
132
+ x: number;
133
+ y: number;
134
+ };
135
+ strokeWidth: number;
136
+ author?: string | undefined;
137
+ contents?: string | undefined;
138
+ inReplyTo?: string | undefined;
139
+ locked?: boolean | undefined;
140
+ custom?: Record<string, unknown> | undefined;
141
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
142
+ } | {
143
+ id: string;
144
+ page: number;
145
+ rect: {
146
+ x: number;
147
+ y: number;
148
+ width: number;
149
+ height: number;
150
+ };
151
+ color: string;
152
+ opacity: number;
153
+ createdAt: string;
154
+ modifiedAt: string;
155
+ source: "session" | "pdf";
156
+ type: "polyline" | "polygon";
157
+ vertices: {
158
+ x: number;
159
+ y: number;
160
+ }[];
161
+ strokeWidth: number;
162
+ author?: string | undefined;
163
+ contents?: string | undefined;
164
+ inReplyTo?: string | undefined;
165
+ locked?: boolean | undefined;
166
+ custom?: Record<string, unknown> | undefined;
167
+ fill?: string | undefined;
168
+ } | {
169
+ id: string;
170
+ page: number;
171
+ rect: {
172
+ x: number;
173
+ y: number;
174
+ width: number;
175
+ height: number;
176
+ };
177
+ color: string;
178
+ opacity: number;
179
+ createdAt: string;
180
+ modifiedAt: string;
181
+ source: "session" | "pdf";
182
+ type: "ink";
183
+ paths: {
184
+ x: number;
185
+ y: number;
186
+ }[][];
187
+ strokeWidth: number;
188
+ author?: string | undefined;
189
+ contents?: string | undefined;
190
+ inReplyTo?: string | undefined;
191
+ locked?: boolean | undefined;
192
+ custom?: Record<string, unknown> | undefined;
193
+ } | {
194
+ id: string;
195
+ page: number;
196
+ rect: {
197
+ x: number;
198
+ y: number;
199
+ width: number;
200
+ height: number;
201
+ };
202
+ color: string;
203
+ opacity: number;
204
+ createdAt: string;
205
+ modifiedAt: string;
206
+ source: "session" | "pdf";
207
+ type: "redact";
208
+ origin: "user" | "suggested";
209
+ fill: string;
210
+ author?: string | undefined;
211
+ contents?: string | undefined;
212
+ inReplyTo?: string | undefined;
213
+ locked?: boolean | undefined;
214
+ custom?: Record<string, unknown> | undefined;
215
+ quads?: {
216
+ p1: {
217
+ x: number;
218
+ y: number;
219
+ };
220
+ p2: {
221
+ x: number;
222
+ y: number;
223
+ };
224
+ p3: {
225
+ x: number;
226
+ y: number;
227
+ };
228
+ p4: {
229
+ x: number;
230
+ y: number;
231
+ };
232
+ }[] | undefined;
233
+ suggestion?: {
234
+ confidence: number;
235
+ jobId?: string | undefined;
236
+ reason?: string | undefined;
237
+ explanation?: string | undefined;
238
+ recommendation?: "redact" | "review" | "keep" | undefined;
239
+ } | undefined;
240
+ overlayText?: string | undefined;
241
+ })[];
242
+ readonly selection: readonly string[];
243
+ readonly selected: ({
244
+ id: string;
245
+ page: number;
246
+ rect: {
247
+ x: number;
248
+ y: number;
249
+ width: number;
250
+ height: number;
251
+ };
252
+ color: string;
253
+ opacity: number;
254
+ createdAt: string;
255
+ modifiedAt: string;
256
+ source: "session" | "pdf";
257
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
258
+ quads: {
259
+ p1: {
260
+ x: number;
261
+ y: number;
262
+ };
263
+ p2: {
264
+ x: number;
265
+ y: number;
266
+ };
267
+ p3: {
268
+ x: number;
269
+ y: number;
270
+ };
271
+ p4: {
272
+ x: number;
273
+ y: number;
274
+ };
275
+ }[];
276
+ author?: string | undefined;
277
+ contents?: string | undefined;
278
+ inReplyTo?: string | undefined;
279
+ locked?: boolean | undefined;
280
+ custom?: Record<string, unknown> | undefined;
281
+ } | {
282
+ id: string;
283
+ page: number;
284
+ rect: {
285
+ x: number;
286
+ y: number;
287
+ width: number;
288
+ height: number;
289
+ };
290
+ color: string;
291
+ opacity: number;
292
+ createdAt: string;
293
+ modifiedAt: string;
294
+ source: "session" | "pdf";
295
+ type: "note";
296
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
297
+ author?: string | undefined;
298
+ contents?: string | undefined;
299
+ inReplyTo?: string | undefined;
300
+ locked?: boolean | undefined;
301
+ custom?: Record<string, unknown> | undefined;
302
+ } | {
303
+ id: string;
304
+ page: number;
305
+ rect: {
306
+ x: number;
307
+ y: number;
308
+ width: number;
309
+ height: number;
310
+ };
311
+ color: string;
312
+ opacity: number;
313
+ createdAt: string;
314
+ modifiedAt: string;
315
+ source: "session" | "pdf";
316
+ type: "freeText";
317
+ text: string;
318
+ fontSize: number;
319
+ fontFamily: string;
320
+ align: "left" | "center" | "right";
321
+ author?: string | undefined;
322
+ contents?: string | undefined;
323
+ inReplyTo?: string | undefined;
324
+ locked?: boolean | undefined;
325
+ custom?: Record<string, unknown> | undefined;
326
+ callout?: {
327
+ x: number;
328
+ y: number;
329
+ }[] | undefined;
330
+ } | {
331
+ id: string;
332
+ page: number;
333
+ rect: {
334
+ x: number;
335
+ y: number;
336
+ width: number;
337
+ height: number;
338
+ };
339
+ color: string;
340
+ opacity: number;
341
+ createdAt: string;
342
+ modifiedAt: string;
343
+ source: "session" | "pdf";
344
+ type: "square" | "circle";
345
+ strokeWidth: number;
346
+ author?: string | undefined;
347
+ contents?: string | undefined;
348
+ inReplyTo?: string | undefined;
349
+ locked?: boolean | undefined;
350
+ custom?: Record<string, unknown> | undefined;
351
+ fill?: string | undefined;
352
+ } | {
353
+ id: string;
354
+ page: number;
355
+ rect: {
356
+ x: number;
357
+ y: number;
358
+ width: number;
359
+ height: number;
360
+ };
361
+ color: string;
362
+ opacity: number;
363
+ createdAt: string;
364
+ modifiedAt: string;
365
+ source: "session" | "pdf";
366
+ type: "line";
367
+ start: {
368
+ x: number;
369
+ y: number;
370
+ };
371
+ end: {
372
+ x: number;
373
+ y: number;
374
+ };
375
+ strokeWidth: number;
376
+ author?: string | undefined;
377
+ contents?: string | undefined;
378
+ inReplyTo?: string | undefined;
379
+ locked?: boolean | undefined;
380
+ custom?: Record<string, unknown> | undefined;
381
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
382
+ } | {
383
+ id: string;
384
+ page: number;
385
+ rect: {
386
+ x: number;
387
+ y: number;
388
+ width: number;
389
+ height: number;
390
+ };
391
+ color: string;
392
+ opacity: number;
393
+ createdAt: string;
394
+ modifiedAt: string;
395
+ source: "session" | "pdf";
396
+ type: "polyline" | "polygon";
397
+ vertices: {
398
+ x: number;
399
+ y: number;
400
+ }[];
401
+ strokeWidth: number;
402
+ author?: string | undefined;
403
+ contents?: string | undefined;
404
+ inReplyTo?: string | undefined;
405
+ locked?: boolean | undefined;
406
+ custom?: Record<string, unknown> | undefined;
407
+ fill?: string | undefined;
408
+ } | {
409
+ id: string;
410
+ page: number;
411
+ rect: {
412
+ x: number;
413
+ y: number;
414
+ width: number;
415
+ height: number;
416
+ };
417
+ color: string;
418
+ opacity: number;
419
+ createdAt: string;
420
+ modifiedAt: string;
421
+ source: "session" | "pdf";
422
+ type: "ink";
423
+ paths: {
424
+ x: number;
425
+ y: number;
426
+ }[][];
427
+ strokeWidth: number;
428
+ author?: string | undefined;
429
+ contents?: string | undefined;
430
+ inReplyTo?: string | undefined;
431
+ locked?: boolean | undefined;
432
+ custom?: Record<string, unknown> | undefined;
433
+ } | {
434
+ id: string;
435
+ page: number;
436
+ rect: {
437
+ x: number;
438
+ y: number;
439
+ width: number;
440
+ height: number;
441
+ };
442
+ color: string;
443
+ opacity: number;
444
+ createdAt: string;
445
+ modifiedAt: string;
446
+ source: "session" | "pdf";
447
+ type: "redact";
448
+ origin: "user" | "suggested";
449
+ fill: string;
450
+ author?: string | undefined;
451
+ contents?: string | undefined;
452
+ inReplyTo?: string | undefined;
453
+ locked?: boolean | undefined;
454
+ custom?: Record<string, unknown> | undefined;
455
+ quads?: {
456
+ p1: {
457
+ x: number;
458
+ y: number;
459
+ };
460
+ p2: {
461
+ x: number;
462
+ y: number;
463
+ };
464
+ p3: {
465
+ x: number;
466
+ y: number;
467
+ };
468
+ p4: {
469
+ x: number;
470
+ y: number;
471
+ };
472
+ }[] | undefined;
473
+ suggestion?: {
474
+ confidence: number;
475
+ jobId?: string | undefined;
476
+ reason?: string | undefined;
477
+ explanation?: string | undefined;
478
+ recommendation?: "redact" | "review" | "keep" | undefined;
479
+ } | undefined;
480
+ overlayText?: string | undefined;
481
+ })[];
482
+ byPage: (page: number) => ({
483
+ id: string;
484
+ page: number;
485
+ rect: {
486
+ x: number;
487
+ y: number;
488
+ width: number;
489
+ height: number;
490
+ };
491
+ color: string;
492
+ opacity: number;
493
+ createdAt: string;
494
+ modifiedAt: string;
495
+ source: "session" | "pdf";
496
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
497
+ quads: {
498
+ p1: {
499
+ x: number;
500
+ y: number;
501
+ };
502
+ p2: {
503
+ x: number;
504
+ y: number;
505
+ };
506
+ p3: {
507
+ x: number;
508
+ y: number;
509
+ };
510
+ p4: {
511
+ x: number;
512
+ y: number;
513
+ };
514
+ }[];
515
+ author?: string | undefined;
516
+ contents?: string | undefined;
517
+ inReplyTo?: string | undefined;
518
+ locked?: boolean | undefined;
519
+ custom?: Record<string, unknown> | undefined;
520
+ } | {
521
+ id: string;
522
+ page: number;
523
+ rect: {
524
+ x: number;
525
+ y: number;
526
+ width: number;
527
+ height: number;
528
+ };
529
+ color: string;
530
+ opacity: number;
531
+ createdAt: string;
532
+ modifiedAt: string;
533
+ source: "session" | "pdf";
534
+ type: "note";
535
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
536
+ author?: string | undefined;
537
+ contents?: string | undefined;
538
+ inReplyTo?: string | undefined;
539
+ locked?: boolean | undefined;
540
+ custom?: Record<string, unknown> | undefined;
541
+ } | {
542
+ id: string;
543
+ page: number;
544
+ rect: {
545
+ x: number;
546
+ y: number;
547
+ width: number;
548
+ height: number;
549
+ };
550
+ color: string;
551
+ opacity: number;
552
+ createdAt: string;
553
+ modifiedAt: string;
554
+ source: "session" | "pdf";
555
+ type: "freeText";
556
+ text: string;
557
+ fontSize: number;
558
+ fontFamily: string;
559
+ align: "left" | "center" | "right";
560
+ author?: string | undefined;
561
+ contents?: string | undefined;
562
+ inReplyTo?: string | undefined;
563
+ locked?: boolean | undefined;
564
+ custom?: Record<string, unknown> | undefined;
565
+ callout?: {
566
+ x: number;
567
+ y: number;
568
+ }[] | undefined;
569
+ } | {
570
+ id: string;
571
+ page: number;
572
+ rect: {
573
+ x: number;
574
+ y: number;
575
+ width: number;
576
+ height: number;
577
+ };
578
+ color: string;
579
+ opacity: number;
580
+ createdAt: string;
581
+ modifiedAt: string;
582
+ source: "session" | "pdf";
583
+ type: "square" | "circle";
584
+ strokeWidth: number;
585
+ author?: string | undefined;
586
+ contents?: string | undefined;
587
+ inReplyTo?: string | undefined;
588
+ locked?: boolean | undefined;
589
+ custom?: Record<string, unknown> | undefined;
590
+ fill?: string | undefined;
591
+ } | {
592
+ id: string;
593
+ page: number;
594
+ rect: {
595
+ x: number;
596
+ y: number;
597
+ width: number;
598
+ height: number;
599
+ };
600
+ color: string;
601
+ opacity: number;
602
+ createdAt: string;
603
+ modifiedAt: string;
604
+ source: "session" | "pdf";
605
+ type: "line";
606
+ start: {
607
+ x: number;
608
+ y: number;
609
+ };
610
+ end: {
611
+ x: number;
612
+ y: number;
613
+ };
614
+ strokeWidth: number;
615
+ author?: string | undefined;
616
+ contents?: string | undefined;
617
+ inReplyTo?: string | undefined;
618
+ locked?: boolean | undefined;
619
+ custom?: Record<string, unknown> | undefined;
620
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
621
+ } | {
622
+ id: string;
623
+ page: number;
624
+ rect: {
625
+ x: number;
626
+ y: number;
627
+ width: number;
628
+ height: number;
629
+ };
630
+ color: string;
631
+ opacity: number;
632
+ createdAt: string;
633
+ modifiedAt: string;
634
+ source: "session" | "pdf";
635
+ type: "polyline" | "polygon";
636
+ vertices: {
637
+ x: number;
638
+ y: number;
639
+ }[];
640
+ strokeWidth: number;
641
+ author?: string | undefined;
642
+ contents?: string | undefined;
643
+ inReplyTo?: string | undefined;
644
+ locked?: boolean | undefined;
645
+ custom?: Record<string, unknown> | undefined;
646
+ fill?: string | undefined;
647
+ } | {
648
+ id: string;
649
+ page: number;
650
+ rect: {
651
+ x: number;
652
+ y: number;
653
+ width: number;
654
+ height: number;
655
+ };
656
+ color: string;
657
+ opacity: number;
658
+ createdAt: string;
659
+ modifiedAt: string;
660
+ source: "session" | "pdf";
661
+ type: "ink";
662
+ paths: {
663
+ x: number;
664
+ y: number;
665
+ }[][];
666
+ strokeWidth: number;
667
+ author?: string | undefined;
668
+ contents?: string | undefined;
669
+ inReplyTo?: string | undefined;
670
+ locked?: boolean | undefined;
671
+ custom?: Record<string, unknown> | undefined;
672
+ } | {
673
+ id: string;
674
+ page: number;
675
+ rect: {
676
+ x: number;
677
+ y: number;
678
+ width: number;
679
+ height: number;
680
+ };
681
+ color: string;
682
+ opacity: number;
683
+ createdAt: string;
684
+ modifiedAt: string;
685
+ source: "session" | "pdf";
686
+ type: "redact";
687
+ origin: "user" | "suggested";
688
+ fill: string;
689
+ author?: string | undefined;
690
+ contents?: string | undefined;
691
+ inReplyTo?: string | undefined;
692
+ locked?: boolean | undefined;
693
+ custom?: Record<string, unknown> | undefined;
694
+ quads?: {
695
+ p1: {
696
+ x: number;
697
+ y: number;
698
+ };
699
+ p2: {
700
+ x: number;
701
+ y: number;
702
+ };
703
+ p3: {
704
+ x: number;
705
+ y: number;
706
+ };
707
+ p4: {
708
+ x: number;
709
+ y: number;
710
+ };
711
+ }[] | undefined;
712
+ suggestion?: {
713
+ confidence: number;
714
+ jobId?: string | undefined;
715
+ reason?: string | undefined;
716
+ explanation?: string | undefined;
717
+ recommendation?: "redact" | "review" | "keep" | undefined;
718
+ } | undefined;
719
+ overlayText?: string | undefined;
720
+ })[];
721
+ /** Replies in creation order for a note id. */
722
+ replies: (id: string) => ({
723
+ id: string;
724
+ page: number;
725
+ rect: {
726
+ x: number;
727
+ y: number;
728
+ width: number;
729
+ height: number;
730
+ };
731
+ color: string;
732
+ opacity: number;
733
+ createdAt: string;
734
+ modifiedAt: string;
735
+ source: "session" | "pdf";
736
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
737
+ quads: {
738
+ p1: {
739
+ x: number;
740
+ y: number;
741
+ };
742
+ p2: {
743
+ x: number;
744
+ y: number;
745
+ };
746
+ p3: {
747
+ x: number;
748
+ y: number;
749
+ };
750
+ p4: {
751
+ x: number;
752
+ y: number;
753
+ };
754
+ }[];
755
+ author?: string | undefined;
756
+ contents?: string | undefined;
757
+ inReplyTo?: string | undefined;
758
+ locked?: boolean | undefined;
759
+ custom?: Record<string, unknown> | undefined;
760
+ } | {
761
+ id: string;
762
+ page: number;
763
+ rect: {
764
+ x: number;
765
+ y: number;
766
+ width: number;
767
+ height: number;
768
+ };
769
+ color: string;
770
+ opacity: number;
771
+ createdAt: string;
772
+ modifiedAt: string;
773
+ source: "session" | "pdf";
774
+ type: "note";
775
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
776
+ author?: string | undefined;
777
+ contents?: string | undefined;
778
+ inReplyTo?: string | undefined;
779
+ locked?: boolean | undefined;
780
+ custom?: Record<string, unknown> | undefined;
781
+ } | {
782
+ id: string;
783
+ page: number;
784
+ rect: {
785
+ x: number;
786
+ y: number;
787
+ width: number;
788
+ height: number;
789
+ };
790
+ color: string;
791
+ opacity: number;
792
+ createdAt: string;
793
+ modifiedAt: string;
794
+ source: "session" | "pdf";
795
+ type: "freeText";
796
+ text: string;
797
+ fontSize: number;
798
+ fontFamily: string;
799
+ align: "left" | "center" | "right";
800
+ author?: string | undefined;
801
+ contents?: string | undefined;
802
+ inReplyTo?: string | undefined;
803
+ locked?: boolean | undefined;
804
+ custom?: Record<string, unknown> | undefined;
805
+ callout?: {
806
+ x: number;
807
+ y: number;
808
+ }[] | undefined;
809
+ } | {
810
+ id: string;
811
+ page: number;
812
+ rect: {
813
+ x: number;
814
+ y: number;
815
+ width: number;
816
+ height: number;
817
+ };
818
+ color: string;
819
+ opacity: number;
820
+ createdAt: string;
821
+ modifiedAt: string;
822
+ source: "session" | "pdf";
823
+ type: "square" | "circle";
824
+ strokeWidth: number;
825
+ author?: string | undefined;
826
+ contents?: string | undefined;
827
+ inReplyTo?: string | undefined;
828
+ locked?: boolean | undefined;
829
+ custom?: Record<string, unknown> | undefined;
830
+ fill?: string | undefined;
831
+ } | {
832
+ id: string;
833
+ page: number;
834
+ rect: {
835
+ x: number;
836
+ y: number;
837
+ width: number;
838
+ height: number;
839
+ };
840
+ color: string;
841
+ opacity: number;
842
+ createdAt: string;
843
+ modifiedAt: string;
844
+ source: "session" | "pdf";
845
+ type: "line";
846
+ start: {
847
+ x: number;
848
+ y: number;
849
+ };
850
+ end: {
851
+ x: number;
852
+ y: number;
853
+ };
854
+ strokeWidth: number;
855
+ author?: string | undefined;
856
+ contents?: string | undefined;
857
+ inReplyTo?: string | undefined;
858
+ locked?: boolean | undefined;
859
+ custom?: Record<string, unknown> | undefined;
860
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
861
+ } | {
862
+ id: string;
863
+ page: number;
864
+ rect: {
865
+ x: number;
866
+ y: number;
867
+ width: number;
868
+ height: number;
869
+ };
870
+ color: string;
871
+ opacity: number;
872
+ createdAt: string;
873
+ modifiedAt: string;
874
+ source: "session" | "pdf";
875
+ type: "polyline" | "polygon";
876
+ vertices: {
877
+ x: number;
878
+ y: number;
879
+ }[];
880
+ strokeWidth: number;
881
+ author?: string | undefined;
882
+ contents?: string | undefined;
883
+ inReplyTo?: string | undefined;
884
+ locked?: boolean | undefined;
885
+ custom?: Record<string, unknown> | undefined;
886
+ fill?: string | undefined;
887
+ } | {
888
+ id: string;
889
+ page: number;
890
+ rect: {
891
+ x: number;
892
+ y: number;
893
+ width: number;
894
+ height: number;
895
+ };
896
+ color: string;
897
+ opacity: number;
898
+ createdAt: string;
899
+ modifiedAt: string;
900
+ source: "session" | "pdf";
901
+ type: "ink";
902
+ paths: {
903
+ x: number;
904
+ y: number;
905
+ }[][];
906
+ strokeWidth: number;
907
+ author?: string | undefined;
908
+ contents?: string | undefined;
909
+ inReplyTo?: string | undefined;
910
+ locked?: boolean | undefined;
911
+ custom?: Record<string, unknown> | undefined;
912
+ } | {
913
+ id: string;
914
+ page: number;
915
+ rect: {
916
+ x: number;
917
+ y: number;
918
+ width: number;
919
+ height: number;
920
+ };
921
+ color: string;
922
+ opacity: number;
923
+ createdAt: string;
924
+ modifiedAt: string;
925
+ source: "session" | "pdf";
926
+ type: "redact";
927
+ origin: "user" | "suggested";
928
+ fill: string;
929
+ author?: string | undefined;
930
+ contents?: string | undefined;
931
+ inReplyTo?: string | undefined;
932
+ locked?: boolean | undefined;
933
+ custom?: Record<string, unknown> | undefined;
934
+ quads?: {
935
+ p1: {
936
+ x: number;
937
+ y: number;
938
+ };
939
+ p2: {
940
+ x: number;
941
+ y: number;
942
+ };
943
+ p3: {
944
+ x: number;
945
+ y: number;
946
+ };
947
+ p4: {
948
+ x: number;
949
+ y: number;
950
+ };
951
+ }[] | undefined;
952
+ suggestion?: {
953
+ confidence: number;
954
+ jobId?: string | undefined;
955
+ reason?: string | undefined;
956
+ explanation?: string | undefined;
957
+ recommendation?: "redact" | "review" | "keep" | undefined;
958
+ } | undefined;
959
+ overlayText?: string | undefined;
960
+ })[];
961
+ add: (input: AnnotationInput) => {
962
+ id: string;
963
+ page: number;
964
+ rect: {
965
+ x: number;
966
+ y: number;
967
+ width: number;
968
+ height: number;
969
+ };
970
+ color: string;
971
+ opacity: number;
972
+ createdAt: string;
973
+ modifiedAt: string;
974
+ source: "session" | "pdf";
975
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
976
+ quads: {
977
+ p1: {
978
+ x: number;
979
+ y: number;
980
+ };
981
+ p2: {
982
+ x: number;
983
+ y: number;
984
+ };
985
+ p3: {
986
+ x: number;
987
+ y: number;
988
+ };
989
+ p4: {
990
+ x: number;
991
+ y: number;
992
+ };
993
+ }[];
994
+ author?: string | undefined;
995
+ contents?: string | undefined;
996
+ inReplyTo?: string | undefined;
997
+ locked?: boolean | undefined;
998
+ custom?: Record<string, unknown> | undefined;
999
+ } | {
1000
+ id: string;
1001
+ page: number;
1002
+ rect: {
1003
+ x: number;
1004
+ y: number;
1005
+ width: number;
1006
+ height: number;
1007
+ };
1008
+ color: string;
1009
+ opacity: number;
1010
+ createdAt: string;
1011
+ modifiedAt: string;
1012
+ source: "session" | "pdf";
1013
+ type: "note";
1014
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
1015
+ author?: string | undefined;
1016
+ contents?: string | undefined;
1017
+ inReplyTo?: string | undefined;
1018
+ locked?: boolean | undefined;
1019
+ custom?: Record<string, unknown> | undefined;
1020
+ } | {
1021
+ id: string;
1022
+ page: number;
1023
+ rect: {
1024
+ x: number;
1025
+ y: number;
1026
+ width: number;
1027
+ height: number;
1028
+ };
1029
+ color: string;
1030
+ opacity: number;
1031
+ createdAt: string;
1032
+ modifiedAt: string;
1033
+ source: "session" | "pdf";
1034
+ type: "freeText";
1035
+ text: string;
1036
+ fontSize: number;
1037
+ fontFamily: string;
1038
+ align: "left" | "center" | "right";
1039
+ author?: string | undefined;
1040
+ contents?: string | undefined;
1041
+ inReplyTo?: string | undefined;
1042
+ locked?: boolean | undefined;
1043
+ custom?: Record<string, unknown> | undefined;
1044
+ callout?: {
1045
+ x: number;
1046
+ y: number;
1047
+ }[] | undefined;
1048
+ } | {
1049
+ id: string;
1050
+ page: number;
1051
+ rect: {
1052
+ x: number;
1053
+ y: number;
1054
+ width: number;
1055
+ height: number;
1056
+ };
1057
+ color: string;
1058
+ opacity: number;
1059
+ createdAt: string;
1060
+ modifiedAt: string;
1061
+ source: "session" | "pdf";
1062
+ type: "square" | "circle";
1063
+ strokeWidth: number;
1064
+ author?: string | undefined;
1065
+ contents?: string | undefined;
1066
+ inReplyTo?: string | undefined;
1067
+ locked?: boolean | undefined;
1068
+ custom?: Record<string, unknown> | undefined;
1069
+ fill?: string | undefined;
1070
+ } | {
1071
+ id: string;
1072
+ page: number;
1073
+ rect: {
1074
+ x: number;
1075
+ y: number;
1076
+ width: number;
1077
+ height: number;
1078
+ };
1079
+ color: string;
1080
+ opacity: number;
1081
+ createdAt: string;
1082
+ modifiedAt: string;
1083
+ source: "session" | "pdf";
1084
+ type: "line";
1085
+ start: {
1086
+ x: number;
1087
+ y: number;
1088
+ };
1089
+ end: {
1090
+ x: number;
1091
+ y: number;
1092
+ };
1093
+ strokeWidth: number;
1094
+ author?: string | undefined;
1095
+ contents?: string | undefined;
1096
+ inReplyTo?: string | undefined;
1097
+ locked?: boolean | undefined;
1098
+ custom?: Record<string, unknown> | undefined;
1099
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
1100
+ } | {
1101
+ id: string;
1102
+ page: number;
1103
+ rect: {
1104
+ x: number;
1105
+ y: number;
1106
+ width: number;
1107
+ height: number;
1108
+ };
1109
+ color: string;
1110
+ opacity: number;
1111
+ createdAt: string;
1112
+ modifiedAt: string;
1113
+ source: "session" | "pdf";
1114
+ type: "polyline" | "polygon";
1115
+ vertices: {
1116
+ x: number;
1117
+ y: number;
1118
+ }[];
1119
+ strokeWidth: number;
1120
+ author?: string | undefined;
1121
+ contents?: string | undefined;
1122
+ inReplyTo?: string | undefined;
1123
+ locked?: boolean | undefined;
1124
+ custom?: Record<string, unknown> | undefined;
1125
+ fill?: string | undefined;
1126
+ } | {
1127
+ id: string;
1128
+ page: number;
1129
+ rect: {
1130
+ x: number;
1131
+ y: number;
1132
+ width: number;
1133
+ height: number;
1134
+ };
1135
+ color: string;
1136
+ opacity: number;
1137
+ createdAt: string;
1138
+ modifiedAt: string;
1139
+ source: "session" | "pdf";
1140
+ type: "ink";
1141
+ paths: {
1142
+ x: number;
1143
+ y: number;
1144
+ }[][];
1145
+ strokeWidth: number;
1146
+ author?: string | undefined;
1147
+ contents?: string | undefined;
1148
+ inReplyTo?: string | undefined;
1149
+ locked?: boolean | undefined;
1150
+ custom?: Record<string, unknown> | undefined;
1151
+ } | {
1152
+ id: string;
1153
+ page: number;
1154
+ rect: {
1155
+ x: number;
1156
+ y: number;
1157
+ width: number;
1158
+ height: number;
1159
+ };
1160
+ color: string;
1161
+ opacity: number;
1162
+ createdAt: string;
1163
+ modifiedAt: string;
1164
+ source: "session" | "pdf";
1165
+ type: "redact";
1166
+ origin: "user" | "suggested";
1167
+ fill: string;
1168
+ author?: string | undefined;
1169
+ contents?: string | undefined;
1170
+ inReplyTo?: string | undefined;
1171
+ locked?: boolean | undefined;
1172
+ custom?: Record<string, unknown> | undefined;
1173
+ quads?: {
1174
+ p1: {
1175
+ x: number;
1176
+ y: number;
1177
+ };
1178
+ p2: {
1179
+ x: number;
1180
+ y: number;
1181
+ };
1182
+ p3: {
1183
+ x: number;
1184
+ y: number;
1185
+ };
1186
+ p4: {
1187
+ x: number;
1188
+ y: number;
1189
+ };
1190
+ }[] | undefined;
1191
+ suggestion?: {
1192
+ confidence: number;
1193
+ jobId?: string | undefined;
1194
+ reason?: string | undefined;
1195
+ explanation?: string | undefined;
1196
+ recommendation?: "redact" | "review" | "keep" | undefined;
1197
+ } | undefined;
1198
+ overlayText?: string | undefined;
1199
+ } | undefined;
1200
+ update: (id: string, patch: Partial<Annotation>) => {
1201
+ id: string;
1202
+ page: number;
1203
+ rect: {
1204
+ x: number;
1205
+ y: number;
1206
+ width: number;
1207
+ height: number;
1208
+ };
1209
+ color: string;
1210
+ opacity: number;
1211
+ createdAt: string;
1212
+ modifiedAt: string;
1213
+ source: "session" | "pdf";
1214
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
1215
+ quads: {
1216
+ p1: {
1217
+ x: number;
1218
+ y: number;
1219
+ };
1220
+ p2: {
1221
+ x: number;
1222
+ y: number;
1223
+ };
1224
+ p3: {
1225
+ x: number;
1226
+ y: number;
1227
+ };
1228
+ p4: {
1229
+ x: number;
1230
+ y: number;
1231
+ };
1232
+ }[];
1233
+ author?: string | undefined;
1234
+ contents?: string | undefined;
1235
+ inReplyTo?: string | undefined;
1236
+ locked?: boolean | undefined;
1237
+ custom?: Record<string, unknown> | undefined;
1238
+ } | {
1239
+ id: string;
1240
+ page: number;
1241
+ rect: {
1242
+ x: number;
1243
+ y: number;
1244
+ width: number;
1245
+ height: number;
1246
+ };
1247
+ color: string;
1248
+ opacity: number;
1249
+ createdAt: string;
1250
+ modifiedAt: string;
1251
+ source: "session" | "pdf";
1252
+ type: "note";
1253
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
1254
+ author?: string | undefined;
1255
+ contents?: string | undefined;
1256
+ inReplyTo?: string | undefined;
1257
+ locked?: boolean | undefined;
1258
+ custom?: Record<string, unknown> | undefined;
1259
+ } | {
1260
+ id: string;
1261
+ page: number;
1262
+ rect: {
1263
+ x: number;
1264
+ y: number;
1265
+ width: number;
1266
+ height: number;
1267
+ };
1268
+ color: string;
1269
+ opacity: number;
1270
+ createdAt: string;
1271
+ modifiedAt: string;
1272
+ source: "session" | "pdf";
1273
+ type: "freeText";
1274
+ text: string;
1275
+ fontSize: number;
1276
+ fontFamily: string;
1277
+ align: "left" | "center" | "right";
1278
+ author?: string | undefined;
1279
+ contents?: string | undefined;
1280
+ inReplyTo?: string | undefined;
1281
+ locked?: boolean | undefined;
1282
+ custom?: Record<string, unknown> | undefined;
1283
+ callout?: {
1284
+ x: number;
1285
+ y: number;
1286
+ }[] | undefined;
1287
+ } | {
1288
+ id: string;
1289
+ page: number;
1290
+ rect: {
1291
+ x: number;
1292
+ y: number;
1293
+ width: number;
1294
+ height: number;
1295
+ };
1296
+ color: string;
1297
+ opacity: number;
1298
+ createdAt: string;
1299
+ modifiedAt: string;
1300
+ source: "session" | "pdf";
1301
+ type: "square" | "circle";
1302
+ strokeWidth: number;
1303
+ author?: string | undefined;
1304
+ contents?: string | undefined;
1305
+ inReplyTo?: string | undefined;
1306
+ locked?: boolean | undefined;
1307
+ custom?: Record<string, unknown> | undefined;
1308
+ fill?: string | undefined;
1309
+ } | {
1310
+ id: string;
1311
+ page: number;
1312
+ rect: {
1313
+ x: number;
1314
+ y: number;
1315
+ width: number;
1316
+ height: number;
1317
+ };
1318
+ color: string;
1319
+ opacity: number;
1320
+ createdAt: string;
1321
+ modifiedAt: string;
1322
+ source: "session" | "pdf";
1323
+ type: "line";
1324
+ start: {
1325
+ x: number;
1326
+ y: number;
1327
+ };
1328
+ end: {
1329
+ x: number;
1330
+ y: number;
1331
+ };
1332
+ strokeWidth: number;
1333
+ author?: string | undefined;
1334
+ contents?: string | undefined;
1335
+ inReplyTo?: string | undefined;
1336
+ locked?: boolean | undefined;
1337
+ custom?: Record<string, unknown> | undefined;
1338
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
1339
+ } | {
1340
+ id: string;
1341
+ page: number;
1342
+ rect: {
1343
+ x: number;
1344
+ y: number;
1345
+ width: number;
1346
+ height: number;
1347
+ };
1348
+ color: string;
1349
+ opacity: number;
1350
+ createdAt: string;
1351
+ modifiedAt: string;
1352
+ source: "session" | "pdf";
1353
+ type: "polyline" | "polygon";
1354
+ vertices: {
1355
+ x: number;
1356
+ y: number;
1357
+ }[];
1358
+ strokeWidth: number;
1359
+ author?: string | undefined;
1360
+ contents?: string | undefined;
1361
+ inReplyTo?: string | undefined;
1362
+ locked?: boolean | undefined;
1363
+ custom?: Record<string, unknown> | undefined;
1364
+ fill?: string | undefined;
1365
+ } | {
1366
+ id: string;
1367
+ page: number;
1368
+ rect: {
1369
+ x: number;
1370
+ y: number;
1371
+ width: number;
1372
+ height: number;
1373
+ };
1374
+ color: string;
1375
+ opacity: number;
1376
+ createdAt: string;
1377
+ modifiedAt: string;
1378
+ source: "session" | "pdf";
1379
+ type: "ink";
1380
+ paths: {
1381
+ x: number;
1382
+ y: number;
1383
+ }[][];
1384
+ strokeWidth: number;
1385
+ author?: string | undefined;
1386
+ contents?: string | undefined;
1387
+ inReplyTo?: string | undefined;
1388
+ locked?: boolean | undefined;
1389
+ custom?: Record<string, unknown> | undefined;
1390
+ } | {
1391
+ id: string;
1392
+ page: number;
1393
+ rect: {
1394
+ x: number;
1395
+ y: number;
1396
+ width: number;
1397
+ height: number;
1398
+ };
1399
+ color: string;
1400
+ opacity: number;
1401
+ createdAt: string;
1402
+ modifiedAt: string;
1403
+ source: "session" | "pdf";
1404
+ type: "redact";
1405
+ origin: "user" | "suggested";
1406
+ fill: string;
1407
+ author?: string | undefined;
1408
+ contents?: string | undefined;
1409
+ inReplyTo?: string | undefined;
1410
+ locked?: boolean | undefined;
1411
+ custom?: Record<string, unknown> | undefined;
1412
+ quads?: {
1413
+ p1: {
1414
+ x: number;
1415
+ y: number;
1416
+ };
1417
+ p2: {
1418
+ x: number;
1419
+ y: number;
1420
+ };
1421
+ p3: {
1422
+ x: number;
1423
+ y: number;
1424
+ };
1425
+ p4: {
1426
+ x: number;
1427
+ y: number;
1428
+ };
1429
+ }[] | undefined;
1430
+ suggestion?: {
1431
+ confidence: number;
1432
+ jobId?: string | undefined;
1433
+ reason?: string | undefined;
1434
+ explanation?: string | undefined;
1435
+ recommendation?: "redact" | "review" | "keep" | undefined;
1436
+ } | undefined;
1437
+ overlayText?: string | undefined;
1438
+ } | undefined;
1439
+ remove: (id: string) => boolean;
1440
+ select: (ids: string[]) => void | undefined;
1441
+ /** Keeps a suggested redaction as the user's own, in the default redaction colour. */
1442
+ accept: (id: string) => {
1443
+ id: string;
1444
+ page: number;
1445
+ rect: {
1446
+ x: number;
1447
+ y: number;
1448
+ width: number;
1449
+ height: number;
1450
+ };
1451
+ color: string;
1452
+ opacity: number;
1453
+ createdAt: string;
1454
+ modifiedAt: string;
1455
+ source: "session" | "pdf";
1456
+ type: "highlight" | "underline" | "strikeout" | "squiggly";
1457
+ quads: {
1458
+ p1: {
1459
+ x: number;
1460
+ y: number;
1461
+ };
1462
+ p2: {
1463
+ x: number;
1464
+ y: number;
1465
+ };
1466
+ p3: {
1467
+ x: number;
1468
+ y: number;
1469
+ };
1470
+ p4: {
1471
+ x: number;
1472
+ y: number;
1473
+ };
1474
+ }[];
1475
+ author?: string | undefined;
1476
+ contents?: string | undefined;
1477
+ inReplyTo?: string | undefined;
1478
+ locked?: boolean | undefined;
1479
+ custom?: Record<string, unknown> | undefined;
1480
+ } | {
1481
+ id: string;
1482
+ page: number;
1483
+ rect: {
1484
+ x: number;
1485
+ y: number;
1486
+ width: number;
1487
+ height: number;
1488
+ };
1489
+ color: string;
1490
+ opacity: number;
1491
+ createdAt: string;
1492
+ modifiedAt: string;
1493
+ source: "session" | "pdf";
1494
+ type: "note";
1495
+ icon: "note" | "comment" | "help" | "insert" | "key" | "paragraph";
1496
+ author?: string | undefined;
1497
+ contents?: string | undefined;
1498
+ inReplyTo?: string | undefined;
1499
+ locked?: boolean | undefined;
1500
+ custom?: Record<string, unknown> | undefined;
1501
+ } | {
1502
+ id: string;
1503
+ page: number;
1504
+ rect: {
1505
+ x: number;
1506
+ y: number;
1507
+ width: number;
1508
+ height: number;
1509
+ };
1510
+ color: string;
1511
+ opacity: number;
1512
+ createdAt: string;
1513
+ modifiedAt: string;
1514
+ source: "session" | "pdf";
1515
+ type: "freeText";
1516
+ text: string;
1517
+ fontSize: number;
1518
+ fontFamily: string;
1519
+ align: "left" | "center" | "right";
1520
+ author?: string | undefined;
1521
+ contents?: string | undefined;
1522
+ inReplyTo?: string | undefined;
1523
+ locked?: boolean | undefined;
1524
+ custom?: Record<string, unknown> | undefined;
1525
+ callout?: {
1526
+ x: number;
1527
+ y: number;
1528
+ }[] | undefined;
1529
+ } | {
1530
+ id: string;
1531
+ page: number;
1532
+ rect: {
1533
+ x: number;
1534
+ y: number;
1535
+ width: number;
1536
+ height: number;
1537
+ };
1538
+ color: string;
1539
+ opacity: number;
1540
+ createdAt: string;
1541
+ modifiedAt: string;
1542
+ source: "session" | "pdf";
1543
+ type: "square" | "circle";
1544
+ strokeWidth: number;
1545
+ author?: string | undefined;
1546
+ contents?: string | undefined;
1547
+ inReplyTo?: string | undefined;
1548
+ locked?: boolean | undefined;
1549
+ custom?: Record<string, unknown> | undefined;
1550
+ fill?: string | undefined;
1551
+ } | {
1552
+ id: string;
1553
+ page: number;
1554
+ rect: {
1555
+ x: number;
1556
+ y: number;
1557
+ width: number;
1558
+ height: number;
1559
+ };
1560
+ color: string;
1561
+ opacity: number;
1562
+ createdAt: string;
1563
+ modifiedAt: string;
1564
+ source: "session" | "pdf";
1565
+ type: "line";
1566
+ start: {
1567
+ x: number;
1568
+ y: number;
1569
+ };
1570
+ end: {
1571
+ x: number;
1572
+ y: number;
1573
+ };
1574
+ strokeWidth: number;
1575
+ author?: string | undefined;
1576
+ contents?: string | undefined;
1577
+ inReplyTo?: string | undefined;
1578
+ locked?: boolean | undefined;
1579
+ custom?: Record<string, unknown> | undefined;
1580
+ endings?: ["square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash", "square" | "circle" | "none" | "openArrow" | "closedArrow" | "diamond" | "butt" | "slash"] | undefined;
1581
+ } | {
1582
+ id: string;
1583
+ page: number;
1584
+ rect: {
1585
+ x: number;
1586
+ y: number;
1587
+ width: number;
1588
+ height: number;
1589
+ };
1590
+ color: string;
1591
+ opacity: number;
1592
+ createdAt: string;
1593
+ modifiedAt: string;
1594
+ source: "session" | "pdf";
1595
+ type: "polyline" | "polygon";
1596
+ vertices: {
1597
+ x: number;
1598
+ y: number;
1599
+ }[];
1600
+ strokeWidth: number;
1601
+ author?: string | undefined;
1602
+ contents?: string | undefined;
1603
+ inReplyTo?: string | undefined;
1604
+ locked?: boolean | undefined;
1605
+ custom?: Record<string, unknown> | undefined;
1606
+ fill?: string | undefined;
1607
+ } | {
1608
+ id: string;
1609
+ page: number;
1610
+ rect: {
1611
+ x: number;
1612
+ y: number;
1613
+ width: number;
1614
+ height: number;
1615
+ };
1616
+ color: string;
1617
+ opacity: number;
1618
+ createdAt: string;
1619
+ modifiedAt: string;
1620
+ source: "session" | "pdf";
1621
+ type: "ink";
1622
+ paths: {
1623
+ x: number;
1624
+ y: number;
1625
+ }[][];
1626
+ strokeWidth: number;
1627
+ author?: string | undefined;
1628
+ contents?: string | undefined;
1629
+ inReplyTo?: string | undefined;
1630
+ locked?: boolean | undefined;
1631
+ custom?: Record<string, unknown> | undefined;
1632
+ } | {
1633
+ id: string;
1634
+ page: number;
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
+ type: "redact";
1647
+ origin: "user" | "suggested";
1648
+ fill: string;
1649
+ author?: string | undefined;
1650
+ contents?: string | undefined;
1651
+ inReplyTo?: string | undefined;
1652
+ locked?: boolean | undefined;
1653
+ custom?: Record<string, unknown> | undefined;
1654
+ quads?: {
1655
+ p1: {
1656
+ x: number;
1657
+ y: number;
1658
+ };
1659
+ p2: {
1660
+ x: number;
1661
+ y: number;
1662
+ };
1663
+ p3: {
1664
+ x: number;
1665
+ y: number;
1666
+ };
1667
+ p4: {
1668
+ x: number;
1669
+ y: number;
1670
+ };
1671
+ }[] | undefined;
1672
+ suggestion?: {
1673
+ confidence: number;
1674
+ jobId?: string | undefined;
1675
+ reason?: string | undefined;
1676
+ explanation?: string | undefined;
1677
+ recommendation?: "redact" | "review" | "keep" | undefined;
1678
+ } | undefined;
1679
+ overlayText?: string | undefined;
1680
+ } | undefined;
1681
+ dismiss: (id: string) => boolean;
1682
+ };
1683
+ //# sourceMappingURL=useAnnotations.svelte.d.ts.map