@prose-reader/core 0.0.36

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 (73) hide show
  1. package/dist/cfi.d.ts +74 -0
  2. package/dist/constants.d.ts +5 -0
  3. package/dist/context.d.ts +48 -0
  4. package/dist/createReaderWithEnhancer.d.ts +2242 -0
  5. package/dist/enhancers/accessibility.d.ts +2 -0
  6. package/dist/enhancers/chrome.d.ts +2 -0
  7. package/dist/enhancers/composeEnhancer.d.ts +21 -0
  8. package/dist/enhancers/firefox.d.ts +2 -0
  9. package/dist/enhancers/fonts.d.ts +12 -0
  10. package/dist/enhancers/hotkeys.d.ts +2 -0
  11. package/dist/enhancers/layoutEnhancer/createMovingSafePan$.d.ts +3 -0
  12. package/dist/enhancers/layoutEnhancer/layoutEnhancer.d.ts +10 -0
  13. package/dist/enhancers/links.d.ts +12 -0
  14. package/dist/enhancers/media.d.ts +2 -0
  15. package/dist/enhancers/navigation.d.ts +5 -0
  16. package/dist/enhancers/pagination.d.ts +46 -0
  17. package/dist/enhancers/progression.d.ts +15 -0
  18. package/dist/enhancers/resources/index.d.ts +2 -0
  19. package/dist/enhancers/resources/indexedDB.d.ts +6 -0
  20. package/dist/enhancers/resources/resourcesManager.d.ts +6 -0
  21. package/dist/enhancers/theme.d.ts +22 -0
  22. package/dist/enhancers/types.d.ts +28 -0
  23. package/dist/enhancers/utils.d.ts +6 -0
  24. package/dist/enhancers/webkit.d.ts +2 -0
  25. package/dist/enhancers/zoom.d.ts +16 -0
  26. package/dist/frames.d.ts +5 -0
  27. package/dist/index.d.ts +10 -0
  28. package/dist/index.js +701 -0
  29. package/dist/index.js.LICENSE.txt +385 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/pagination.d.ts +65 -0
  32. package/dist/reader.d.ts +63 -0
  33. package/dist/report.d.ts +26 -0
  34. package/dist/selection.d.ts +6 -0
  35. package/dist/settings.d.ts +37 -0
  36. package/dist/spine/cfiLocator.d.ts +257 -0
  37. package/dist/spine/createSpine.d.ts +896 -0
  38. package/dist/spine/eventsHelper.d.ts +11 -0
  39. package/dist/spine/locationResolver.d.ts +479 -0
  40. package/dist/spine/navigationResolver.d.ts +48 -0
  41. package/dist/spine/viewportNavigator/manualViewportNavigator.d.ts +99 -0
  42. package/dist/spine/viewportNavigator/panViewportNavigator.d.ts +50 -0
  43. package/dist/spine/viewportNavigator/scrollViewportNavigator.d.ts +23 -0
  44. package/dist/spine/viewportNavigator/viewportNavigator.d.ts +85 -0
  45. package/dist/spineItem/commonSpineItem.d.ts +160 -0
  46. package/dist/spineItem/createSpineItem.d.ts +458 -0
  47. package/dist/spineItem/frameItem/createFrame$.d.ts +1 -0
  48. package/dist/spineItem/frameItem/createFrameManipulator.d.ts +5 -0
  49. package/dist/spineItem/frameItem/createHtmlPageFromResource.d.ts +2 -0
  50. package/dist/spineItem/frameItem/frameItem.d.ts +49 -0
  51. package/dist/spineItem/frameItem/loader.d.ts +27 -0
  52. package/dist/spineItem/index.d.ts +458 -0
  53. package/dist/spineItem/locationResolver.d.ts +27 -0
  54. package/dist/spineItem/navigationResolver.d.ts +23 -0
  55. package/dist/spineItem/prePaginatedSpineItem.d.ts +223 -0
  56. package/dist/spineItem/reflowableSpineItem.d.ts +222 -0
  57. package/dist/spineItem/trackers.d.ts +34 -0
  58. package/dist/spineItemManager.d.ts +264 -0
  59. package/dist/tryEnhancer/compose.d.ts +20 -0
  60. package/dist/tryEnhancer/createReader.d.ts +3 -0
  61. package/dist/tryEnhancer/enhancer.d.ts +24 -0
  62. package/dist/tryEnhancer/index.d.ts +1 -0
  63. package/dist/types/Hook.d.ts +70 -0
  64. package/dist/types/index.d.ts +16 -0
  65. package/dist/utils/compose.d.ts +8 -0
  66. package/dist/utils/contentType.d.ts +2 -0
  67. package/dist/utils/dom.d.ts +19 -0
  68. package/dist/utils/manifest.d.ts +2 -0
  69. package/dist/utils/objects.d.ts +6 -0
  70. package/dist/utils/objects.test.d.ts +1 -0
  71. package/dist/utils/rxjs.d.ts +4 -0
  72. package/dist/utils/url.d.ts +1 -0
  73. package/package.json +44 -0
