@prose-reader/core 0.0.48 → 0.0.49

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.
@@ -41,7 +41,177 @@ export declare const createManualViewportNavigator: ({ navigator, spineItemManag
41
41
  };
42
42
  x: number;
43
43
  y: number;
44
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
44
+ spineItem?: {
45
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
46
+ blankPagePosition: "before" | "after" | "none";
47
+ minimumWidth: number;
48
+ spreadPosition: "none" | "right" | "left";
49
+ }) => {
50
+ width: number;
51
+ height: number;
52
+ };
53
+ item: {
54
+ id: string;
55
+ href: string;
56
+ path: string;
57
+ renditionLayout: "reflowable" | "pre-paginated";
58
+ progressionWeight: number;
59
+ pageSpreadLeft: true | undefined;
60
+ pageSpreadRight: true | undefined;
61
+ mediaType?: string | undefined;
62
+ };
63
+ load: () => void;
64
+ adjustPositionOfElement: ({ right, left, top }: {
65
+ right?: number | undefined;
66
+ left?: number | undefined;
67
+ top?: number | undefined;
68
+ }) => void;
69
+ getElementDimensions: () => {
70
+ width: number;
71
+ height: number;
72
+ };
73
+ getHtmlFromResource: (response: Response) => Promise<string>;
74
+ getResource: () => Promise<Response>;
75
+ translateFramePositionIntoPage: (position: {
76
+ clientX: number;
77
+ clientY: number;
78
+ }) => {
79
+ clientX: number;
80
+ clientY: number;
81
+ };
82
+ setLayoutDirty: () => void;
83
+ injectStyle: (cssText: string) => void;
84
+ loadContent: () => void;
85
+ unloadContent: () => void;
86
+ spineItemFrame: {
87
+ getIsLoaded: () => boolean;
88
+ getIsReady: () => boolean;
89
+ getViewportDimensions: () => {
90
+ width: number;
91
+ height: number;
92
+ } | undefined;
93
+ getFrameElement: () => HTMLIFrameElement | undefined;
94
+ getHtmlFromResource: (response: Response) => Promise<string>;
95
+ load: () => void;
96
+ unload: () => void;
97
+ staticLayout: (size: {
98
+ width: number;
99
+ height: number;
100
+ }) => void;
101
+ getManipulableFrame: () => {
102
+ frame: HTMLIFrameElement;
103
+ removeStyle: (id: string) => void;
104
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
105
+ } | undefined;
106
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
107
+ isUsingVerticalWriting: () => boolean;
108
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
109
+ destroy: () => void;
110
+ $: {
111
+ unload$: import("rxjs").Observable<void>;
112
+ unloaded$: import("rxjs").Observable<void>;
113
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
114
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
115
+ isReady$: import("rxjs").Observable<boolean>;
116
+ contentLayoutChange$: import("rxjs").Observable<{
117
+ isFirstLayout: boolean;
118
+ } | {
119
+ isFirstLayout: boolean;
120
+ }>;
121
+ };
122
+ };
123
+ element: HTMLElement;
124
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
125
+ getViewPortInformation: () => {
126
+ computedScale: number;
127
+ computedWidthScale: number;
128
+ viewportDimensions: {
129
+ width: number;
130
+ height: number;
131
+ };
132
+ } | undefined;
133
+ isImageType: () => boolean;
134
+ isReady: () => boolean;
135
+ destroy: () => void;
136
+ isUsingVerticalWriting: () => boolean | undefined;
137
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
138
+ manipulateSpineItem: (cb: (options: {
139
+ container: HTMLElement;
140
+ item: {
141
+ id: string;
142
+ href: string;
143
+ path: string;
144
+ renditionLayout: "reflowable" | "pre-paginated";
145
+ progressionWeight: number;
146
+ pageSpreadLeft: true | undefined;
147
+ pageSpreadRight: true | undefined;
148
+ mediaType?: string | undefined;
149
+ };
150
+ overlayElement: HTMLDivElement;
151
+ } & ({
152
+ frame: HTMLIFrameElement;
153
+ removeStyle: (id: string) => void;
154
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
155
+ } | {
156
+ frame: undefined;
157
+ removeStyle: (id: string) => void;
158
+ addStyle: (id: string, style: string) => void;
159
+ })) => boolean) => boolean;
160
+ executeOnLayoutBeforeMeasurementHook: (options: {
161
+ minimumWidth: number;
162
+ }) => void;
163
+ selectionTracker: {
164
+ track: (frameToTrack: HTMLIFrameElement) => void;
165
+ destroy: () => void;
166
+ isSelecting: () => boolean;
167
+ getSelection: () => Selection | undefined;
168
+ $: import("rxjs").Observable<{
169
+ event: "selectionchange";
170
+ data: Selection | null;
171
+ } | {
172
+ event: "selectstart";
173
+ data: Selection | null;
174
+ } | {
175
+ event: "selectend";
176
+ data: Selection | null;
177
+ }>;
178
+ };
179
+ fingerTracker: {
180
+ track: (frame: HTMLIFrameElement) => void;
181
+ getFingerPositionInIframe(): {
182
+ x: number | undefined;
183
+ y: number | undefined;
184
+ } | undefined;
185
+ destroy: () => void;
186
+ $: import("rxjs").Observable<{
187
+ event: "fingermove";
188
+ data: {
189
+ x: number;
190
+ y: number;
191
+ };
192
+ } | {
193
+ event: "fingerout";
194
+ data: undefined;
195
+ }>;
196
+ };
197
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
198
+ columnHeight: number;
199
+ columnWidth: number;
200
+ width: number;
201
+ };
202
+ getDimensionsForPaginatedContent: () => {
203
+ columnHeight: number;
204
+ columnWidth: number;
205
+ };
206
+ $: {
207
+ contentLayout$: import("rxjs").Observable<{
208
+ isFirstLayout: boolean;
209
+ isReady: boolean;
210
+ }>;
211
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
212
+ isReady$: import("rxjs").Observable<boolean>;
213
+ };
214
+ } | undefined;
45
215
  url: URL;