@@ -0,0 +1,2242 @@
1
+ import { ComposableEnhancer, ComposeEnhancer } from './enhancers/composeEnhancer';
2
+ import { Enhancer } from './enhancers/types';
3
+ import { Reader as ReaderPublicApi } from './reader';
4
+ declare const withPublicApiOnly: <Api extends {
5
+ context: any;
6
+ registerHook: any;
7
+ spine: any;
8
+ manipulateSpineItems: any;
9
+ manipulateContainer: any;
10
+ moveTo: any;
11
+ turnLeft: any;
12
+ turnRight: any;
13
+ goToPageOfCurrentChapter: any;
14
+ goToPage: any;
15
+ goToUrl: any;
16
+ goToCfi: any;
17
+ goToSpineItem: any;
18
+ getFocusedSpineItemIndex: any;
19
+ getSpineItem: any;
20
+ getSpineItems: any;
21
+ getAbsolutePositionOf: any;
22
+ getSelection: any;
23
+ isSelecting: any;
24
+ normalizeEventForViewport: any;
25
+ getCfiMetaInformation: any;
26
+ resolveCfi: any;
27
+ generateCfi: any;
28
+ locator: any;
29
+ getCurrentNavigationPosition: any;
30
+ getCurrentViewportPosition: any;
31
+ layout: any;
32
+ load: any;
33
+ destroy: any;
34
+ setSettings: any;
35
+ $: any;
36
+ }>(reader: Api) => Omit<Api, "context" | "spine" | "manipulateSpineItems" | "manipulateContainer" | "getFocusedSpineItemIndex" | "getSpineItem" | "getAbsolutePositionOf" | "getCfiMetaInformation" | "resolveCfi" | "generateCfi" | "locator" | "getCurrentNavigationPosition">;
37
+ declare type ReaderPublicApiWithSafeExposedKeys = ReturnType<typeof withPublicApiOnly>;
38
+ declare type RemovedKeysOnly = keyof Omit<ReaderPublicApi, keyof ReaderPublicApiWithSafeExposedKeys>;
39
+ declare const internalEnhancer: ComposeEnhancer<Enhancer<{}, {
40
+ progression: {
41
+ getPercentageEstimate: (context: {
42
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
43
+ isRTL: () => boolean;
44
+ areAllItemsPrePaginated: () => boolean;
45
+ destroy: () => void;
46
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
47
+ getCalculatedInnerMargin: () => number;
48
+ getVisibleAreaRect: () => {
49
+ width: number;
50
+ height: number;
51
+ x: number;
52
+ y: number;
53
+ };
54
+ shouldDisplaySpread: () => boolean;
55
+ setHasVerticalWriting: () => void;
56
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
57
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
58
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
59
+ getPageSize: () => {
60
+ width: number;
61
+ height: number;
62
+ };
63
+ getSettings: () => import("./settings").PublicSettings & {
64
+ computedPageTurnMode: "controlled" | "scrollable";
65
+ computedPageTurnDirection: "vertical" | "horizontal";
66
+ computedPageTurnAnimation: "none" | "fade" | "slide";
67
+ computedPageTurnAnimationDuration: number;
68
+ computedSnapAnimationDuration: number;
69
+ };
70
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
71
+ $: {
72
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
73
+ destroy$: import("rxjs").Observable<void>;
74
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
75
+ computedPageTurnMode: "controlled" | "scrollable";
76
+ computedPageTurnDirection: "vertical" | "horizontal";
77
+ computedPageTurnAnimation: "none" | "fade" | "slide";
78
+ computedPageTurnAnimationDuration: number;
79
+ computedSnapAnimationDuration: number;
80
+ }>;
81
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
82
+ };
83
+ }, currentSpineIndex: number, numberOfPages: number, pageIndex: number, currentPosition: {
84
+ x: number;
85
+ y: number;
86
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
87
+ getScrollPercentageWithinItem: (context: {
88
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
89
+ isRTL: () => boolean;
90
+ areAllItemsPrePaginated: () => boolean;
91
+ destroy: () => void;
92
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
93
+ getCalculatedInnerMargin: () => number;
94
+ getVisibleAreaRect: () => {
95
+ width: number;
96
+ height: number;
97
+ x: number;
98
+ y: number;
99
+ };
100
+ shouldDisplaySpread: () => boolean;
101
+ setHasVerticalWriting: () => void;
102
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
103
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
104
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
105
+ getPageSize: () => {
106
+ width: number;
107
+ height: number;
108
+ };
109
+ getSettings: () => import("./settings").PublicSettings & {
110
+ computedPageTurnMode: "controlled" | "scrollable";
111
+ computedPageTurnDirection: "vertical" | "horizontal";
112
+ computedPageTurnAnimation: "none" | "fade" | "slide";
113
+ computedPageTurnAnimationDuration: number;
114
+ computedSnapAnimationDuration: number;
115
+ };
116
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
117
+ $: {
118
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
119
+ destroy$: import("rxjs").Observable<void>;
120
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
121
+ computedPageTurnMode: "controlled" | "scrollable";
122
+ computedPageTurnDirection: "vertical" | "horizontal";
123
+ computedPageTurnAnimation: "none" | "fade" | "slide";
124
+ computedPageTurnAnimationDuration: number;
125
+ computedSnapAnimationDuration: number;
126
+ }>;
127
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
128
+ };
129
+ }, currentPosition: {
130
+ x: number;
131
+ y: number;
132
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
133
+ };
134
+ }, {}, {}, (createReader: (options: {
135
+ hooks?: import("./types/Hook").Hook[] | undefined;
136
+ containerElement: HTMLElement;
137
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
138
+ hooks?: import("./types/Hook").Hook[] | undefined;
139
+ containerElement: HTMLElement;
140
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {
141
+ $: {
142
+ pagination$: import("rxjs").Observable<{
143
+ beginChapterInfo: {
144
+ title: string;
145
+ subChapter?: {
146
+ title: string;
147
+ subChapter?: {
148
+ title: string;
149
+ subChapter?: {
150
+ title: string;
151
+ path: string;
152
+ } | undefined;
153
+ path: string;
154
+ } | undefined;
155
+ path: string;
156
+ } | undefined;
157
+ path: string;
158
+ } | undefined;
159
+ beginPageIndexInChapter: number | undefined;
160
+ beginNumberOfPagesInChapter: number | undefined;
161
+ beginSpineItemIndex: number | undefined;
162
+ beginCfi: string | undefined;
163
+ beginSpineItemReadingDirection: "ltr" | "rtl" | undefined;
164
+ beginAbsolutePageIndex: number | undefined;
165
+ endChapterInfo: {
166
+ title: string;
167
+ subChapter?: {
168
+ title: string;
169
+ subChapter?: {
170
+ title: string;
171
+ subChapter?: {
172
+ title: string;
173
+ path: string;
174
+ } | undefined;
175
+ path: string;
176
+ } | undefined;
177
+ path: string;
178
+ } | undefined;
179
+ path: string;
180
+ } | undefined;
181
+ endPageIndexInChapter: number | undefined;
182
+ endNumberOfPagesInChapter: number | undefined;
183
+ endSpineItemIndex: number | undefined;
184
+ endCfi: string | undefined;
185
+ endSpineItemReadingDirection: "ltr" | "rtl" | undefined;
186
+ endAbsolutePageIndex: number | undefined;
187
+ percentageEstimateOfBook: number | undefined;
188
+ numberOfTotalPages: number | undefined;
189
+ isUsingSpread: boolean;
190
+ }>;
191
+ };
192
+ }, {}, {}, Enhancer<{}, {
193
+ progression: {
194
+ getPercentageEstimate: (context: {
195
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
196
+ isRTL: () => boolean;
197
+ areAllItemsPrePaginated: () => boolean;
198
+ destroy: () => void;
199
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
200
+ getCalculatedInnerMargin: () => number;
201
+ getVisibleAreaRect: () => {
202
+ width: number;
203
+ height: number;
204
+ x: number;
205
+ y: number;
206
+ };
207
+ shouldDisplaySpread: () => boolean;
208
+ setHasVerticalWriting: () => void;
209
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
210
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
211
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
212
+ getPageSize: () => {
213
+ width: number;
214
+ height: number;
215
+ };
216
+ getSettings: () => import("./settings").PublicSettings & {
217
+ computedPageTurnMode: "controlled" | "scrollable";
218
+ computedPageTurnDirection: "vertical" | "horizontal";
219
+ computedPageTurnAnimation: "none" | "fade" | "slide";
220
+ computedPageTurnAnimationDuration: number;
221
+ computedSnapAnimationDuration: number;
222
+ };
223
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
224
+ $: {
225
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
226
+ destroy$: import("rxjs").Observable<void>;
227
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
228
+ computedPageTurnMode: "controlled" | "scrollable";
229
+ computedPageTurnDirection: "vertical" | "horizontal";
230
+ computedPageTurnAnimation: "none" | "fade" | "slide";
231
+ computedPageTurnAnimationDuration: number;
232
+ computedSnapAnimationDuration: number;
233
+ }>;
234
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
235
+ };
236
+ }, currentSpineIndex: number, numberOfPages: number, pageIndex: number, currentPosition: {
237
+ x: number;
238
+ y: number;
239
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
240
+ getScrollPercentageWithinItem: (context: {
241
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
242
+ isRTL: () => boolean;
243
+ areAllItemsPrePaginated: () => boolean;
244
+ destroy: () => void;
245
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
246
+ getCalculatedInnerMargin: () => number;
247
+ getVisibleAreaRect: () => {
248
+ width: number;
249
+ height: number;
250
+ x: number;
251
+ y: number;
252
+ };
253
+ shouldDisplaySpread: () => boolean;
254
+ setHasVerticalWriting: () => void;
255
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
256
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
257
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
258
+ getPageSize: () => {
259
+ width: number;
260
+ height: number;
261
+ };
262
+ getSettings: () => import("./settings").PublicSettings & {
263
+ computedPageTurnMode: "controlled" | "scrollable";
264
+ computedPageTurnDirection: "vertical" | "horizontal";
265
+ computedPageTurnAnimation: "none" | "fade" | "slide";
266
+ computedPageTurnAnimationDuration: number;
267
+ computedSnapAnimationDuration: number;
268
+ };
269
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
270
+ $: {
271
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
272
+ destroy$: import("rxjs").Observable<void>;
273
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
274
+ computedPageTurnMode: "controlled" | "scrollable";
275
+ computedPageTurnDirection: "vertical" | "horizontal";
276
+ computedPageTurnAnimation: "none" | "fade" | "slide";
277
+ computedPageTurnAnimationDuration: number;
278
+ computedSnapAnimationDuration: number;
279
+ }>;
280
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
281
+ };
282
+ }, currentPosition: {
283
+ x: number;
284
+ y: number;
285
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
286
+ };
287
+ }, {}, {}, (createReader: (options: {
288
+ hooks?: import("./types/Hook").Hook[] | undefined;
289
+ containerElement: HTMLElement;
290
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
291
+ hooks?: import("./types/Hook").Hook[] | undefined;
292
+ containerElement: HTMLElement;
293
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, {
294
+ setSettings: (settings: Partial<import("./settings").PublicSettings>) => void;
295
+ context: {
296
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
297
+ isRTL: () => boolean;
298
+ areAllItemsPrePaginated: () => boolean;
299
+ destroy: () => void;
300
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
301
+ getCalculatedInnerMargin: () => number;
302
+ getVisibleAreaRect: () => {
303
+ width: number;
304
+ height: number;
305
+ x: number;
306
+ y: number;
307
+ };
308
+ shouldDisplaySpread: () => boolean;
309
+ setHasVerticalWriting: () => void;
310
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
311
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
312
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
313
+ getPageSize: () => {
314
+ width: number;
315
+ height: number;
316
+ };
317
+ getSettings: () => import("./settings").PublicSettings & {
318
+ computedPageTurnMode: "controlled" | "scrollable";
319
+ computedPageTurnDirection: "vertical" | "horizontal";
320
+ computedPageTurnAnimation: "none" | "fade" | "slide";
321
+ computedPageTurnAnimationDuration: number;
322
+ computedSnapAnimationDuration: number;
323
+ };
324
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
325
+ $: {
326
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
327
+ destroy$: import("rxjs").Observable<void>;
328
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
329
+ computedPageTurnMode: "controlled" | "scrollable";
330
+ computedPageTurnDirection: "vertical" | "horizontal";
331
+ computedPageTurnAnimation: "none" | "fade" | "slide";
332
+ computedPageTurnAnimationDuration: number;
333
+ computedSnapAnimationDuration: number;
334
+ }>;
335
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
336
+ };
337
+ };
338
+ registerHook: import("./types/Hook").RegisterHook;
339
+ spine: {
340
+ viewportNavigator: {
341
+ destroy: () => void;
342
+ layout: () => void;
343
+ getCurrentNavigationPosition: () => import("./spine/navigationResolver").ViewportNavigationEntry;
344
+ getCurrentViewportPosition: (() => {
345
+ x: number;
346
+ y: number;
347
+ }) | (() => {
348
+ x: number;
349
+ y: number;
350
+ });
351
+ turnLeft: ({ allowSpineItemChange }?: {
352
+ allowSpineItemChange?: boolean | undefined;
353
+ }) => void;
354
+ turnRight: ({ allowSpineItemChange }?: {
355
+ allowSpineItemChange?: boolean | undefined;
356
+ }) => void;
357
+ goToPage: (pageIndex: number) => void;
358
+ goToSpineItem: (indexOrId: string | number, options?: {
359
+ animate: boolean;
360
+ }) => void;
361
+ goToUrl: (url: string | URL) => void;
362
+ goToCfi: (cfi: string, options?: {
363
+ animate: boolean;
364
+ }) => void;
365
+ goToPageOfCurrentChapter: (pageIndex: number) => void;
366
+ adjustNavigation: (spineItem: import("./spineItem/createSpineItem").SpineItem) => import("rxjs").Observable<{
367
+ previousNavigationPosition: import("./spine/navigationResolver").ViewportNavigationEntry;
368
+ adjustedSpinePosition: import("./spine/navigationResolver").ViewportNavigationEntry;
369
+ areDifferent: boolean;
370
+ }>;
371
+ moveTo: ((delta: {
372
+ x: number;
373
+ y: number;
374
+ } | undefined, { final, start }?: {
375
+ start?: boolean | undefined;
376
+ final?: boolean | undefined;
377
+ }) => void) | ((args_0: {
378
+ x: number;
379
+ y: number;
380
+ } | undefined, args_1?: {
381
+ start?: boolean | undefined;
382
+ final?: boolean | undefined;
383
+ } | undefined) => void);
384
+ getLastUserExpectedNavigation: () => {
385
+ type: "navigate-from-previous-item";
386
+ } | {
387
+ type: "navigate-from-next-item";
388
+ } | {
389
+ type: "navigate-from-cfi";
390
+ data: string;
391
+ } | {
392
+ type: "navigate-from-anchor";
393
+ data: string;
394
+ } | undefined;
395
+ $: {
396
+ state$: import("rxjs").Observable<"free" | "busy">;
397
+ navigation$: import("rxjs").Observable<{
398
+ position: {
399
+ x: number;
400
+ y: number;
401
+ spineItem?: import("./spineItem/createSpineItem").SpineItem | undefined;
402
+ };
403
+ triggeredBy: "scroll" | "manual" | "adjust";
404
+ animation: false | "turn" | "snap";
405
+ }>;
406
+ };
407
+ };
408
+ element: HTMLElement;
409
+ locator: {
410
+ getSpinePositionFromSpineItemPosition: (spineItemPosition: {
411
+ x: number;
412
+ y: number;
413
+ outsideOfBoundaries?: boolean | undefined;
414
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
415
+ x: number;
416
+ y: number;
417
+ };
418
+ getSpinePositionFromSpineItem: (spineItem: import("./spineItem/createSpineItem").SpineItem) => {
419
+ x: number;
420
+ y: number;
421
+ };
422
+ getSpinePositionFromSpineItemAnchor: (anchor: string, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
423
+ x: number;
424
+ y: number;
425
+ };
426
+ getSpineItemPositionFromSpinePosition: ((position: {
427
+ x: number;
428
+ y: number;
429
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
430
+ x: number;
431
+ y: number;
432
+ outsideOfBoundaries?: boolean | undefined;
433
+ }) | ((position: {
434
+ x: number;
435
+ y: number;
436
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
437
+ x: number;
438
+ y: number;
439
+ outsideOfBoundaries?: boolean | undefined;
440
+ });
441
+ getSpineItemFromPosition: ((position: {
442
+ x: number;
443
+ y: number;
444
+ }) => ({
445
+ item: {
446
+ id: string;
447
+ href: string;
448
+ path: string;
449
+ renditionLayout: "reflowable" | "pre-paginated";
450
+ progressionWeight: number;
451
+ pageSpreadLeft: true | undefined;
452
+ pageSpreadRight: true | undefined;
453
+ mediaType?: string | undefined;
454
+ };
455
+ } & {
456
+ layout: (layoutInformation: {
457
+ blankPagePosition: "after" | "before" | "none";
458
+ minimumWidth: number;
459
+ spreadPosition: "right" | "left" | "none";
460
+ }) => {
461
+ width: number;
462
+ height: number;
463
+ };
464
+ load: () => void;
465
+ adjustPositionOfElement: ({ right, left, top }: {
466
+ right?: number | undefined;
467
+ left?: number | undefined;
468
+ top?: number | undefined;
469
+ }) => void;
470
+ createLoadingElement: (containerElement: HTMLElement, item: {
471
+ id: string;
472
+ href: string;
473
+ path: string;
474
+ renditionLayout: "reflowable" | "pre-paginated";
475
+ progressionWeight: number;
476
+ pageSpreadLeft: true | undefined;
477
+ pageSpreadRight: true | undefined;
478
+ mediaType?: string | undefined;
479
+ }, context: {
480
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
481
+ isRTL: () => boolean;
482
+ areAllItemsPrePaginated: () => boolean;
483
+ destroy: () => void;
484
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
485
+ getCalculatedInnerMargin: () => number;
486
+ getVisibleAreaRect: () => {
487
+ width: number;
488
+ height: number;
489
+ x: number;
490
+ y: number;
491
+ };
492
+ shouldDisplaySpread: () => boolean;
493
+ setHasVerticalWriting: () => void;
494
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
495
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
496
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
497
+ getPageSize: () => {
498
+ width: number;
499
+ height: number;
500
+ };
501
+ getSettings: () => import("./settings").PublicSettings & {
502
+ computedPageTurnMode: "controlled" | "scrollable";
503
+ computedPageTurnDirection: "vertical" | "horizontal";
504
+ computedPageTurnAnimation: "none" | "fade" | "slide";
505
+ computedPageTurnAnimationDuration: number;
506
+ computedSnapAnimationDuration: number;
507
+ };
508
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
509
+ $: {
510
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
511
+ destroy$: import("rxjs").Observable<void>;
512
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
513
+ computedPageTurnMode: "controlled" | "scrollable";
514
+ computedPageTurnDirection: "vertical" | "horizontal";
515
+ computedPageTurnAnimation: "none" | "fade" | "slide";
516
+ computedPageTurnAnimationDuration: number;
517
+ computedSnapAnimationDuration: number;
518
+ }>;
519
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
520
+ };
521
+ }) => HTMLDivElement;
522
+ getElementDimensions: () => {
523
+ width: number;
524
+ height: number;
525
+ };
526
+ getHtmlFromResource: (response: Response) => Promise<string>;
527
+ getResource: () => Promise<Response>;
528
+ translateFramePositionIntoPage: (position: {
529
+ clientX: number;
530
+ clientY: number;
531
+ }) => {
532
+ clientX: number;
533
+ clientY: number;
534
+ };
535
+ setLayoutDirty: () => void;
536
+ injectStyle: (cssText: string) => void;
537
+ loadContent: () => void;
538
+ unloadContent: () => void;
539
+ spineItemFrame: {
540
+ getIsLoaded: () => boolean;
541
+ getIsReady: () => boolean;
542
+ getViewportDimensions: () => {
543
+ width: number;
544
+ height: number;
545
+ } | undefined;
546
+ getFrameElement: () => HTMLIFrameElement | undefined;
547
+ getHtmlFromResource: (response: Response) => Promise<string>;
548
+ load: () => void;
549
+ unload: () => void;
550
+ staticLayout: (size: {
551
+ width: number;
552
+ height: number;
553
+ }) => void;
554
+ getManipulableFrame: () => {
555
+ frame: HTMLIFrameElement;
556
+ removeStyle: (id: string) => void;
557
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
558
+ } | undefined;
559
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
560
+ isUsingVerticalWriting: () => boolean;
561
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
562
+ destroy: () => void;
563
+ $: {
564
+ unload$: import("rxjs").Observable<void>;
565
+ unloaded$: import("rxjs").Observable<void>;
566
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
567
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
568
+ isReady$: import("rxjs").Observable<boolean>;
569
+ contentLayoutChange$: import("rxjs").Observable<{
570
+ isFirstLayout: boolean;
571
+ } | {
572
+ isFirstLayout: boolean;
573
+ }>;
574
+ };
575
+ };
576
+ element: HTMLElement;
577
+ loadingElement: HTMLDivElement;
578
+ isReflowable: boolean;
579
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
580
+ getViewPortInformation: () => {
581
+ computedScale: number;
582
+ computedWidthScale: number;
583
+ viewportDimensions: {
584
+ width: number;
585
+ height: number;
586
+ };
587
+ } | {
588
+ width?: number | undefined;
589
+ height?: number | undefined;
590
+ computedScale: number;
591
+ computedWidthScale: number;
592
+ viewportDimensions?: undefined;
593
+ };
594
+ isImageType: () => boolean | undefined;
595
+ isReady: () => boolean;
596
+ destroy: () => void;
597
+ isUsingVerticalWriting: () => boolean | undefined;
598
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
599
+ manipulateSpineItem: (cb: (options: {
600
+ container: HTMLElement;
601
+ loadingElement: HTMLElement;
602
+ item: {
603
+ id: string;
604
+ href: string;
605
+ path: string;
606
+ renditionLayout: "reflowable" | "pre-paginated";
607
+ progressionWeight: number;
608
+ pageSpreadLeft: true | undefined;
609
+ pageSpreadRight: true | undefined;
610
+ mediaType?: string | undefined;
611
+ };
612
+ overlayElement: HTMLDivElement;
613
+ } & ({
614
+ frame: HTMLIFrameElement;
615
+ removeStyle: (id: string) => void;
616
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
617
+ } | {
618
+ frame: undefined;
619
+ removeStyle: (id: string) => void;
620
+ addStyle: (id: string, style: string) => void;
621
+ })) => boolean) => boolean;
622
+ executeOnLayoutBeforeMeasurmentHook: (options: {
623
+ minimumWidth: number;
624
+ }) => void;
625
+ selectionTracker: {
626
+ track: (frameToTrack: HTMLIFrameElement) => void;
627
+ destroy: () => void;
628
+ isSelecting: () => boolean;
629
+ getSelection: () => Selection | undefined;
630
+ $: import("rxjs").Observable<{
631
+ event: "selectionchange";
632
+ data: Selection | null;
633
+ } | {
634
+ event: "selectstart";
635
+ data: Selection | null;
636
+ } | {
637
+ event: "selectend";
638
+ data: Selection | null;
639
+ }>;
640
+ };
641
+ fingerTracker: {
642
+ track: (frame: HTMLIFrameElement) => void;
643
+ getFingerPositionInIframe(): {
644
+ x: number | undefined;
645
+ y: number | undefined;
646
+ } | undefined;
647
+ destroy: () => void;
648
+ $: import("rxjs").Observable<{
649
+ event: "fingermove";
650
+ data: {
651
+ x: number;
652
+ y: number;
653
+ };
654
+ } | {
655
+ event: "fingerout";
656
+ data: undefined;
657
+ }>;
658
+ };
659
+ $: {
660
+ contentLayoutChangeSubject$: import("rxjs").Observable<{
661
+ isFirstLayout: boolean;
662
+ isReady: boolean;
663
+ }>;
664
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
665
+ };
666
+ }) | undefined) | ((position: {
667
+ x: number;
668
+ y: number;
669
+ }) => ({
670
+ item: {
671
+ id: string;
672
+ href: string;
673
+ path: string;
674
+ renditionLayout: "reflowable" | "pre-paginated";
675
+ progressionWeight: number;
676
+ pageSpreadLeft: true | undefined;
677
+ pageSpreadRight: true | undefined;
678
+ mediaType?: string | undefined;
679
+ };
680
+ } & {
681
+ layout: (layoutInformation: {
682
+ blankPagePosition: "after" | "before" | "none";
683
+ minimumWidth: number;
684
+ spreadPosition: "right" | "left" | "none";
685
+ }) => {
686
+ width: number;
687
+ height: number;
688
+ };
689
+ load: () => void;
690
+ adjustPositionOfElement: ({ right, left, top }: {
691
+ right?: number | undefined;
692
+ left?: number | undefined;
693
+ top?: number | undefined;
694
+ }) => void;
695
+ createLoadingElement: (containerElement: HTMLElement, item: {
696
+ id: string;
697
+ href: string;
698
+ path: string;
699
+ renditionLayout: "reflowable" | "pre-paginated";
700
+ progressionWeight: number;
701
+ pageSpreadLeft: true | undefined;
702
+ pageSpreadRight: true | undefined;
703
+ mediaType?: string | undefined;
704
+ }, context: {
705
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
706
+ isRTL: () => boolean;
707
+ areAllItemsPrePaginated: () => boolean;
708
+ destroy: () => void;
709
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
710
+ getCalculatedInnerMargin: () => number;
711
+ getVisibleAreaRect: () => {
712
+ width: number;
713
+ height: number;
714
+ x: number;
715
+ y: number;
716
+ };
717
+ shouldDisplaySpread: () => boolean;
718
+ setHasVerticalWriting: () => void;
719
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
720
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
721
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
722
+ getPageSize: () => {
723
+ width: number;
724
+ height: number;
725
+ };
726
+ getSettings: () => import("./settings").PublicSettings & {
727
+ computedPageTurnMode: "controlled" | "scrollable";
728
+ computedPageTurnDirection: "vertical" | "horizontal";
729
+ computedPageTurnAnimation: "none" | "fade" | "slide";
730
+ computedPageTurnAnimationDuration: number;
731
+ computedSnapAnimationDuration: number;
732
+ };
733
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
734
+ $: {
735
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
736
+ destroy$: import("rxjs").Observable<void>;
737
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
738
+ computedPageTurnMode: "controlled" | "scrollable";
739
+ computedPageTurnDirection: "vertical" | "horizontal";
740
+ computedPageTurnAnimation: "none" | "fade" | "slide";
741
+ computedPageTurnAnimationDuration: number;
742
+ computedSnapAnimationDuration: number;
743
+ }>;
744
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
745
+ };
746
+ }) => HTMLDivElement;
747
+ getElementDimensions: () => {
748
+ width: number;
749
+ height: number;
750
+ };
751
+ getHtmlFromResource: (response: Response) => Promise<string>;
752
+ getResource: () => Promise<Response>;
753
+ translateFramePositionIntoPage: (position: {
754
+ clientX: number;
755
+ clientY: number;
756
+ }) => {
757
+ clientX: number;
758
+ clientY: number;
759
+ };
760
+ setLayoutDirty: () => void;
761
+ injectStyle: (cssText: string) => void;
762
+ loadContent: () => void;
763
+ unloadContent: () => void;
764
+ spineItemFrame: {
765
+ getIsLoaded: () => boolean;
766
+ getIsReady: () => boolean;
767
+ getViewportDimensions: () => {
768
+ width: number;
769
+ height: number;
770
+ } | undefined;
771
+ getFrameElement: () => HTMLIFrameElement | undefined;
772
+ getHtmlFromResource: (response: Response) => Promise<string>;
773
+ load: () => void;
774
+ unload: () => void;
775
+ staticLayout: (size: {
776
+ width: number;
777
+ height: number;
778
+ }) => void;
779
+ getManipulableFrame: () => {
780
+ frame: HTMLIFrameElement;
781
+ removeStyle: (id: string) => void;
782
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
783
+ } | undefined;
784
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
785
+ isUsingVerticalWriting: () => boolean;
786
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
787
+ destroy: () => void;
788
+ $: {
789
+ unload$: import("rxjs").Observable<void>;
790
+ unloaded$: import("rxjs").Observable<void>;
791
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
792
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
793
+ isReady$: import("rxjs").Observable<boolean>;
794
+ contentLayoutChange$: import("rxjs").Observable<{
795
+ isFirstLayout: boolean;
796
+ } | {
797
+ isFirstLayout: boolean;
798
+ }>;
799
+ };
800
+ };
801
+ element: HTMLElement;
802
+ loadingElement: HTMLDivElement;
803
+ isReflowable: boolean;
804
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
805
+ getViewPortInformation: () => {
806
+ computedScale: number;
807
+ computedWidthScale: number;
808
+ viewportDimensions: {
809
+ width: number;
810
+ height: number;
811
+ };
812
+ } | {
813
+ width?: number | undefined;
814
+ height?: number | undefined;
815
+ computedScale: number;
816
+ computedWidthScale: number;
817
+ viewportDimensions?: undefined;
818
+ };
819
+ isImageType: () => boolean | undefined;
820
+ isReady: () => boolean;
821
+ destroy: () => void;
822
+ isUsingVerticalWriting: () => boolean | undefined;
823
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
824
+ manipulateSpineItem: (cb: (options: {
825
+ container: HTMLElement;
826
+ loadingElement: HTMLElement;
827
+ item: {
828
+ id: string;
829
+ href: string;
830
+ path: string;
831
+ renditionLayout: "reflowable" | "pre-paginated";
832
+ progressionWeight: number;
833
+ pageSpreadLeft: true | undefined;
834
+ pageSpreadRight: true | undefined;
835
+ mediaType?: string | undefined;
836
+ };
837
+ overlayElement: HTMLDivElement;
838
+ } & ({
839
+ frame: HTMLIFrameElement;
840
+ removeStyle: (id: string) => void;
841
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
842
+ } | {
843
+ frame: undefined;
844
+ removeStyle: (id: string) => void;
845
+ addStyle: (id: string, style: string) => void;
846
+ })) => boolean) => boolean;
847
+ executeOnLayoutBeforeMeasurmentHook: (options: {
848
+ minimumWidth: number;
849
+ }) => void;
850
+ selectionTracker: {
851
+ track: (frameToTrack: HTMLIFrameElement) => void;
852
+ destroy: () => void;
853
+ isSelecting: () => boolean;
854
+ getSelection: () => Selection | undefined;
855
+ $: import("rxjs").Observable<{
856
+ event: "selectionchange";
857
+ data: Selection | null;
858
+ } | {
859
+ event: "selectstart";
860
+ data: Selection | null;
861
+ } | {
862
+ event: "selectend";
863
+ data: Selection | null;
864
+ }>;
865
+ };
866
+ fingerTracker: {
867
+ track: (frame: HTMLIFrameElement) => void;
868
+ getFingerPositionInIframe(): {
869
+ x: number | undefined;
870
+ y: number | undefined;
871
+ } | undefined;
872
+ destroy: () => void;
873
+ $: import("rxjs").Observable<{
874
+ event: "fingermove";
875
+ data: {
876
+ x: number;
877
+ y: number;
878
+ };
879
+ } | {
880
+ event: "fingerout";
881
+ data: undefined;
882
+ }>;
883
+ };
884
+ $: {
885
+ contentLayoutChangeSubject$: import("rxjs").Observable<{
886
+ isFirstLayout: boolean;
887
+ isReady: boolean;
888
+ }>;
889
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
890
+ };
891
+ }) | undefined);
892
+ getSpineItemFromIframe: (iframe: Element) => import("./spineItem/createSpineItem").SpineItem | undefined;
893
+ getSpineItemPageIndexFromNode: (node: Node, offset: number | undefined, spineItemOrIndex: number | import("./spineItem/createSpineItem").SpineItem) => number | undefined;
894
+ getSpineItemsFromReadingOrderPosition: (position: {
895
+ x: number;
896
+ y: number;
897
+ }) => {
898
+ left: number;
899
+ right: number;
900
+ begin: number;
901
+ beginPosition: {
902
+ x: number;
903
+ y: number;
904
+ };
905
+ end: number;
906
+ endPosition: {
907
+ x: number;
908
+ y: number;
909
+ };
910
+ } | undefined;
911
+ };
912
+ spineItemLocator: {
913
+ getSpineItemPositionFromNode: (node: Node, offset: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
914
+ x: number;
915
+ y: number;
916
+ } | undefined;
917
+ getSpineItemPositionFromPageIndex: (pageIndex: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
918
+ x: number;
919
+ y: number;
920
+ };
921
+ getSpineItemOffsetFromAnchor: (anchor: string, spineItem: import("./spineItem/createSpineItem").SpineItem) => number;
922
+ getSpineItemPageIndexFromPosition: (position: {
923
+ x: number;
924
+ y: number;
925
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => number;
926
+ getSpineItemPageIndexFromNode: (node: Node, offset: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => number | undefined;
927
+ getSpineItemClosestPositionFromUnsafePosition: (unsafePosition: {
928
+ x: number;
929
+ y: number;
930
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
931
+ x: number;
932
+ y: number;
933
+ };
934
+ getFirstNodeOrRangeAtPage: (pageIndex: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
935
+ node: Node;
936
+ offset: number;
937
+ } | undefined;
938
+ };
939
+ cfiLocator: {
940
+ getSpineItemFromCfi: (cfi: string) => ({
941
+ item: {
942
+ id: string;
943
+ href: string;
944
+ path: string;
945
+ renditionLayout: "reflowable" | "pre-paginated";
946
+ progressionWeight: number;
947
+ pageSpreadLeft: true | undefined;
948
+ pageSpreadRight: true | undefined;
949
+ mediaType?: string | undefined;
950
+ };
951
+ } & {
952
+ layout: (layoutInformation: {
953
+ blankPagePosition: "after" | "before" | "none";
954
+ minimumWidth: number;
955
+ spreadPosition: "right" | "left" | "none";
956
+ }) => {
957
+ width: number;
958
+ height: number;
959
+ };
960
+ load: () => void;
961
+ adjustPositionOfElement: ({ right, left, top }: {
962
+ right?: number | undefined;
963
+ left?: number | undefined;
964
+ top?: number | undefined;
965
+ }) => void;
966
+ createLoadingElement: (containerElement: HTMLElement, item: {
967
+ id: string;
968
+ href: string;
969
+ path: string;
970
+ renditionLayout: "reflowable" | "pre-paginated";
971
+ progressionWeight: number;
972
+ pageSpreadLeft: true | undefined;
973
+ pageSpreadRight: true | undefined;
974
+ mediaType?: string | undefined;
975
+ }, context: {
976
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
977
+ isRTL: () => boolean;
978
+ areAllItemsPrePaginated: () => boolean;
979
+ destroy: () => void;
980
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
981
+ getCalculatedInnerMargin: () => number;
982
+ getVisibleAreaRect: () => {
983
+ width: number;
984
+ height: number;
985
+ x: number;
986
+ y: number;
987
+ };
988
+ shouldDisplaySpread: () => boolean;
989
+ setHasVerticalWriting: () => void;
990
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
991
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
992
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
993
+ getPageSize: () => {
994
+ width: number;
995
+ height: number;
996
+ };
997
+ getSettings: () => import("./settings").PublicSettings & {
998
+ computedPageTurnMode: "controlled" | "scrollable";
999
+ computedPageTurnDirection: "vertical" | "horizontal";
1000
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1001
+ computedPageTurnAnimationDuration: number;
1002
+ computedSnapAnimationDuration: number;
1003
+ };
1004
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
1005
+ $: {
1006
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
1007
+ destroy$: import("rxjs").Observable<void>;
1008
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1009
+ computedPageTurnMode: "controlled" | "scrollable";
1010
+ computedPageTurnDirection: "vertical" | "horizontal";
1011
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1012
+ computedPageTurnAnimationDuration: number;
1013
+ computedSnapAnimationDuration: number;
1014
+ }>;
1015
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
1016
+ };
1017
+ }) => HTMLDivElement;
1018
+ getElementDimensions: () => {
1019
+ width: number;
1020
+ height: number;
1021
+ };
1022
+ getHtmlFromResource: (response: Response) => Promise<string>;
1023
+ getResource: () => Promise<Response>;
1024
+ translateFramePositionIntoPage: (position: {
1025
+ clientX: number;
1026
+ clientY: number;
1027
+ }) => {
1028
+ clientX: number;
1029
+ clientY: number;
1030
+ };
1031
+ setLayoutDirty: () => void;
1032
+ injectStyle: (cssText: string) => void;
1033
+ loadContent: () => void;
1034
+ unloadContent: () => void;
1035
+ spineItemFrame: {
1036
+ getIsLoaded: () => boolean;
1037
+ getIsReady: () => boolean;
1038
+ getViewportDimensions: () => {
1039
+ width: number;
1040
+ height: number;
1041
+ } | undefined;
1042
+ getFrameElement: () => HTMLIFrameElement | undefined;
1043
+ getHtmlFromResource: (response: Response) => Promise<string>;
1044
+ load: () => void;
1045
+ unload: () => void;
1046
+ staticLayout: (size: {
1047
+ width: number;
1048
+ height: number;
1049
+ }) => void;
1050
+ getManipulableFrame: () => {
1051
+ frame: HTMLIFrameElement;
1052
+ removeStyle: (id: string) => void;
1053
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1054
+ } | undefined;
1055
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1056
+ isUsingVerticalWriting: () => boolean;
1057
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
1058
+ destroy: () => void;
1059
+ $: {
1060
+ unload$: import("rxjs").Observable<void>;
1061
+ unloaded$: import("rxjs").Observable<void>;
1062
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1063
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1064
+ isReady$: import("rxjs").Observable<boolean>;
1065
+ contentLayoutChange$: import("rxjs").Observable<{
1066
+ isFirstLayout: boolean;
1067
+ } | {
1068
+ isFirstLayout: boolean;
1069
+ }>;
1070
+ };
1071
+ };
1072
+ element: HTMLElement;
1073
+ loadingElement: HTMLDivElement;
1074
+ isReflowable: boolean;
1075
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1076
+ getViewPortInformation: () => {
1077
+ computedScale: number;
1078
+ computedWidthScale: number;
1079
+ viewportDimensions: {
1080
+ width: number;
1081
+ height: number;
1082
+ };
1083
+ } | {
1084
+ width?: number | undefined;
1085
+ height?: number | undefined;
1086
+ computedScale: number;
1087
+ computedWidthScale: number;
1088
+ viewportDimensions?: undefined;
1089
+ };
1090
+ isImageType: () => boolean | undefined;
1091
+ isReady: () => boolean;
1092
+ destroy: () => void;
1093
+ isUsingVerticalWriting: () => boolean | undefined;
1094
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1095
+ manipulateSpineItem: (cb: (options: {
1096
+ container: HTMLElement;
1097
+ loadingElement: HTMLElement;
1098
+ item: {
1099
+ id: string;
1100
+ href: string;
1101
+ path: string;
1102
+ renditionLayout: "reflowable" | "pre-paginated";
1103
+ progressionWeight: number;
1104
+ pageSpreadLeft: true | undefined;
1105
+ pageSpreadRight: true | undefined;
1106
+ mediaType?: string | undefined;
1107
+ };
1108
+ overlayElement: HTMLDivElement;
1109
+ } & ({
1110
+ frame: HTMLIFrameElement;
1111
+ removeStyle: (id: string) => void;
1112
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1113
+ } | {
1114
+ frame: undefined;
1115
+ removeStyle: (id: string) => void;
1116
+ addStyle: (id: string, style: string) => void;
1117
+ })) => boolean) => boolean;
1118
+ executeOnLayoutBeforeMeasurmentHook: (options: {
1119
+ minimumWidth: number;
1120
+ }) => void;
1121
+ selectionTracker: {
1122
+ track: (frameToTrack: HTMLIFrameElement) => void;
1123
+ destroy: () => void;
1124
+ isSelecting: () => boolean;
1125
+ getSelection: () => Selection | undefined;
1126
+ $: import("rxjs").Observable<{
1127
+ event: "selectionchange";
1128
+ data: Selection | null;
1129
+ } | {
1130
+ event: "selectstart";
1131
+ data: Selection | null;
1132
+ } | {
1133
+ event: "selectend";
1134
+ data: Selection | null;
1135
+ }>;
1136
+ };
1137
+ fingerTracker: {
1138
+ track: (frame: HTMLIFrameElement) => void;
1139
+ getFingerPositionInIframe(): {
1140
+ x: number | undefined;
1141
+ y: number | undefined;
1142
+ } | undefined;
1143
+ destroy: () => void;
1144
+ $: import("rxjs").Observable<{
1145
+ event: "fingermove";
1146
+ data: {
1147
+ x: number;
1148
+ y: number;
1149
+ };
1150
+ } | {
1151
+ event: "fingerout";
1152
+ data: undefined;
1153
+ }>;
1154
+ };
1155
+ $: {
1156
+ contentLayoutChangeSubject$: import("rxjs").Observable<{
1157
+ isFirstLayout: boolean;
1158
+ isReady: boolean;
1159
+ }>;
1160
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1161
+ };
1162
+ }) | undefined;
1163
+ getCfiMetaInformation: (cfi: string) => {
1164
+ spineItemIndex: number | undefined;
1165
+ } | undefined;
1166
+ getCfi: ((pageIndex: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => string) | ((pageIndex: number, spineItem: import("./spineItem/createSpineItem").SpineItem) => string);
1167
+ getRootCfi: (spineItem: import("./spineItem/createSpineItem").SpineItem) => string;
1168
+ resolveCfi: (cfiString: string) => {
1169
+ node: Node | undefined;
1170
+ offset: number | undefined;
1171
+ spineItemIndex: number;
1172
+ } | {
1173
+ spineItemIndex: number;
1174
+ node?: undefined;
1175
+ offset?: undefined;
1176
+ } | undefined;
1177
+ generateFromRange: ({ startNode, start, end, endNode }: {
1178
+ startNode: Node;
1179
+ start: number;
1180
+ endNode: Node;
1181
+ end: number;
1182
+ }, item: {
1183
+ id: string;
1184
+ href: string;
1185
+ path: string;
1186
+ renditionLayout: "reflowable" | "pre-paginated";
1187
+ progressionWeight: number;
1188
+ pageSpreadLeft: true | undefined;
1189
+ pageSpreadRight: true | undefined;
1190
+ mediaType?: string | undefined;
1191
+ }) => {
1192
+ start: string;
1193
+ end: string;
1194
+ };
1195
+ };
1196
+ normalizeEventForViewport: <E extends MouseEvent | TouchEvent | PointerEvent>(event: E) => E;
1197
+ manipulateSpineItems: (cb: (payload: ({
1198
+ container: HTMLElement;
1199
+ loadingElement: HTMLElement;
1200
+ item: {
1201
+ id: string;
1202
+ href: string;
1203
+ path: string;
1204
+ renditionLayout: "reflowable" | "pre-paginated";
1205
+ progressionWeight: number;
1206
+ pageSpreadLeft: true | undefined;
1207
+ pageSpreadRight: true | undefined;
1208
+ mediaType?: string | undefined;
1209
+ };
1210
+ overlayElement: HTMLDivElement;
1211
+ } & ({
1212
+ frame: HTMLIFrameElement;
1213
+ removeStyle: (id: string) => void;
1214
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1215
+ } | {
1216
+ frame: undefined;
1217
+ removeStyle: (id: string) => void;
1218
+ addStyle: (id: string, style: string) => void;
1219
+ })) & {
1220
+ index: number;
1221
+ }) => boolean) => void;
1222
+ layout: () => void;
1223
+ destroy: () => void;
1224
+ isSelecting: () => boolean | undefined;
1225
+ getSelection: () => Selection | undefined;
1226
+ $: {
1227
+ $: import("rxjs").Observable<{
1228
+ type: "onSelectionChange";
1229
+ data: {
1230
+ toString: () => string;
1231
+ getAnchorCfi: () => string | undefined;
1232
+ getFocusCfi: () => string | undefined;
1233
+ } | null;
1234
+ }>;
1235
+ viewportState$: import("rxjs").Observable<"free" | "busy">;
1236
+ layout$: import("rxjs").Observable<boolean>;
1237
+ };
1238
+ };
1239
+ manipulateSpineItems: (cb: (payload: ({
1240
+ container: HTMLElement;
1241
+ loadingElement: HTMLElement;
1242
+ item: {
1243
+ id: string;
1244
+ href: string;
1245
+ path: string;
1246
+ renditionLayout: "reflowable" | "pre-paginated";
1247
+ progressionWeight: number;
1248
+ pageSpreadLeft: true | undefined;
1249
+ pageSpreadRight: true | undefined;
1250
+ mediaType?: string | undefined;
1251
+ };
1252
+ overlayElement: HTMLDivElement;
1253
+ } & ({
1254
+ frame: HTMLIFrameElement;
1255
+ removeStyle: (id: string) => void;
1256
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1257
+ } | {
1258
+ frame: undefined;
1259
+ removeStyle: (id: string) => void;
1260
+ addStyle: (id: string, style: string) => void;
1261
+ })) & {
1262
+ index: number;
1263
+ }) => boolean) => void;
1264
+ manipulateContainer: (cb: (container: HTMLElement) => boolean) => void;
1265
+ moveTo: ((delta: {
1266
+ x: number;
1267
+ y: number;
1268
+ } | undefined, { final, start }?: {
1269
+ start?: boolean | undefined;
1270
+ final?: boolean | undefined;
1271
+ }) => void) | ((args_0: {
1272
+ x: number;
1273
+ y: number;
1274
+ } | undefined, args_1?: {
1275
+ start?: boolean | undefined;
1276
+ final?: boolean | undefined;
1277
+ } | undefined) => void);
1278
+ turnLeft: ({ allowSpineItemChange }?: {
1279
+ allowSpineItemChange?: boolean | undefined;
1280
+ }) => void;
1281
+ turnRight: ({ allowSpineItemChange }?: {
1282
+ allowSpineItemChange?: boolean | undefined;
1283
+ }) => void;
1284
+ goToPageOfCurrentChapter: (pageIndex: number) => void;
1285
+ goToPage: (pageIndex: number) => void;
1286
+ goToUrl: (url: string | URL) => void;
1287
+ goToCfi: (cfi: string, options?: {
1288
+ animate: boolean;
1289
+ }) => void;
1290
+ goToSpineItem: (indexOrId: string | number, options?: {
1291
+ animate: boolean;
1292
+ }) => void;
1293
+ getFocusedSpineItemIndex: () => number | undefined;
1294
+ getSpineItem: (indexOrId: string | number) => import("./spineItem/createSpineItem").SpineItem | undefined;
1295
+ getSpineItems: () => import("./spineItem/createSpineItem").SpineItem[];
1296
+ getAbsolutePositionOf: ((spineItemOrIndex: number | import("./spineItem/createSpineItem").SpineItem) => {
1297
+ leftStart: number;
1298
+ leftEnd: number;
1299
+ topStart: number;
1300
+ topEnd: number;
1301
+ width: number;
1302
+ height: number;
1303
+ }) | ((spineItemOrIndex: number | import("./spineItem/createSpineItem").SpineItem) => {
1304
+ leftStart: number;
1305
+ leftEnd: number;
1306
+ topStart: number;
1307
+ topEnd: number;
1308
+ width: number;
1309
+ height: number;
1310
+ });
1311
+ getSelection: () => Selection | undefined;
1312
+ isSelecting: () => boolean | undefined;
1313
+ normalizeEventForViewport: <E extends MouseEvent | TouchEvent | PointerEvent>(event: E) => E;
1314
+ getCfiMetaInformation: (cfi: string) => {
1315
+ spineItemIndex: number | undefined;
1316
+ } | undefined;
1317
+ resolveCfi: (cfiString: string) => {
1318
+ node: Node | undefined;
1319
+ offset: number | undefined;
1320
+ spineItemIndex: number;
1321
+ } | {
1322
+ spineItemIndex: number;
1323
+ node?: undefined;
1324
+ offset?: undefined;
1325
+ } | undefined;
1326
+ generateCfi: ({ startNode, start, end, endNode }: {
1327
+ startNode: Node;
1328
+ start: number;
1329
+ endNode: Node;
1330
+ end: number;
1331
+ }, item: {
1332
+ id: string;
1333
+ href: string;
1334
+ path: string;
1335
+ renditionLayout: "reflowable" | "pre-paginated";
1336
+ progressionWeight: number;
1337
+ pageSpreadLeft: true | undefined;
1338
+ pageSpreadRight: true | undefined;
1339
+ mediaType?: string | undefined;
1340
+ }) => {
1341
+ start: string;
1342
+ end: string;
1343
+ };
1344
+ locator: {
1345
+ getSpinePositionFromSpineItemPosition: (spineItemPosition: {
1346
+ x: number;
1347
+ y: number;
1348
+ outsideOfBoundaries?: boolean | undefined;
1349
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
1350
+ x: number;
1351
+ y: number;
1352
+ };
1353
+ getSpinePositionFromSpineItem: (spineItem: import("./spineItem/createSpineItem").SpineItem) => {
1354
+ x: number;
1355
+ y: number;
1356
+ };
1357
+ getSpinePositionFromSpineItemAnchor: (anchor: string, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
1358
+ x: number;
1359
+ y: number;
1360
+ };
1361
+ getSpineItemPositionFromSpinePosition: ((position: {
1362
+ x: number;
1363
+ y: number;
1364
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
1365
+ x: number;
1366
+ y: number;
1367
+ outsideOfBoundaries?: boolean | undefined;
1368
+ }) | ((position: {
1369
+ x: number;
1370
+ y: number;
1371
+ }, spineItem: import("./spineItem/createSpineItem").SpineItem) => {
1372
+ x: number;
1373
+ y: number;
1374
+ outsideOfBoundaries?: boolean | undefined;
1375
+ });
1376
+ getSpineItemFromPosition: ((position: {
1377
+ x: number;
1378
+ y: number;
1379
+ }) => ({
1380
+ item: {
1381
+ id: string;
1382
+ href: string;
1383
+ path: string;
1384
+ renditionLayout: "reflowable" | "pre-paginated";
1385
+ progressionWeight: number;
1386
+ pageSpreadLeft: true | undefined;
1387
+ pageSpreadRight: true | undefined;
1388
+ mediaType?: string | undefined;
1389
+ };
1390
+ } & {
1391
+ layout: (layoutInformation: {
1392
+ blankPagePosition: "after" | "before" | "none";
1393
+ minimumWidth: number;
1394
+ spreadPosition: "right" | "left" | "none";
1395
+ }) => {
1396
+ width: number;
1397
+ height: number;
1398
+ };
1399
+ load: () => void;
1400
+ adjustPositionOfElement: ({ right, left, top }: {
1401
+ right?: number | undefined;
1402
+ left?: number | undefined;
1403
+ top?: number | undefined;
1404
+ }) => void;
1405
+ createLoadingElement: (containerElement: HTMLElement, item: {
1406
+ id: string;
1407
+ href: string;
1408
+ path: string;
1409
+ renditionLayout: "reflowable" | "pre-paginated";
1410
+ progressionWeight: number;
1411
+ pageSpreadLeft: true | undefined;
1412
+ pageSpreadRight: true | undefined;
1413
+ mediaType?: string | undefined;
1414
+ }, context: {
1415
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
1416
+ isRTL: () => boolean;
1417
+ areAllItemsPrePaginated: () => boolean;
1418
+ destroy: () => void;
1419
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
1420
+ getCalculatedInnerMargin: () => number;
1421
+ getVisibleAreaRect: () => {
1422
+ width: number;
1423
+ height: number;
1424
+ x: number;
1425
+ y: number;
1426
+ };
1427
+ shouldDisplaySpread: () => boolean;
1428
+ setHasVerticalWriting: () => void;
1429
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
1430
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
1431
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1432
+ getPageSize: () => {
1433
+ width: number;
1434
+ height: number;
1435
+ };
1436
+ getSettings: () => import("./settings").PublicSettings & {
1437
+ computedPageTurnMode: "controlled" | "scrollable";
1438
+ computedPageTurnDirection: "vertical" | "horizontal";
1439
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1440
+ computedPageTurnAnimationDuration: number;
1441
+ computedSnapAnimationDuration: number;
1442
+ };
1443
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
1444
+ $: {
1445
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
1446
+ destroy$: import("rxjs").Observable<void>;
1447
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1448
+ computedPageTurnMode: "controlled" | "scrollable";
1449
+ computedPageTurnDirection: "vertical" | "horizontal";
1450
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1451
+ computedPageTurnAnimationDuration: number;
1452
+ computedSnapAnimationDuration: number;
1453
+ }>;
1454
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
1455
+ };
1456
+ }) => HTMLDivElement;
1457
+ getElementDimensions: () => {
1458
+ width: number;
1459
+ height: number;
1460
+ };
1461
+ getHtmlFromResource: (response: Response) => Promise<string>;
1462
+ getResource: () => Promise<Response>;
1463
+ translateFramePositionIntoPage: (position: {
1464
+ clientX: number;
1465
+ clientY: number;
1466
+ }) => {
1467
+ clientX: number;
1468
+ clientY: number;
1469
+ };
1470
+ setLayoutDirty: () => void;
1471
+ injectStyle: (cssText: string) => void;
1472
+ loadContent: () => void;
1473
+ unloadContent: () => void;
1474
+ spineItemFrame: {
1475
+ getIsLoaded: () => boolean;
1476
+ getIsReady: () => boolean;
1477
+ getViewportDimensions: () => {
1478
+ width: number;
1479
+ height: number;
1480
+ } | undefined;
1481
+ getFrameElement: () => HTMLIFrameElement | undefined;
1482
+ getHtmlFromResource: (response: Response) => Promise<string>;
1483
+ load: () => void;
1484
+ unload: () => void;
1485
+ staticLayout: (size: {
1486
+ width: number;
1487
+ height: number;
1488
+ }) => void;
1489
+ getManipulableFrame: () => {
1490
+ frame: HTMLIFrameElement;
1491
+ removeStyle: (id: string) => void;
1492
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1493
+ } | undefined;
1494
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1495
+ isUsingVerticalWriting: () => boolean;
1496
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
1497
+ destroy: () => void;
1498
+ $: {
1499
+ unload$: import("rxjs").Observable<void>;
1500
+ unloaded$: import("rxjs").Observable<void>;
1501
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1502
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1503
+ isReady$: import("rxjs").Observable<boolean>;
1504
+ contentLayoutChange$: import("rxjs").Observable<{
1505
+ isFirstLayout: boolean;
1506
+ } | {
1507
+ isFirstLayout: boolean;
1508
+ }>;
1509
+ };
1510
+ };
1511
+ element: HTMLElement;
1512
+ loadingElement: HTMLDivElement;
1513
+ isReflowable: boolean;
1514
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1515
+ getViewPortInformation: () => {
1516
+ computedScale: number;
1517
+ computedWidthScale: number;
1518
+ viewportDimensions: {
1519
+ width: number;
1520
+ height: number;
1521
+ };
1522
+ } | {
1523
+ width?: number | undefined;
1524
+ height?: number | undefined;
1525
+ computedScale: number;
1526
+ computedWidthScale: number;
1527
+ viewportDimensions?: undefined;
1528
+ };
1529
+ isImageType: () => boolean | undefined;
1530
+ isReady: () => boolean;
1531
+ destroy: () => void;
1532
+ isUsingVerticalWriting: () => boolean | undefined;
1533
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1534
+ manipulateSpineItem: (cb: (options: {
1535
+ container: HTMLElement;
1536
+ loadingElement: HTMLElement;
1537
+ item: {
1538
+ id: string;
1539
+ href: string;
1540
+ path: string;
1541
+ renditionLayout: "reflowable" | "pre-paginated";
1542
+ progressionWeight: number;
1543
+ pageSpreadLeft: true | undefined;
1544
+ pageSpreadRight: true | undefined;
1545
+ mediaType?: string | undefined;
1546
+ };
1547
+ overlayElement: HTMLDivElement;
1548
+ } & ({
1549
+ frame: HTMLIFrameElement;
1550
+ removeStyle: (id: string) => void;
1551
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1552
+ } | {
1553
+ frame: undefined;
1554
+ removeStyle: (id: string) => void;
1555
+ addStyle: (id: string, style: string) => void;
1556
+ })) => boolean) => boolean;
1557
+ executeOnLayoutBeforeMeasurmentHook: (options: {
1558
+ minimumWidth: number;
1559
+ }) => void;
1560
+ selectionTracker: {
1561
+ track: (frameToTrack: HTMLIFrameElement) => void;
1562
+ destroy: () => void;
1563
+ isSelecting: () => boolean;
1564
+ getSelection: () => Selection | undefined;
1565
+ $: import("rxjs").Observable<{
1566
+ event: "selectionchange";
1567
+ data: Selection | null;
1568
+ } | {
1569
+ event: "selectstart";
1570
+ data: Selection | null;
1571
+ } | {
1572
+ event: "selectend";
1573
+ data: Selection | null;
1574
+ }>;
1575
+ };
1576
+ fingerTracker: {
1577
+ track: (frame: HTMLIFrameElement) => void;
1578
+ getFingerPositionInIframe(): {
1579
+ x: number | undefined;
1580
+ y: number | undefined;
1581
+ } | undefined;
1582
+ destroy: () => void;
1583
+ $: import("rxjs").Observable<{
1584
+ event: "fingermove";
1585
+ data: {
1586
+ x: number;
1587
+ y: number;
1588
+ };
1589
+ } | {
1590
+ event: "fingerout";
1591
+ data: undefined;
1592
+ }>;
1593
+ };
1594
+ $: {
1595
+ contentLayoutChangeSubject$: import("rxjs").Observable<{
1596
+ isFirstLayout: boolean;
1597
+ isReady: boolean;
1598
+ }>;
1599
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1600
+ };
1601
+ }) | undefined) | ((position: {
1602
+ x: number;
1603
+ y: number;
1604
+ }) => ({
1605
+ item: {
1606
+ id: string;
1607
+ href: string;
1608
+ path: string;
1609
+ renditionLayout: "reflowable" | "pre-paginated";
1610
+ progressionWeight: number;
1611
+ pageSpreadLeft: true | undefined;
1612
+ pageSpreadRight: true | undefined;
1613
+ mediaType?: string | undefined;
1614
+ };
1615
+ } & {
1616
+ layout: (layoutInformation: {
1617
+ blankPagePosition: "after" | "before" | "none";
1618
+ minimumWidth: number;
1619
+ spreadPosition: "right" | "left" | "none";
1620
+ }) => {
1621
+ width: number;
1622
+ height: number;
1623
+ };
1624
+ load: () => void;
1625
+ adjustPositionOfElement: ({ right, left, top }: {
1626
+ right?: number | undefined;
1627
+ left?: number | undefined;
1628
+ top?: number | undefined;
1629
+ }) => void;
1630
+ createLoadingElement: (containerElement: HTMLElement, item: {
1631
+ id: string;
1632
+ href: string;
1633
+ path: string;
1634
+ renditionLayout: "reflowable" | "pre-paginated";
1635
+ progressionWeight: number;
1636
+ pageSpreadLeft: true | undefined;
1637
+ pageSpreadRight: true | undefined;
1638
+ mediaType?: string | undefined;
1639
+ }, context: {
1640
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
1641
+ isRTL: () => boolean;
1642
+ areAllItemsPrePaginated: () => boolean;
1643
+ destroy: () => void;
1644
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
1645
+ getCalculatedInnerMargin: () => number;
1646
+ getVisibleAreaRect: () => {
1647
+ width: number;
1648
+ height: number;
1649
+ x: number;
1650
+ y: number;
1651
+ };
1652
+ shouldDisplaySpread: () => boolean;
1653
+ setHasVerticalWriting: () => void;
1654
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
1655
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
1656
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1657
+ getPageSize: () => {
1658
+ width: number;
1659
+ height: number;
1660
+ };
1661
+ getSettings: () => import("./settings").PublicSettings & {
1662
+ computedPageTurnMode: "controlled" | "scrollable";
1663
+ computedPageTurnDirection: "vertical" | "horizontal";
1664
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1665
+ computedPageTurnAnimationDuration: number;
1666
+ computedSnapAnimationDuration: number;
1667
+ };
1668
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
1669
+ $: {
1670
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
1671
+ destroy$: import("rxjs").Observable<void>;
1672
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1673
+ computedPageTurnMode: "controlled" | "scrollable";
1674
+ computedPageTurnDirection: "vertical" | "horizontal";
1675
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1676
+ computedPageTurnAnimationDuration: number;
1677
+ computedSnapAnimationDuration: number;
1678
+ }>;
1679
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
1680
+ };
1681
+ }) => HTMLDivElement;
1682
+ getElementDimensions: () => {
1683
+ width: number;
1684
+ height: number;
1685
+ };
1686
+ getHtmlFromResource: (response: Response) => Promise<string>;
1687
+ getResource: () => Promise<Response>;
1688
+ translateFramePositionIntoPage: (position: {
1689
+ clientX: number;
1690
+ clientY: number;
1691
+ }) => {
1692
+ clientX: number;
1693
+ clientY: number;
1694
+ };
1695
+ setLayoutDirty: () => void;
1696
+ injectStyle: (cssText: string) => void;
1697
+ loadContent: () => void;
1698
+ unloadContent: () => void;
1699
+ spineItemFrame: {
1700
+ getIsLoaded: () => boolean;
1701
+ getIsReady: () => boolean;
1702
+ getViewportDimensions: () => {
1703
+ width: number;
1704
+ height: number;
1705
+ } | undefined;
1706
+ getFrameElement: () => HTMLIFrameElement | undefined;
1707
+ getHtmlFromResource: (response: Response) => Promise<string>;
1708
+ load: () => void;
1709
+ unload: () => void;
1710
+ staticLayout: (size: {
1711
+ width: number;
1712
+ height: number;
1713
+ }) => void;
1714
+ getManipulableFrame: () => {
1715
+ frame: HTMLIFrameElement;
1716
+ removeStyle: (id: string) => void;
1717
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1718
+ } | undefined;
1719
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1720
+ isUsingVerticalWriting: () => boolean;
1721
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
1722
+ destroy: () => void;
1723
+ $: {
1724
+ unload$: import("rxjs").Observable<void>;
1725
+ unloaded$: import("rxjs").Observable<void>;
1726
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1727
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
1728
+ isReady$: import("rxjs").Observable<boolean>;
1729
+ contentLayoutChange$: import("rxjs").Observable<{
1730
+ isFirstLayout: boolean;
1731
+ } | {
1732
+ isFirstLayout: boolean;
1733
+ }>;
1734
+ };
1735
+ };
1736
+ element: HTMLElement;
1737
+ loadingElement: HTMLDivElement;
1738
+ isReflowable: boolean;
1739
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
1740
+ getViewPortInformation: () => {
1741
+ computedScale: number;
1742
+ computedWidthScale: number;
1743
+ viewportDimensions: {
1744
+ width: number;
1745
+ height: number;
1746
+ };
1747
+ } | {
1748
+ width?: number | undefined;
1749
+ height?: number | undefined;
1750
+ computedScale: number;
1751
+ computedWidthScale: number;
1752
+ viewportDimensions?: undefined;
1753
+ };
1754
+ isImageType: () => boolean | undefined;
1755
+ isReady: () => boolean;
1756
+ destroy: () => void;
1757
+ isUsingVerticalWriting: () => boolean | undefined;
1758
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1759
+ manipulateSpineItem: (cb: (options: {
1760
+ container: HTMLElement;
1761
+ loadingElement: HTMLElement;
1762
+ item: {
1763
+ id: string;
1764
+ href: string;
1765
+ path: string;
1766
+ renditionLayout: "reflowable" | "pre-paginated";
1767
+ progressionWeight: number;
1768
+ pageSpreadLeft: true | undefined;
1769
+ pageSpreadRight: true | undefined;
1770
+ mediaType?: string | undefined;
1771
+ };
1772
+ overlayElement: HTMLDivElement;
1773
+ } & ({
1774
+ frame: HTMLIFrameElement;
1775
+ removeStyle: (id: string) => void;
1776
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
1777
+ } | {
1778
+ frame: undefined;
1779
+ removeStyle: (id: string) => void;
1780
+ addStyle: (id: string, style: string) => void;
1781
+ })) => boolean) => boolean;
1782
+ executeOnLayoutBeforeMeasurmentHook: (options: {
1783
+ minimumWidth: number;
1784
+ }) => void;
1785
+ selectionTracker: {
1786
+ track: (frameToTrack: HTMLIFrameElement) => void;
1787
+ destroy: () => void;
1788
+ isSelecting: () => boolean;
1789
+ getSelection: () => Selection | undefined;
1790
+ $: import("rxjs").Observable<{
1791
+ event: "selectionchange";
1792
+ data: Selection | null;
1793
+ } | {
1794
+ event: "selectstart";
1795
+ data: Selection | null;
1796
+ } | {
1797
+ event: "selectend";
1798
+ data: Selection | null;
1799
+ }>;
1800
+ };
1801
+ fingerTracker: {
1802
+ track: (frame: HTMLIFrameElement) => void;
1803
+ getFingerPositionInIframe(): {
1804
+ x: number | undefined;
1805
+ y: number | undefined;
1806
+ } | undefined;
1807
+ destroy: () => void;
1808
+ $: import("rxjs").Observable<{
1809
+ event: "fingermove";
1810
+ data: {
1811
+ x: number;
1812
+ y: number;
1813
+ };
1814
+ } | {
1815
+ event: "fingerout";
1816
+ data: undefined;
1817
+ }>;
1818
+ };
1819
+ $: {
1820
+ contentLayoutChangeSubject$: import("rxjs").Observable<{
1821
+ isFirstLayout: boolean;
1822
+ isReady: boolean;
1823
+ }>;
1824
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1825
+ };
1826
+ }) | undefined);
1827
+ getSpineItemFromIframe: (iframe: Element) => import("./spineItem/createSpineItem").SpineItem | undefined;
1828
+ getSpineItemPageIndexFromNode: (node: Node, offset: number | undefined, spineItemOrIndex: number | import("./spineItem/createSpineItem").SpineItem) => number | undefined;
1829
+ getSpineItemsFromReadingOrderPosition: (position: {
1830
+ x: number;
1831
+ y: number;
1832
+ }) => {
1833
+ left: number;
1834
+ right: number;
1835
+ begin: number;
1836
+ beginPosition: {
1837
+ x: number;
1838
+ y: number;
1839
+ };
1840
+ end: number;
1841
+ endPosition: {
1842
+ x: number;
1843
+ y: number;
1844
+ };
1845
+ } | undefined;
1846
+ };
1847
+ getCurrentNavigationPosition: () => import("./spine/navigationResolver").ViewportNavigationEntry;
1848
+ getCurrentViewportPosition: (() => {
1849
+ x: number;
1850
+ y: number;
1851
+ }) | (() => {
1852
+ x: number;
1853
+ y: number;
1854
+ });
1855
+ layout: () => void;
1856
+ load: (manifest: import("@prose-reader/shared").Manifest, loadOptions?: import("./types").LoadOptions | undefined) => void;
1857
+ destroy: () => void;
1858
+ $: Omit<{
1859
+ pagination$: import("rxjs").Observable<{
1860
+ beginPageIndex: number | undefined;
1861
+ beginNumberOfPages: number;
1862
+ beginCfi: string | undefined;
1863
+ beginSpineItemIndex: number | undefined;
1864
+ endPageIndex: number | undefined;
1865
+ endNumberOfPages: number;
1866
+ endCfi: string | undefined;
1867
+ endSpineItemIndex: number | undefined;
1868
+ }>;
1869
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1870
+ computedPageTurnMode: "controlled" | "scrollable";
1871
+ computedPageTurnDirection: "vertical" | "horizontal";
1872
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1873
+ computedPageTurnAnimationDuration: number;
1874
+ computedSnapAnimationDuration: number;
1875
+ }>;
1876
+ state$: import("rxjs").Observable<{
1877
+ supportedPageTurnAnimation: ("none" | "fade" | "slide")[];
1878
+ supportedPageTurnMode: ("controlled" | "scrollable")[];
1879
+ supportedPageTurnDirection: ("vertical" | "horizontal")[];
1880
+ supportedComputedPageTurnDirection: ("vertical" | "horizontal")[];
1881
+ }>;
1882
+ ready$: import("rxjs").Observable<void>;
1883
+ selection$: import("rxjs").Observable<{
1884
+ toString: () => string;
1885
+ getAnchorCfi: () => string | undefined;
1886
+ getFocusCfi: () => string | undefined;
1887
+ } | null>;
1888
+ viewportState$: import("rxjs").Observable<"free" | "busy">;
1889
+ layout$: import("rxjs").Observable<boolean>;
1890
+ destroy$: import("rxjs").Observable<void>;
1891
+ }, "settings$"> & {
1892
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1893
+ computedPageTurnMode: "controlled" | "scrollable";
1894
+ computedPageTurnDirection: "vertical" | "horizontal";
1895
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1896
+ computedPageTurnAnimationDuration: number;
1897
+ computedSnapAnimationDuration: number;
1898
+ }>;
1899
+ };
1900
+ } & Omit<{
1901
+ setSettings: (settings: Partial<import("./settings").PublicSettings>) => void;
1902
+ } & {
1903
+ progression: {
1904
+ getPercentageEstimate: (context: {
1905
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
1906
+ isRTL: () => boolean;
1907
+ areAllItemsPrePaginated: () => boolean;
1908
+ destroy: () => void;
1909
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
1910
+ getCalculatedInnerMargin: () => number;
1911
+ getVisibleAreaRect: () => {
1912
+ width: number;
1913
+ height: number;
1914
+ x: number;
1915
+ y: number;
1916
+ };
1917
+ shouldDisplaySpread: () => boolean;
1918
+ setHasVerticalWriting: () => void;
1919
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
1920
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
1921
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1922
+ getPageSize: () => {
1923
+ width: number;
1924
+ height: number;
1925
+ };
1926
+ getSettings: () => import("./settings").PublicSettings & {
1927
+ computedPageTurnMode: "controlled" | "scrollable";
1928
+ computedPageTurnDirection: "vertical" | "horizontal";
1929
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1930
+ computedPageTurnAnimationDuration: number;
1931
+ computedSnapAnimationDuration: number;
1932
+ };
1933
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
1934
+ $: {
1935
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
1936
+ destroy$: import("rxjs").Observable<void>;
1937
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1938
+ computedPageTurnMode: "controlled" | "scrollable";
1939
+ computedPageTurnDirection: "vertical" | "horizontal";
1940
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1941
+ computedPageTurnAnimationDuration: number;
1942
+ computedSnapAnimationDuration: number;
1943
+ }>;
1944
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
1945
+ };
1946
+ }, currentSpineIndex: number, numberOfPages: number, pageIndex: number, currentPosition: {
1947
+ x: number;
1948
+ y: number;
1949
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
1950
+ getScrollPercentageWithinItem: (context: {
1951
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
1952
+ isRTL: () => boolean;
1953
+ areAllItemsPrePaginated: () => boolean;
1954
+ destroy: () => void;
1955
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
1956
+ getCalculatedInnerMargin: () => number;
1957
+ getVisibleAreaRect: () => {
1958
+ width: number;
1959
+ height: number;
1960
+ x: number;
1961
+ y: number;
1962
+ };
1963
+ shouldDisplaySpread: () => boolean;
1964
+ setHasVerticalWriting: () => void;
1965
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
1966
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
1967
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
1968
+ getPageSize: () => {
1969
+ width: number;
1970
+ height: number;
1971
+ };
1972
+ getSettings: () => import("./settings").PublicSettings & {
1973
+ computedPageTurnMode: "controlled" | "scrollable";
1974
+ computedPageTurnDirection: "vertical" | "horizontal";
1975
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1976
+ computedPageTurnAnimationDuration: number;
1977
+ computedSnapAnimationDuration: number;
1978
+ };
1979
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
1980
+ $: {
1981
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
1982
+ destroy$: import("rxjs").Observable<void>;
1983
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
1984
+ computedPageTurnMode: "controlled" | "scrollable";
1985
+ computedPageTurnDirection: "vertical" | "horizontal";
1986
+ computedPageTurnAnimation: "none" | "fade" | "slide";
1987
+ computedPageTurnAnimationDuration: number;
1988
+ computedSnapAnimationDuration: number;
1989
+ }>;
1990
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
1991
+ };
1992
+ }, currentPosition: {
1993
+ x: number;
1994
+ y: number;
1995
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
1996
+ };
1997
+ }, "setSettings" | "context" | "registerHook" | "spine" | "manipulateSpineItems" | "manipulateContainer" | "moveTo" | "turnLeft" | "turnRight" | "goToPageOfCurrentChapter" | "goToPage" | "goToUrl" | "goToCfi" | "goToSpineItem" | "getFocusedSpineItemIndex" | "getSpineItem" | "getSpineItems" | "getAbsolutePositionOf" | "getSelection" | "isSelecting" | "normalizeEventForViewport" | "getCfiMetaInformation" | "resolveCfi" | "generateCfi" | "locator" | "getCurrentNavigationPosition" | "getCurrentViewportPosition" | "layout" | "load" | "destroy" | "$"> & {
1998
+ __API?: {
1999
+ progression: {
2000
+ getPercentageEstimate: (context: {
2001
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
2002
+ isRTL: () => boolean;
2003
+ areAllItemsPrePaginated: () => boolean;
2004
+ destroy: () => void;
2005
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
2006
+ getCalculatedInnerMargin: () => number;
2007
+ getVisibleAreaRect: () => {
2008
+ width: number;
2009
+ height: number;
2010
+ x: number;
2011
+ y: number;
2012
+ };
2013
+ shouldDisplaySpread: () => boolean;
2014
+ setHasVerticalWriting: () => void;
2015
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
2016
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
2017
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2018
+ getPageSize: () => {
2019
+ width: number;
2020
+ height: number;
2021
+ };
2022
+ getSettings: () => import("./settings").PublicSettings & {
2023
+ computedPageTurnMode: "controlled" | "scrollable";
2024
+ computedPageTurnDirection: "vertical" | "horizontal";
2025
+ computedPageTurnAnimation: "none" | "fade" | "slide";
2026
+ computedPageTurnAnimationDuration: number;
2027
+ computedSnapAnimationDuration: number;
2028
+ };
2029
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
2030
+ $: {
2031
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
2032
+ destroy$: import("rxjs").Observable<void>;
2033
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
2034
+ computedPageTurnMode: "controlled" | "scrollable";
2035
+ computedPageTurnDirection: "vertical" | "horizontal";
2036
+ computedPageTurnAnimation: "none" | "fade" | "slide";
2037
+ computedPageTurnAnimationDuration: number;
2038
+ computedSnapAnimationDuration: number;
2039
+ }>;
2040
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
2041
+ };
2042
+ }, currentSpineIndex: number, numberOfPages: number, pageIndex: number, currentPosition: {
2043
+ x: number;
2044
+ y: number;
2045
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
2046
+ getScrollPercentageWithinItem: (context: {
2047
+ load: (newManifest: import("@prose-reader/shared").Manifest, newLoadOptions: import("./types").LoadOptions) => void;
2048
+ isRTL: () => boolean;
2049
+ areAllItemsPrePaginated: () => boolean;
2050
+ destroy: () => void;
2051
+ getLoadOptions: () => import("./types").LoadOptions | undefined;
2052
+ getCalculatedInnerMargin: () => number;
2053
+ getVisibleAreaRect: () => {
2054
+ width: number;
2055
+ height: number;
2056
+ x: number;
2057
+ y: number;
2058
+ };
2059
+ shouldDisplaySpread: () => boolean;
2060
+ setHasVerticalWriting: () => void;
2061
+ setVisibleAreaRect: (x: number, y: number, width: number, height: number) => void;
2062
+ getManifest: () => import("@prose-reader/shared").Manifest | undefined;
2063
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2064
+ getPageSize: () => {
2065
+ width: number;
2066
+ height: number;
2067
+ };
2068
+ getSettings: () => import("./settings").PublicSettings & {
2069
+ computedPageTurnMode: "controlled" | "scrollable";
2070
+ computedPageTurnDirection: "vertical" | "horizontal";
2071
+ computedPageTurnAnimation: "none" | "fade" | "slide";
2072
+ computedPageTurnAnimationDuration: number;
2073
+ computedSnapAnimationDuration: number;
2074
+ };
2075
+ setSettings: (data: Partial<import("./settings").PublicSettings>) => void;
2076
+ $: {
2077
+ hasVerticalWriting$: import("rxjs").Observable<boolean>;
2078
+ destroy$: import("rxjs").Observable<void>;
2079
+ settings$: import("rxjs").Observable<import("./settings").PublicSettings & {
2080
+ computedPageTurnMode: "controlled" | "scrollable";
2081
+ computedPageTurnDirection: "vertical" | "horizontal";
2082
+ computedPageTurnAnimation: "none" | "fade" | "slide";
2083
+ computedPageTurnAnimationDuration: number;
2084
+ computedSnapAnimationDuration: number;
2085
+ }>;
2086
+ load$: import("rxjs").Observable<import("@prose-reader/shared").Manifest>;
2087
+ };
2088
+ }, currentPosition: {
2089
+ x: number;
2090
+ y: number;
2091
+ }, currentItem: import("./spineItem/createSpineItem").SpineItem) => number;
2092
+ };
2093
+ } | undefined;
2094
+ __OutputSettings?: {} | undefined;
2095
+ }>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2096
+ hooks?: import("./types/Hook").Hook[] | undefined;
2097
+ containerElement: HTMLElement;
2098
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2099
+ hooks?: import("./types/Hook").Hook[] | undefined;
2100
+ containerElement: HTMLElement;
2101
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{
2102
+ theme?: "bright" | "sepia" | "night" | undefined;
2103
+ }, {
2104
+ setTheme: (theme: "bright" | "sepia" | "night" | undefined) => void;
2105
+ getTheme: () => "bright" | "sepia" | "night" | undefined;
2106
+ }, {}, {}, (createReader: (options: {
2107
+ hooks?: import("./types/Hook").Hook[] | undefined;
2108
+ containerElement: HTMLElement;
2109
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2110
+ hooks?: import("./types/Hook").Hook[] | undefined;
2111
+ containerElement: HTMLElement;
2112
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {
2113
+ goToLeftSpineItem: () => void;
2114
+ goToRightSpineItem: () => void;
2115
+ }, {}, {}, (createReader: (options: {
2116
+ hooks?: import("./types/Hook").Hook[] | undefined;
2117
+ containerElement: HTMLElement;
2118
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2119
+ hooks?: import("./types/Hook").Hook[] | undefined;
2120
+ containerElement: HTMLElement;
2121
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2122
+ hooks?: import("./types/Hook").Hook[] | undefined;
2123
+ containerElement: HTMLElement;
2124
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2125
+ hooks?: import("./types/Hook").Hook[] | undefined;
2126
+ containerElement: HTMLElement;
2127
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2128
+ hooks?: import("./types/Hook").Hook[] | undefined;
2129
+ containerElement: HTMLElement;
2130
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2131
+ hooks?: import("./types/Hook").Hook[] | undefined;
2132
+ containerElement: HTMLElement;
2133
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {
2134
+ zoom: {
2135
+ enter: (imgElement: HTMLImageElement) => void;
2136
+ exit: () => void;
2137
+ move: (position: {
2138
+ x: number;
2139
+ y: number;
2140
+ } | undefined, details: {
2141
+ isFirst: boolean;
2142
+ isLast: boolean;
2143
+ }) => void;
2144
+ isEnabled: () => boolean;
2145
+ scale: (scale: number) => void;
2146
+ };
2147
+ }, {}, {}, (createReader: (options: {
2148
+ hooks?: import("./types/Hook").Hook[] | undefined;
2149
+ containerElement: HTMLElement;
2150
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2151
+ hooks?: import("./types/Hook").Hook[] | undefined;
2152
+ containerElement: HTMLElement;
2153
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{
2154
+ pageHorizontalMargin?: number | undefined;
2155
+ pageVerticalMargin?: number | undefined;
2156
+ } & {
2157
+ layoutAutoResize?: false | "container" | undefined;
2158
+ }, {}, {
2159
+ pageHorizontalMargin?: number | undefined;
2160
+ pageVerticalMargin?: number | undefined;
2161
+ }, Required<{
2162
+ pageHorizontalMargin?: number | undefined;
2163
+ pageVerticalMargin?: number | undefined;
2164
+ }>, (createReader: (options: {
2165
+ hooks?: import("./types/Hook").Hook[] | undefined;
2166
+ containerElement: HTMLElement;
2167
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2168
+ hooks?: import("./types/Hook").Hook[] | undefined;
2169
+ containerElement: HTMLElement;
2170
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {
2171
+ utils: {
2172
+ isOrIsWithinValidLink: (target: EventTarget | null) => boolean;
2173
+ };
2174
+ }, {}, {}, (createReader: (options: {
2175
+ hooks?: import("./types/Hook").Hook[] | undefined;
2176
+ containerElement: HTMLElement;
2177
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2178
+ hooks?: import("./types/Hook").Hook[] | undefined;
2179
+ containerElement: HTMLElement;
2180
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2181
+ hooks?: import("./types/Hook").Hook[] | undefined;
2182
+ containerElement: HTMLElement;
2183
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2184
+ hooks?: import("./types/Hook").Hook[] | undefined;
2185
+ containerElement: HTMLElement;
2186
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2187
+ hooks?: import("./types/Hook").Hook[] | undefined;
2188
+ containerElement: HTMLElement;
2189
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2190
+ hooks?: import("./types/Hook").Hook[] | undefined;
2191
+ containerElement: HTMLElement;
2192
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {
2193
+ $: {
2194
+ links$: import("rxjs").Observable<{
2195
+ event: "linkClicked";
2196
+ data: HTMLAnchorElement;
2197
+ }>;
2198
+ };
2199
+ }, {}, {}, (createReader: (options: {
2200
+ hooks?: import("./types/Hook").Hook[] | undefined;
2201
+ containerElement: HTMLElement;
2202
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2203
+ hooks?: import("./types/Hook").Hook[] | undefined;
2204
+ containerElement: HTMLElement;
2205
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{
2206
+ fontScale?: number | undefined;
2207
+ lineHeight?: number | "publisher" | undefined;
2208
+ fontWeight?: 200 | "publisher" | 100 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
2209
+ fontJustification?: "right" | "left" | "publisher" | "center" | "justify" | undefined;
2210
+ }, {}, {
2211
+ fontScale?: number | undefined;
2212
+ lineHeight?: number | "publisher" | undefined;
2213
+ fontWeight?: 200 | "publisher" | 100 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
2214
+ fontJustification?: "right" | "left" | "publisher" | "center" | "justify" | undefined;
2215
+ }, Required<{
2216
+ fontScale?: number | undefined;
2217
+ lineHeight?: number | "publisher" | undefined;
2218
+ fontWeight?: 200 | "publisher" | 100 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | undefined;
2219
+ fontJustification?: "right" | "left" | "publisher" | "center" | "justify" | undefined;
2220
+ }>, (createReader: (options: {
2221
+ hooks?: import("./types/Hook").Hook[] | undefined;
2222
+ containerElement: HTMLElement;
2223
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2224
+ hooks?: import("./types/Hook").Hook[] | undefined;
2225
+ containerElement: HTMLElement;
2226
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>, Enhancer<{}, {}, {}, {}, (createReader: (options: {
2227
+ hooks?: import("./types/Hook").Hook[] | undefined;
2228
+ containerElement: HTMLElement;
2229
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi) => (options: {
2230
+ hooks?: import("./types/Hook").Hook[] | undefined;
2231
+ containerElement: HTMLElement;
2232
+ } & Pick<Partial<import("./settings").PublicSettings>, "forceSinglePageMode" | "pageTurnAnimation" | "pageTurnDirection" | "pageTurnMode">) => ReaderPublicApi, ReaderPublicApi>>;
2233
+ declare type WithoutPrivateApi<E> = Omit<E, RemovedKeysOnly | `__debug` | `__API` | `__OutputSettings`>;
2234
+ declare type EnhancerOptions<E extends (...args: any) => any> = Parameters<ReturnType<E>>[0];
2235
+ declare type EnhancerExposedApi<E extends (...args: any) => any> = ReturnType<ReturnType<E>>;
2236
+ export declare type CoreEnhancer = typeof internalEnhancer;
2237
+ export declare type CoreEnhancerDependsOn = (createReader: Parameters<CoreEnhancer>[0]) => (options: EnhancerOptions<CoreEnhancer>) => EnhancerExposedApi<CoreEnhancer>;
2238
+ export declare type ExternalEnhancer<Options = {}, Api = {}, Settings = {}, OutputSettings = Settings, DependsOn extends (createReader: any) => (options: any) => any = CoreEnhancerDependsOn> = Enhancer<Options, Api, Settings, OutputSettings, DependsOn>;
2239
+ export declare function createReaderWithEnhancer(options: EnhancerOptions<CoreEnhancer>): WithoutPrivateApi<EnhancerExposedApi<CoreEnhancer>>;
2240
+ export declare function createReaderWithEnhancer<UserEnhancer extends ComposableEnhancer>(options: EnhancerOptions<UserEnhancer> & EnhancerOptions<CoreEnhancer>, enhancer: UserEnhancer): WithoutPrivateApi<EnhancerExposedApi<ComposeEnhancer<typeof internalEnhancer, UserEnhancer>>>;
2241
+ export declare type Reader<E extends ComposableEnhancer | void = void> = E extends ComposableEnhancer ? WithoutPrivateApi<EnhancerExposedApi<ComposeEnhancer<CoreEnhancer, E>>> : WithoutPrivateApi<EnhancerExposedApi<CoreEnhancer>>;
2242
+ export {};