46
216
  } | {
47
217
  animate: boolean;
@@ -50,13 +220,353 @@ export declare const createManualViewportNavigator: ({ navigator, spineItemManag
50
220
  };
51
221
  x: number;
52
222
  y: number;
53
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
223
+ spineItem?: {
224
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
225
+ blankPagePosition: "before" | "after" | "none";
226
+ minimumWidth: number;
227
+ spreadPosition: "none" | "right" | "left";
228
+ }) => {
229
+ width: number;
230
+ height: number;
231
+ };
232
+ item: {
233
+ id: string;
234
+ href: string;
235
+ path: string;
236
+ renditionLayout: "reflowable" | "pre-paginated";
237
+ progressionWeight: number;
238
+ pageSpreadLeft: true | undefined;
239
+ pageSpreadRight: true | undefined;
240
+ mediaType?: string | undefined;
241
+ };
242
+ load: () => void;
243
+ adjustPositionOfElement: ({ right, left, top }: {
244
+ right?: number | undefined;
245
+ left?: number | undefined;
246
+ top?: number | undefined;
247
+ }) => void;
248
+ getElementDimensions: () => {
249
+ width: number;
250
+ height: number;
251
+ };
252
+ getHtmlFromResource: (response: Response) => Promise<string>;
253
+ getResource: () => Promise<Response>;
254
+ translateFramePositionIntoPage: (position: {
255
+ clientX: number;
256
+ clientY: number;
257
+ }) => {
258
+ clientX: number;
259
+ clientY: number;
260
+ };
261
+ setLayoutDirty: () => void;
262
+ injectStyle: (cssText: string) => void;
263
+ loadContent: () => void;
264
+ unloadContent: () => void;
265
+ spineItemFrame: {
266
+ getIsLoaded: () => boolean;
267
+ getIsReady: () => boolean;
268
+ getViewportDimensions: () => {
269
+ width: number;
270
+ height: number;
271
+ } | undefined;
272
+ getFrameElement: () => HTMLIFrameElement | undefined;
273
+ getHtmlFromResource: (response: Response) => Promise<string>;
274
+ load: () => void;
275
+ unload: () => void;
276
+ staticLayout: (size: {
277
+ width: number;
278
+ height: number;
279
+ }) => void;
280
+ getManipulableFrame: () => {
281
+ frame: HTMLIFrameElement;
282
+ removeStyle: (id: string) => void;
283
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
284
+ } | undefined;
285
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
286
+ isUsingVerticalWriting: () => boolean;
287
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
288
+ destroy: () => void;
289
+ $: {
290
+ unload$: import("rxjs").Observable<void>;
291
+ unloaded$: import("rxjs").Observable<void>;
292
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
293
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
294
+ isReady$: import("rxjs").Observable<boolean>;
295
+ contentLayoutChange$: import("rxjs").Observable<{
296
+ isFirstLayout: boolean;
297
+ } | {
298
+ isFirstLayout: boolean;
299
+ }>;
300
+ };
301
+ };
302
+ element: HTMLElement;
303
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
304
+ getViewPortInformation: () => {
305
+ computedScale: number;
306
+ computedWidthScale: number;
307
+ viewportDimensions: {
308
+ width: number;
309
+ height: number;
310
+ };
311
+ } | undefined;
312
+ isImageType: () => boolean;
313
+ isReady: () => boolean;
314
+ destroy: () => void;
315
+ isUsingVerticalWriting: () => boolean | undefined;
316
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
317
+ manipulateSpineItem: (cb: (options: {
318
+ container: HTMLElement;
319
+ item: {
320
+ id: string;
321
+ href: string;
322
+ path: string;
323
+ renditionLayout: "reflowable" | "pre-paginated";
324
+ progressionWeight: number;
325
+ pageSpreadLeft: true | undefined;
326
+ pageSpreadRight: true | undefined;
327
+ mediaType?: string | undefined;
328
+ };
329
+ overlayElement: HTMLDivElement;
330
+ } & ({
331
+ frame: HTMLIFrameElement;
332
+ removeStyle: (id: string) => void;
333
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
334
+ } | {
335
+ frame: undefined;
336
+ removeStyle: (id: string) => void;
337
+ addStyle: (id: string, style: string) => void;
338
+ })) => boolean) => boolean;
339
+ executeOnLayoutBeforeMeasurementHook: (options: {
340
+ minimumWidth: number;
341
+ }) => void;
342
+ selectionTracker: {
343
+ track: (frameToTrack: HTMLIFrameElement) => void;
344
+ destroy: () => void;
345
+ isSelecting: () => boolean;
346
+ getSelection: () => Selection | undefined;
347
+ $: import("rxjs").Observable<{
348
+ event: "selectionchange";
349
+ data: Selection | null;
350
+ } | {
351
+ event: "selectstart";
352
+ data: Selection | null;
353
+ } | {
354
+ event: "selectend";
355
+ data: Selection | null;
356
+ }>;
357
+ };
358
+ fingerTracker: {
359
+ track: (frame: HTMLIFrameElement) => void;
360
+ getFingerPositionInIframe(): {
361
+ x: number | undefined;
362
+ y: number | undefined;
363
+ } | undefined;
364
+ destroy: () => void;
365
+ $: import("rxjs").Observable<{
366
+ event: "fingermove";
367
+ data: {
368
+ x: number;
369
+ y: number;
370
+ };
371
+ } | {
372
+ event: "fingerout";
373
+ data: undefined;
374
+ }>;
375
+ };
376
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
377
+ columnHeight: number;
378
+ columnWidth: number;
379
+ width: number;
380
+ };
381
+ getDimensionsForPaginatedContent: () => {
382
+ columnHeight: number;
383
+ columnWidth: number;
384
+ };
385
+ $: {
386
+ contentLayout$: import("rxjs").Observable<{
387
+ isFirstLayout: boolean;
388
+ isReady: boolean;
389
+ }>;
390
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
391
+ isReady$: import("rxjs").Observable<boolean>;
392
+ };
393
+ } | undefined;
54
394
  } | {
55
395
  lastUserExpectedNavigation: undefined;
56
396
  animate: boolean;
57
397
  x: number;
58
398
  y: number;
59
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
399
+ spineItem?: {
400
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
401
+ blankPagePosition: "before" | "after" | "none";
402
+ minimumWidth: number;
403
+ spreadPosition: "none" | "right" | "left";
404
+ }) => {
405
+ width: number;
406
+ height: number;
407
+ };
408
+ item: {
409
+ id: string;
410
+ href: string;
411
+ path: string;
412
+ renditionLayout: "reflowable" | "pre-paginated";
413
+ progressionWeight: number;
414
+ pageSpreadLeft: true | undefined;
415
+ pageSpreadRight: true | undefined;
416
+ mediaType?: string | undefined;
417
+ };
418
+ load: () => void;
419
+ adjustPositionOfElement: ({ right, left, top }: {
420
+ right?: number | undefined;
421
+ left?: number | undefined;
422
+ top?: number | undefined;
423
+ }) => void;
424
+ getElementDimensions: () => {
425
+ width: number;
426
+ height: number;
427
+ };
428
+ getHtmlFromResource: (response: Response) => Promise<string>;
429
+ getResource: () => Promise<Response>;
430
+ translateFramePositionIntoPage: (position: {
431
+ clientX: number;
432
+ clientY: number;
433
+ }) => {
434
+ clientX: number;
435
+ clientY: number;
436
+ };
437
+ setLayoutDirty: () => void;
438
+ injectStyle: (cssText: string) => void;
439
+ loadContent: () => void;
440
+ unloadContent: () => void;
441
+ spineItemFrame: {
442
+ getIsLoaded: () => boolean;
443
+ getIsReady: () => boolean;
444
+ getViewportDimensions: () => {
445
+ width: number;
446
+ height: number;
447
+ } | undefined;
448
+ getFrameElement: () => HTMLIFrameElement | undefined;
449
+ getHtmlFromResource: (response: Response) => Promise<string>;
450
+ load: () => void;
451
+ unload: () => void;
452
+ staticLayout: (size: {
453
+ width: number;
454
+ height: number;
455
+ }) => void;
456
+ getManipulableFrame: () => {
457
+ frame: HTMLIFrameElement;
458
+ removeStyle: (id: string) => void;
459
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
460
+ } | undefined;
461
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
462
+ isUsingVerticalWriting: () => boolean;
463
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
464
+ destroy: () => void;
465
+ $: {
466
+ unload$: import("rxjs").Observable<void>;
467
+ unloaded$: import("rxjs").Observable<void>;
468
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
469
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
470
+ isReady$: import("rxjs").Observable<boolean>;
471
+ contentLayoutChange$: import("rxjs").Observable<{
472
+ isFirstLayout: boolean;
473
+ } | {
474
+ isFirstLayout: boolean;
475
+ }>;
476
+ };
477
+ };
478
+ element: HTMLElement;
479
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
480
+ getViewPortInformation: () => {
481
+ computedScale: number;
482
+ computedWidthScale: number;
483
+ viewportDimensions: {
484
+ width: number;
485
+ height: number;
486
+ };
487
+ } | undefined;
488
+ isImageType: () => boolean;
489
+ isReady: () => boolean;
490
+ destroy: () => void;
491
+ isUsingVerticalWriting: () => boolean | undefined;
492
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
493
+ manipulateSpineItem: (cb: (options: {
494
+ container: HTMLElement;
495
+ item: {
496
+ id: string;
497
+ href: string;
498
+ path: string;
499
+ renditionLayout: "reflowable" | "pre-paginated";
500
+ progressionWeight: number;
501
+ pageSpreadLeft: true | undefined;
502
+ pageSpreadRight: true | undefined;
503
+ mediaType?: string | undefined;
504
+ };
505
+ overlayElement: HTMLDivElement;
506
+ } & ({
507
+ frame: HTMLIFrameElement;
508
+ removeStyle: (id: string) => void;
509
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
510
+ } | {
511
+ frame: undefined;
512
+ removeStyle: (id: string) => void;
513
+ addStyle: (id: string, style: string) => void;
514
+ })) => boolean) => boolean;
515
+ executeOnLayoutBeforeMeasurementHook: (options: {
516
+ minimumWidth: number;
517
+ }) => void;
518
+ selectionTracker: {
519
+ track: (frameToTrack: HTMLIFrameElement) => void;
520
+ destroy: () => void;
521
+ isSelecting: () => boolean;
522
+ getSelection: () => Selection | undefined;
523
+ $: import("rxjs").Observable<{
524
+ event: "selectionchange";
525
+ data: Selection | null;
526
+ } | {
527
+ event: "selectstart";
528
+ data: Selection | null;
529
+ } | {
530
+ event: "selectend";
531
+ data: Selection | null;
532
+ }>;
533
+ };
534
+ fingerTracker: {
535
+ track: (frame: HTMLIFrameElement) => void;
536
+ getFingerPositionInIframe(): {
537
+ x: number | undefined;
538
+ y: number | undefined;
539
+ } | undefined;
540
+ destroy: () => void;
541
+ $: import("rxjs").Observable<{
542
+ event: "fingermove";
543
+ data: {
544
+ x: number;
545
+ y: number;
546
+ };
547
+ } | {
548
+ event: "fingerout";
549
+ data: undefined;
550
+ }>;
551
+ };
552
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
553
+ columnHeight: number;
554
+ columnWidth: number;
555
+ width: number;
556
+ };
557
+ getDimensionsForPaginatedContent: () => {
558
+ columnHeight: number;
559
+ columnWidth: number;
560
+ };
561
+ $: {
562
+ contentLayout$: import("rxjs").Observable<{
563
+ isFirstLayout: boolean;
564
+ isReady: boolean;
565
+ }>;
566
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
567
+ isReady$: import("rxjs").Observable<boolean>;
568
+ };
569
+ } | undefined;
60
570
  } | {
61
571
  lastUserExpectedNavigation: {
62
572
  type: "navigate-from-next-item";
@@ -64,7 +574,177 @@ export declare const createManualViewportNavigator: ({ navigator, spineItemManag
64
574
  animate: boolean;
65
575
  x: number;
66
576
  y: number;
67
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
577
+ spineItem?: {
578
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
579
+ blankPagePosition: "before" | "after" | "none";
580
+ minimumWidth: number;
581
+ spreadPosition: "none" | "right" | "left";
582
+ }) => {
583
+ width: number;
584
+ height: number;
585
+ };
586
+ item: {
587
+ id: string;
588
+ href: string;
589
+ path: string;
590
+ renditionLayout: "reflowable" | "pre-paginated";
591
+ progressionWeight: number;
592
+ pageSpreadLeft: true | undefined;
593
+ pageSpreadRight: true | undefined;
594
+ mediaType?: string | undefined;
595
+ };
596
+ load: () => void;
597
+ adjustPositionOfElement: ({ right, left, top }: {
598
+ right?: number | undefined;
599
+ left?: number | undefined;
600
+ top?: number | undefined;
601
+ }) => void;
602
+ getElementDimensions: () => {
603
+ width: number;
604
+ height: number;
605
+ };
606
+ getHtmlFromResource: (response: Response) => Promise<string>;
607
+ getResource: () => Promise<Response>;
608
+ translateFramePositionIntoPage: (position: {
609
+ clientX: number;
610
+ clientY: number;
611
+ }) => {
612
+ clientX: number;
613
+ clientY: number;
614
+ };
615
+ setLayoutDirty: () => void;
616
+ injectStyle: (cssText: string) => void;
617
+ loadContent: () => void;
618
+ unloadContent: () => void;
619
+ spineItemFrame: {
620
+ getIsLoaded: () => boolean;
621
+ getIsReady: () => boolean;
622
+ getViewportDimensions: () => {
623
+ width: number;
624
+ height: number;
625
+ } | undefined;
626
+ getFrameElement: () => HTMLIFrameElement | undefined;
627
+ getHtmlFromResource: (response: Response) => Promise<string>;
628
+ load: () => void;
629
+ unload: () => void;
630
+ staticLayout: (size: {
631
+ width: number;
632
+ height: number;
633
+ }) => void;
634
+ getManipulableFrame: () => {
635
+ frame: HTMLIFrameElement;
636
+ removeStyle: (id: string) => void;
637
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
638
+ } | undefined;
639
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
640
+ isUsingVerticalWriting: () => boolean;
641
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
642
+ destroy: () => void;
643
+ $: {
644
+ unload$: import("rxjs").Observable<void>;
645
+ unloaded$: import("rxjs").Observable<void>;
646
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
647
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
648
+ isReady$: import("rxjs").Observable<boolean>;
649
+ contentLayoutChange$: import("rxjs").Observable<{
650
+ isFirstLayout: boolean;
651
+ } | {
652
+ isFirstLayout: boolean;
653
+ }>;
654
+ };
655
+ };
656
+ element: HTMLElement;
657
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
658
+ getViewPortInformation: () => {
659
+ computedScale: number;
660
+ computedWidthScale: number;
661
+ viewportDimensions: {
662
+ width: number;
663
+ height: number;
664
+ };
665
+ } | undefined;
666
+ isImageType: () => boolean;
667
+ isReady: () => boolean;
668
+ destroy: () => void;
669
+ isUsingVerticalWriting: () => boolean | undefined;
670
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
671
+ manipulateSpineItem: (cb: (options: {
672
+ container: HTMLElement;
673
+ item: {
674
+ id: string;
675
+ href: string;
676
+ path: string;
677
+ renditionLayout: "reflowable" | "pre-paginated";
678
+ progressionWeight: number;
679
+ pageSpreadLeft: true | undefined;
680
+ pageSpreadRight: true | undefined;
681
+ mediaType?: string | undefined;
682
+ };
683
+ overlayElement: HTMLDivElement;
684
+ } & ({
685
+ frame: HTMLIFrameElement;
686
+ removeStyle: (id: string) => void;
687
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
688
+ } | {
689
+ frame: undefined;
690
+ removeStyle: (id: string) => void;
691
+ addStyle: (id: string, style: string) => void;
692
+ })) => boolean) => boolean;
693
+ executeOnLayoutBeforeMeasurementHook: (options: {
694
+ minimumWidth: number;
695
+ }) => void;
696
+ selectionTracker: {
697
+ track: (frameToTrack: HTMLIFrameElement) => void;
698
+ destroy: () => void;
699
+ isSelecting: () => boolean;
700
+ getSelection: () => Selection | undefined;
701
+ $: import("rxjs").Observable<{
702
+ event: "selectionchange";
703
+ data: Selection | null;
704
+ } | {
705
+ event: "selectstart";
706
+ data: Selection | null;
707
+ } | {
708
+ event: "selectend";
709
+ data: Selection | null;
710
+ }>;
711
+ };
712
+ fingerTracker: {
713
+ track: (frame: HTMLIFrameElement) => void;
714
+ getFingerPositionInIframe(): {
715
+ x: number | undefined;
716
+ y: number | undefined;
717
+ } | undefined;
718
+ destroy: () => void;
719
+ $: import("rxjs").Observable<{
720
+ event: "fingermove";
721
+ data: {
722
+ x: number;
723
+ y: number;
724
+ };
725
+ } | {
726
+ event: "fingerout";
727
+ data: undefined;
728
+ }>;
729
+ };
730
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
731
+ columnHeight: number;
732
+ columnWidth: number;
733
+ width: number;
734
+ };
735
+ getDimensionsForPaginatedContent: () => {
736
+ columnHeight: number;
737
+ columnWidth: number;
738
+ };
739
+ $: {
740
+ contentLayout$: import("rxjs").Observable<{
741
+ isFirstLayout: boolean;
742
+ isReady: boolean;
743
+ }>;
744
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
745
+ isReady$: import("rxjs").Observable<boolean>;
746
+ };
747
+ } | undefined;
68
748
  } | {
69
749
  lastUserExpectedNavigation: {
70
750
  type: "navigate-from-previous-item";
@@ -72,13 +752,353 @@ export declare const createManualViewportNavigator: ({ navigator, spineItemManag
72
752
  animate: boolean;
73
753
  x: number;
74
754
  y: number;
75
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
755
+ spineItem?: {
756
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
757
+ blankPagePosition: "before" | "after" | "none";
758
+ minimumWidth: number;
759
+ spreadPosition: "none" | "right" | "left";
760
+ }) => {
761
+ width: number;
762
+ height: number;
763
+ };
764
+ item: {
765
+ id: string;
766
+ href: string;
767
+ path: string;
768
+ renditionLayout: "reflowable" | "pre-paginated";
769
+ progressionWeight: number;
770
+ pageSpreadLeft: true | undefined;
771
+ pageSpreadRight: true | undefined;
772
+ mediaType?: string | undefined;
773
+ };
774
+ load: () => void;
775
+ adjustPositionOfElement: ({ right, left, top }: {
776
+ right?: number | undefined;
777
+ left?: number | undefined;
778
+ top?: number | undefined;
779
+ }) => void;
780
+ getElementDimensions: () => {
781
+ width: number;
782
+ height: number;
783
+ };
784
+ getHtmlFromResource: (response: Response) => Promise<string>;
785
+ getResource: () => Promise<Response>;
786
+ translateFramePositionIntoPage: (position: {
787
+ clientX: number;
788
+ clientY: number;
789
+ }) => {
790
+ clientX: number;
791
+ clientY: number;
792
+ };
793
+ setLayoutDirty: () => void;
794
+ injectStyle: (cssText: string) => void;
795
+ loadContent: () => void;
796
+ unloadContent: () => void;
797
+ spineItemFrame: {
798
+ getIsLoaded: () => boolean;
799
+ getIsReady: () => boolean;
800
+ getViewportDimensions: () => {
801
+ width: number;
802
+ height: number;
803
+ } | undefined;
804
+ getFrameElement: () => HTMLIFrameElement | undefined;
805
+ getHtmlFromResource: (response: Response) => Promise<string>;
806
+ load: () => void;
807
+ unload: () => void;
808
+ staticLayout: (size: {
809
+ width: number;
810
+ height: number;
811
+ }) => void;
812
+ getManipulableFrame: () => {
813
+ frame: HTMLIFrameElement;
814
+ removeStyle: (id: string) => void;
815
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
816
+ } | undefined;
817
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
818
+ isUsingVerticalWriting: () => boolean;
819
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
820
+ destroy: () => void;
821
+ $: {
822
+ unload$: import("rxjs").Observable<void>;
823
+ unloaded$: import("rxjs").Observable<void>;
824
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
825
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
826
+ isReady$: import("rxjs").Observable<boolean>;
827
+ contentLayoutChange$: import("rxjs").Observable<{
828
+ isFirstLayout: boolean;
829
+ } | {
830
+ isFirstLayout: boolean;
831
+ }>;
832
+ };
833
+ };
834
+ element: HTMLElement;
835
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
836
+ getViewPortInformation: () => {
837
+ computedScale: number;
838
+ computedWidthScale: number;
839
+ viewportDimensions: {
840
+ width: number;
841
+ height: number;
842
+ };
843
+ } | undefined;
844
+ isImageType: () => boolean;
845
+ isReady: () => boolean;
846
+ destroy: () => void;
847
+ isUsingVerticalWriting: () => boolean | undefined;
848
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
849
+ manipulateSpineItem: (cb: (options: {
850
+ container: HTMLElement;
851
+ item: {
852
+ id: string;
853
+ href: string;
854
+ path: string;
855
+ renditionLayout: "reflowable" | "pre-paginated";
856
+ progressionWeight: number;
857
+ pageSpreadLeft: true | undefined;
858
+ pageSpreadRight: true | undefined;
859
+ mediaType?: string | undefined;
860
+ };
861
+ overlayElement: HTMLDivElement;
862
+ } & ({
863
+ frame: HTMLIFrameElement;
864
+ removeStyle: (id: string) => void;
865
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
866
+ } | {
867
+ frame: undefined;
868
+ removeStyle: (id: string) => void;
869
+ addStyle: (id: string, style: string) => void;
870
+ })) => boolean) => boolean;
871
+ executeOnLayoutBeforeMeasurementHook: (options: {
872
+ minimumWidth: number;
873
+ }) => void;
874
+ selectionTracker: {
875
+ track: (frameToTrack: HTMLIFrameElement) => void;
876
+ destroy: () => void;
877
+ isSelecting: () => boolean;
878
+ getSelection: () => Selection | undefined;
879
+ $: import("rxjs").Observable<{
880
+ event: "selectionchange";
881
+ data: Selection | null;
882
+ } | {
883
+ event: "selectstart";
884
+ data: Selection | null;
885
+ } | {
886
+ event: "selectend";
887
+ data: Selection | null;
888
+ }>;
889
+ };
890
+ fingerTracker: {
891
+ track: (frame: HTMLIFrameElement) => void;
892
+ getFingerPositionInIframe(): {
893
+ x: number | undefined;
894
+ y: number | undefined;
895
+ } | undefined;
896
+ destroy: () => void;
897
+ $: import("rxjs").Observable<{
898
+ event: "fingermove";
899
+ data: {
900
+ x: number;
901
+ y: number;
902
+ };
903
+ } | {
904
+ event: "fingerout";
905
+ data: undefined;
906
+ }>;
907
+ };
908
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
909
+ columnHeight: number;
910
+ columnWidth: number;
911
+ width: number;
912
+ };
913
+ getDimensionsForPaginatedContent: () => {
914
+ columnHeight: number;
915
+ columnWidth: number;
916
+ };
917
+ $: {
918
+ contentLayout$: import("rxjs").Observable<{
919
+ isFirstLayout: boolean;
920
+ isReady: boolean;
921
+ }>;
922
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
923
+ isReady$: import("rxjs").Observable<boolean>;
924
+ };
925
+ } | undefined;
76
926
  } | {
77
927
  lastUserExpectedNavigation: undefined;
78
928
  animate: boolean;
79
929
  x: number;
80
930
  y: number;
81
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
931
+ spineItem?: {
932
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
933
+ blankPagePosition: "before" | "after" | "none";
934
+ minimumWidth: number;
935
+ spreadPosition: "none" | "right" | "left";
936
+ }) => {
937
+ width: number;
938
+ height: number;
939
+ };
940
+ item: {
941
+ id: string;
942
+ href: string;
943
+ path: string;
944
+ renditionLayout: "reflowable" | "pre-paginated";
945
+ progressionWeight: number;
946
+ pageSpreadLeft: true | undefined;
947
+ pageSpreadRight: true | undefined;
948
+ mediaType?: string | undefined;
949
+ };
950
+ load: () => void;
951
+ adjustPositionOfElement: ({ right, left, top }: {
952
+ right?: number | undefined;
953
+ left?: number | undefined;
954
+ top?: number | undefined;
955
+ }) => void;
956
+ getElementDimensions: () => {
957
+ width: number;
958
+ height: number;
959
+ };
960
+ getHtmlFromResource: (response: Response) => Promise<string>;
961
+ getResource: () => Promise<Response>;
962
+ translateFramePositionIntoPage: (position: {
963
+ clientX: number;
964
+ clientY: number;
965
+ }) => {
966
+ clientX: number;
967
+ clientY: number;
968
+ };
969
+ setLayoutDirty: () => void;
970
+ injectStyle: (cssText: string) => void;
971
+ loadContent: () => void;
972
+ unloadContent: () => void;
973
+ spineItemFrame: {
974
+ getIsLoaded: () => boolean;
975
+ getIsReady: () => boolean;
976
+ getViewportDimensions: () => {
977
+ width: number;
978
+ height: number;
979
+ } | undefined;
980
+ getFrameElement: () => HTMLIFrameElement | undefined;
981
+ getHtmlFromResource: (response: Response) => Promise<string>;
982
+ load: () => void;
983
+ unload: () => void;
984
+ staticLayout: (size: {
985
+ width: number;
986
+ height: number;
987
+ }) => void;
988
+ getManipulableFrame: () => {
989
+ frame: HTMLIFrameElement;
990
+ removeStyle: (id: string) => void;
991
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
992
+ } | undefined;
993
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
994
+ isUsingVerticalWriting: () => boolean;
995
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
996
+ destroy: () => void;
997
+ $: {
998
+ unload$: import("rxjs").Observable<void>;
999
+ unloaded$: import("rxjs").Observable<void>;
1000
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1001
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1002
+ isReady$: import("rxjs").Observable<boolean>;
1003
+ contentLayoutChange$: import("rxjs").Observable<{
1004
+ isFirstLayout: boolean;
1005
+ } | {
1006
+ isFirstLayout: boolean;
1007
+ }>;
1008
+ };
1009
+ };
1010
+ element: HTMLElement;
1011
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1012
+ getViewPortInformation: () => {
1013
+ computedScale: number;
1014
+ computedWidthScale: number;
1015
+ viewportDimensions: {
1016
+ width: number;
1017
+ height: number;
1018
+ };
1019
+ } | undefined;
1020
+ isImageType: () => boolean;
1021
+ isReady: () => boolean;
1022
+ destroy: () => void;
1023
+ isUsingVerticalWriting: () => boolean | undefined;
1024
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1025
+ manipulateSpineItem: (cb: (options: {
1026
+ container: HTMLElement;
1027
+ item: {
1028
+ id: string;
1029
+ href: string;
1030
+ path: string;
1031
+ renditionLayout: "reflowable" | "pre-paginated";
1032
+ progressionWeight: number;
1033
+ pageSpreadLeft: true | undefined;
1034
+ pageSpreadRight: true | undefined;
1035
+ mediaType?: string | undefined;
1036
+ };
1037
+ overlayElement: HTMLDivElement;
1038
+ } & ({
1039
+ frame: HTMLIFrameElement;
1040
+ removeStyle: (id: string) => void;
1041
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1042
+ } | {
1043
+ frame: undefined;
1044
+ removeStyle: (id: string) => void;
1045
+ addStyle: (id: string, style: string) => void;
1046
+ })) => boolean) => boolean;
1047
+ executeOnLayoutBeforeMeasurementHook: (options: {
1048
+ minimumWidth: number;
1049
+ }) => void;
1050
+ selectionTracker: {
1051
+ track: (frameToTrack: HTMLIFrameElement) => void;
1052
+ destroy: () => void;
1053
+ isSelecting: () => boolean;
1054
+ getSelection: () => Selection | undefined;
1055
+ $: import("rxjs").Observable<{
1056
+ event: "selectionchange";
1057
+ data: Selection | null;
1058
+ } | {
1059
+ event: "selectstart";
1060
+ data: Selection | null;
1061
+ } | {
1062
+ event: "selectend";
1063
+ data: Selection | null;
1064
+ }>;
1065
+ };
1066
+ fingerTracker: {
1067
+ track: (frame: HTMLIFrameElement) => void;
1068
+ getFingerPositionInIframe(): {
1069
+ x: number | undefined;
1070
+ y: number | undefined;
1071
+ } | undefined;
1072
+ destroy: () => void;
1073
+ $: import("rxjs").Observable<{
1074
+ event: "fingermove";
1075
+ data: {
1076
+ x: number;
1077
+ y: number;
1078
+ };
1079
+ } | {
1080
+ event: "fingerout";
1081
+ data: undefined;
1082
+ }>;
1083
+ };
1084
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
1085
+ columnHeight: number;
1086
+ columnWidth: number;
1087
+ width: number;
1088
+ };
1089
+ getDimensionsForPaginatedContent: () => {
1090
+ columnHeight: number;
1091
+ columnWidth: number;
1092
+ };
1093
+ $: {
1094
+ contentLayout$: import("rxjs").Observable<{
1095
+ isFirstLayout: boolean;
1096
+ isReady: boolean;
1097
+ }>;
1098
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1099
+ isReady$: import("rxjs").Observable<boolean>;
1100
+ };
1101
+ } | undefined;
82
1102
  } | {
83
1103
  animate: boolean;
84
1104
  lastUserExpectedNavigation: {
@@ -87,13 +1107,353 @@ export declare const createManualViewportNavigator: ({ navigator, spineItemManag
87
1107
  };
88
1108
  x: number;
89
1109
  y: number;
90
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
1110
+ spineItem?: {
1111
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
1112
+ blankPagePosition: "before" | "after" | "none";
1113
+ minimumWidth: number;
1114
+ spreadPosition: "none" | "right" | "left";
1115
+ }) => {
1116
+ width: number;
1117
+ height: number;
1118
+ };
1119
+ item: {
1120
+ id: string;
1121
+ href: string;
1122
+ path: string;
1123
+ renditionLayout: "reflowable" | "pre-paginated";
1124
+ progressionWeight: number;
1125
+ pageSpreadLeft: true | undefined;
1126
+ pageSpreadRight: true | undefined;
1127
+ mediaType?: string | undefined;
1128
+ };
1129
+ load: () => void;
1130
+ adjustPositionOfElement: ({ right, left, top }: {
1131
+ right?: number | undefined;
1132
+ left?: number | undefined;
1133
+ top?: number | undefined;
1134
+ }) => void;
1135
+ getElementDimensions: () => {
1136
+ width: number;
1137
+ height: number;
1138
+ };
1139
+ getHtmlFromResource: (response: Response) => Promise<string>;
1140
+ getResource: () => Promise<Response>;
1141
+ translateFramePositionIntoPage: (position: {
1142
+ clientX: number;
1143
+ clientY: number;
1144
+ }) => {
1145
+ clientX: number;
1146
+ clientY: number;
1147
+ };
1148
+ setLayoutDirty: () => void;
1149
+ injectStyle: (cssText: string) => void;
1150
+ loadContent: () => void;
1151
+ unloadContent: () => void;
1152
+ spineItemFrame: {
1153
+ getIsLoaded: () => boolean;
1154
+ getIsReady: () => boolean;
1155
+ getViewportDimensions: () => {
1156
+ width: number;
1157
+ height: number;
1158
+ } | undefined;
1159
+ getFrameElement: () => HTMLIFrameElement | undefined;
1160
+ getHtmlFromResource: (response: Response) => Promise<string>;
1161
+ load: () => void;
1162
+ unload: () => void;
1163
+ staticLayout: (size: {
1164
+ width: number;
1165
+ height: number;
1166
+ }) => void;
1167
+ getManipulableFrame: () => {
1168
+ frame: HTMLIFrameElement;
1169
+ removeStyle: (id: string) => void;
1170
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1171
+ } | undefined;
1172
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1173
+ isUsingVerticalWriting: () => boolean;
1174
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
1175
+ destroy: () => void;
1176
+ $: {
1177
+ unload$: import("rxjs").Observable<void>;
1178
+ unloaded$: import("rxjs").Observable<void>;
1179
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1180
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1181
+ isReady$: import("rxjs").Observable<boolean>;
1182
+ contentLayoutChange$: import("rxjs").Observable<{
1183
+ isFirstLayout: boolean;
1184
+ } | {
1185
+ isFirstLayout: boolean;
1186
+ }>;
1187
+ };
1188
+ };
1189
+ element: HTMLElement;
1190
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1191
+ getViewPortInformation: () => {
1192
+ computedScale: number;
1193
+ computedWidthScale: number;
1194
+ viewportDimensions: {
1195
+ width: number;
1196
+ height: number;
1197
+ };
1198
+ } | undefined;
1199
+ isImageType: () => boolean;
1200
+ isReady: () => boolean;
1201
+ destroy: () => void;
1202
+ isUsingVerticalWriting: () => boolean | undefined;
1203
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1204
+ manipulateSpineItem: (cb: (options: {
1205
+ container: HTMLElement;
1206
+ item: {
1207
+ id: string;
1208
+ href: string;
1209
+ path: string;
1210
+ renditionLayout: "reflowable" | "pre-paginated";
1211
+ progressionWeight: number;
1212
+ pageSpreadLeft: true | undefined;
1213
+ pageSpreadRight: true | undefined;
1214
+ mediaType?: string | undefined;
1215
+ };
1216
+ overlayElement: HTMLDivElement;
1217
+ } & ({
1218
+ frame: HTMLIFrameElement;
1219
+ removeStyle: (id: string) => void;
1220
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1221
+ } | {
1222
+ frame: undefined;
1223
+ removeStyle: (id: string) => void;
1224
+ addStyle: (id: string, style: string) => void;
1225
+ })) => boolean) => boolean;
1226
+ executeOnLayoutBeforeMeasurementHook: (options: {
1227
+ minimumWidth: number;
1228
+ }) => void;
1229
+ selectionTracker: {
1230
+ track: (frameToTrack: HTMLIFrameElement) => void;
1231
+ destroy: () => void;
1232
+ isSelecting: () => boolean;
1233
+ getSelection: () => Selection | undefined;
1234
+ $: import("rxjs").Observable<{
1235
+ event: "selectionchange";
1236
+ data: Selection | null;
1237
+ } | {
1238
+ event: "selectstart";
1239
+ data: Selection | null;
1240
+ } | {
1241
+ event: "selectend";
1242
+ data: Selection | null;
1243
+ }>;
1244
+ };
1245
+ fingerTracker: {
1246
+ track: (frame: HTMLIFrameElement) => void;
1247
+ getFingerPositionInIframe(): {
1248
+ x: number | undefined;
1249
+ y: number | undefined;
1250
+ } | undefined;
1251
+ destroy: () => void;
1252
+ $: import("rxjs").Observable<{
1253
+ event: "fingermove";
1254
+ data: {
1255
+ x: number;
1256
+ y: number;
1257
+ };
1258
+ } | {
1259
+ event: "fingerout";
1260
+ data: undefined;
1261
+ }>;
1262
+ };
1263
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
1264
+ columnHeight: number;
1265
+ columnWidth: number;
1266
+ width: number;
1267
+ };
1268
+ getDimensionsForPaginatedContent: () => {
1269
+ columnHeight: number;
1270
+ columnWidth: number;
1271
+ };
1272
+ $: {
1273
+ contentLayout$: import("rxjs").Observable<{
1274
+ isFirstLayout: boolean;
1275
+ isReady: boolean;
1276
+ }>;
1277
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1278
+ isReady$: import("rxjs").Observable<boolean>;
1279
+ };
1280
+ } | undefined;
91
1281
  } | {
92
1282
  lastUserExpectedNavigation: undefined;
93
1283
  animate: boolean;
94
1284
  x: number;
95
1285
  y: number;
96
- spineItem?: import("../spineItem/createSpineItem").SpineItem | undefined;
1286
+ spineItem?: {
1287
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition }: {
1288
+ blankPagePosition: "before" | "after" | "none";
1289
+ minimumWidth: number;
1290
+ spreadPosition: "none" | "right" | "left";
1291
+ }) => {
1292
+ width: number;
1293
+ height: number;
1294
+ };
1295
+ item: {
1296
+ id: string;
1297
+ href: string;
1298
+ path: string;
1299
+ renditionLayout: "reflowable" | "pre-paginated";
1300
+ progressionWeight: number;
1301
+ pageSpreadLeft: true | undefined;
1302
+ pageSpreadRight: true | undefined;
1303
+ mediaType?: string | undefined;
1304
+ };
1305
+ load: () => void;
1306
+ adjustPositionOfElement: ({ right, left, top }: {
1307
+ right?: number | undefined;
1308
+ left?: number | undefined;
1309
+ top?: number | undefined;
1310
+ }) => void;
1311
+ getElementDimensions: () => {
1312
+ width: number;
1313
+ height: number;
1314
+ };
1315
+ getHtmlFromResource: (response: Response) => Promise<string>;
1316
+ getResource: () => Promise<Response>;
1317
+ translateFramePositionIntoPage: (position: {
1318
+ clientX: number;
1319
+ clientY: number;
1320
+ }) => {
1321
+ clientX: number;
1322
+ clientY: number;
1323
+ };
1324
+ setLayoutDirty: () => void;
1325
+ injectStyle: (cssText: string) => void;
1326
+ loadContent: () => void;
1327
+ unloadContent: () => void;
1328
+ spineItemFrame: {
1329
+ getIsLoaded: () => boolean;
1330
+ getIsReady: () => boolean;
1331
+ getViewportDimensions: () => {
1332
+ width: number;
1333
+ height: number;
1334
+ } | undefined;
1335
+ getFrameElement: () => HTMLIFrameElement | undefined;
1336
+ getHtmlFromResource: (response: Response) => Promise<string>;
1337
+ load: () => void;
1338
+ unload: () => void;
1339
+ staticLayout: (size: {
1340
+ width: number;
1341
+ height: number;
1342
+ }) => void;
1343
+ getManipulableFrame: () => {
1344
+ frame: HTMLIFrameElement;
1345
+ removeStyle: (id: string) => void;
1346
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1347
+ } | undefined;
1348
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1349
+ isUsingVerticalWriting: () => boolean;
1350
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
1351
+ destroy: () => void;
1352
+ $: {
1353
+ unload$: import("rxjs").Observable<void>;
1354
+ unloaded$: import("rxjs").Observable<void>;
1355
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1356
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1357
+ isReady$: import("rxjs").Observable<boolean>;
1358
+ contentLayoutChange$: import("rxjs").Observable<{
1359
+ isFirstLayout: boolean;
1360
+ } | {
1361
+ isFirstLayout: boolean;
1362
+ }>;
1363
+ };
1364
+ };
1365
+ element: HTMLElement;
1366
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1367
+ getViewPortInformation: () => {
1368
+ computedScale: number;
1369
+ computedWidthScale: number;
1370
+ viewportDimensions: {
1371
+ width: number;
1372
+ height: number;
1373
+ };
1374
+ } | undefined;
1375
+ isImageType: () => boolean;
1376
+ isReady: () => boolean;
1377
+ destroy: () => void;
1378
+ isUsingVerticalWriting: () => boolean | undefined;
1379
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1380
+ manipulateSpineItem: (cb: (options: {
1381
+ container: HTMLElement;
1382
+ item: {
1383
+ id: string;
1384
+ href: string;
1385
+ path: string;
1386
+ renditionLayout: "reflowable" | "pre-paginated";
1387
+ progressionWeight: number;
1388
+ pageSpreadLeft: true | undefined;
1389
+ pageSpreadRight: true | undefined;
1390
+ mediaType?: string | undefined;
1391
+ };
1392
+ overlayElement: HTMLDivElement;
1393
+ } & ({
1394
+ frame: HTMLIFrameElement;
1395
+ removeStyle: (id: string) => void;
1396
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1397
+ } | {
1398
+ frame: undefined;
1399
+ removeStyle: (id: string) => void;
1400
+ addStyle: (id: string, style: string) => void;
1401
+ })) => boolean) => boolean;
1402
+ executeOnLayoutBeforeMeasurementHook: (options: {
1403
+ minimumWidth: number;
1404
+ }) => void;
1405
+ selectionTracker: {
1406
+ track: (frameToTrack: HTMLIFrameElement) => void;
1407
+ destroy: () => void;
1408
+ isSelecting: () => boolean;
1409
+ getSelection: () => Selection | undefined;
1410
+ $: import("rxjs").Observable<{
1411
+ event: "selectionchange";
1412
+ data: Selection | null;
1413
+ } | {
1414
+ event: "selectstart";
1415
+ data: Selection | null;
1416
+ } | {
1417
+ event: "selectend";
1418
+ data: Selection | null;
1419
+ }>;
1420
+ };
1421
+ fingerTracker: {
1422
+ track: (frame: HTMLIFrameElement) => void;
1423
+ getFingerPositionInIframe(): {
1424
+ x: number | undefined;
1425
+ y: number | undefined;
1426
+ } | undefined;
1427
+ destroy: () => void;
1428
+ $: import("rxjs").Observable<{
1429
+ event: "fingermove";
1430
+ data: {
1431
+ x: number;
1432
+ y: number;
1433
+ };
1434
+ } | {
1435
+ event: "fingerout";
1436
+ data: undefined;
1437
+ }>;
1438
+ };
1439
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
1440
+ columnHeight: number;
1441
+ columnWidth: number;
1442
+ width: number;
1443
+ };
1444
+ getDimensionsForPaginatedContent: () => {
1445
+ columnHeight: number;
1446
+ columnWidth: number;
1447
+ };
1448
+ $: {
1449
+ contentLayout$: import("rxjs").Observable<{
1450
+ isFirstLayout: boolean;
1451
+ isReady: boolean;
1452
+ }>;
1453
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1454
+ isReady$: import("rxjs").Observable<boolean>;
1455
+ };
1456
+ } | undefined;
97
1457
  }>;
98
1458
  };
99
1459
  };