@embedpdf/plugin-stage 3.0.0-next.13 → 3.0.0-next.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,104 +1,97 @@
1
- import { C as Viewpoint, S as StageViewState, _ as StageConfig, a as GridColumns, b as StageState, c as RevealAnchor, d as RevealZoom, f as Scheduler, g as StageCapability, h as StageBox, i as GoToOptions, l as RevealAnchorValue, m as StageAction, n as FlowMode, o as LayoutKind, p as ScrollBehaviorKind, r as Gap, s as ResponsiveRule, t as BoxQuery, u as RevealOptions, v as StageScrollToOptions, w as VisiblePage, x as StageToken, y as StageSettings } from "./types-qdO_v-V-.cjs";
2
- import { Align, Alignment, Direction, PageFrame, ScrollMetrics, SizingMode, SpreadMode, ZoomMode, ZoomModeValue, ZoomSpec } from "./contract.cjs";
3
- import { DestinationReveal, destinationToReveal } from "./destination.cjs";
4
- import { CapabilityToken } from "@embedpdf/core";
5
- import { Size } from "@embedpdf/core-stage";
6
- import { InteractionCapability, InteractionHandler } from "@embedpdf/plugin-interaction/contract";
1
+ import { A as StageCapability, B as StageViewportChangedEvent, C as ScrollBehaviorKind, D as SpreadMode, E as SizingMode, F as StageScrollToOptions, G as VisiblePage, H as Viewpoint, I as StageSettings, J as ZoomSpec, K as ZoomMode, L as StageSettingsChangedEvent, M as StageMotionEndedEvent, N as StagePageChangedEvent, O as StageBox, P as StagePluginOptions, R as StageSettingsPatch, S as RevealZoom, T as Size, U as ViewportPoint, V as StageZoomChangedEvent, W as ViewportRect, X as StageToken, Y as ZoomToOptions, _ as Point, a as ArrivalAlignValue, b as RevealAnchorValue, c as Camera, d as Gap, f as GoToDestinationOptions, g as PageFrame, h as LayoutKind, i as AlignmentValue, j as StageConfig, k as StageCameraChangedEvent, l as Direction, m as GridColumns, n as AlignValue, o as ArrivalAlignment, p as GoToOptions, q as ZoomModeValue, r as Alignment, s as BoxQuery, t as Align, u as FlowMode, v as ResponsiveRule, w as ScrollMetrics, x as RevealOptions, y as RevealAnchor, z as StageViewState } from "./contract-DZR_jRer.cjs";
2
+ import { c as StageState, o as StageHostCapability } from "./host-contract-CPtbnJ4j.cjs";
3
+ import { Size as Size$1 } from "@embedpdf/core-stage";
4
+ import { InteractionHandler, InteractionHostCapability } from "@embedpdf/plugin-interaction/contract/host";
7
5
  //#region src/stage.plugin.d.ts
8
6
  /**
9
- * Options for registering a stage instance. The Stage is a LENS, not a singleton:
10
- * a document may be viewed through several stages at once (the main view, a wrapped
11
- * thumbnail sidebar, …), each with independent camera/settings. Register additional
12
- * lenses by giving them their own `id` + `token`:
13
- *
14
- * const ThumbsToken = createCapabilityToken<StageCapability>('stage-thumbs');
15
- * plugins = [
16
- * stagePlugin(), // main lens
17
- * stagePlugin({ id: 'stage-thumbs', token: ThumbsToken,
18
- * layout: 'grid', columns: 'auto', zoom: { level: 0.2 } }),
19
- * ];
20
- *
21
- * Everything multiplexes automatically: state slices, capabilities, and teardown
22
- * are already keyed by plugin-id × document in the kernel.
23
- */
24
- interface StagePluginOptions extends StageConfig {
25
- id?: string;
26
- token?: CapabilityToken<StageCapability>;
27
- }
28
- /**
29
- * Wires the parts into a kernel plugin. This file is the "manifest": it says what
30
- * the plugin IS (id, token, state, reducer, capability) — the how lives in the
31
- * sibling files.
7
+ * The stage plugin: one lens's camera, layout, zoom and navigation over a
8
+ * document. Document-scoped. The actions plugin is optional: with it, the
9
+ * main lens feeds page state to it and interprets GoTo and Named page
10
+ * actions. Pointer input is opted into by the surface binding
11
+ * (`<Stage interaction>` / `createStageSurface`), which both forwards pointer
12
+ * samples and registers this lens's scroll handler.
32
13
  */
33
- declare const stagePlugin: (options?: StagePluginOptions) => import("@embedpdf/core").PluginDef<StageState, StageAction, StageCapability>;
14
+ declare const stagePlugin: (options?: StagePluginOptions) => import("@embedpdf/core").PluginDef<StageState, StageHostCapability, import("@embedpdf/core").NoSettings>;
15
+ //#endregion
16
+ //#region src/state.d.ts
17
+ declare const stageState: import("@embedpdf/core").StateDeclaration<StageCapability, {
18
+ zoomLevel: number;
19
+ zoomMode: import("@embedpdf/core-stage").ZoomModeValue | "custom";
20
+ currentPageIndex: number;
21
+ currentPage: import("@embedpdf/core").PageRef | null;
22
+ pageCount: number;
23
+ viewRotation: import("@embedpdf/core-geometry").PageRotation;
24
+ activeRules: readonly string[];
25
+ }>;
34
26
  //#endregion
35
27
  //#region src/scroll-handler.d.ts
36
28
  interface ScrollHandlerOptions {
37
29
  /**
38
- * Let a drag over a page GAP pan regardless of the active tool — and show a grab
39
- * cursor there — so the gutter always pans (v2 parity, and the natural feel:
40
- * outside a page there's nothing to draw/select on). On-page behaviour is
41
- * untouched; the tool's own gesture still owns page space. Default true.
30
+ * Let a drag over a page gap pan regardless of the active tool, and show a
31
+ * grab cursor there, so the gutter always pans (outside a page there is
32
+ * nothing to draw on or select). On-page behavior is untouched: the tool's
33
+ * own gesture still owns page space. Default true.
42
34
  */
43
35
  panFallback?: boolean;
44
36
  }
45
37
  /**
46
38
  * Pan-the-camera as an interaction handler. Live under the built-in `pan` tool
47
- * (the `scroll` tag) and — with `panFallback` — under every tool, where it then
48
- * captures ONLY page-gap drags (on-page downs belong to the active tool, which
49
- * claims them first at higher priority). It uses the sample's viewport delta, so
50
- * it pans over the whole viewport (pages and gaps).
39
+ * (the `scroll` tag) and, with `panFallback`, under every tool, where it then
40
+ * captures only page-gap drags (on-page downs belong to the active tool, which
41
+ * claims them first at higher priority). It uses the sample's viewport delta,
42
+ * so it pans over the whole viewport (pages and gaps).
51
43
  *
52
- * Cursor feel: a closed hand (`grabbing`) while dragging; an open hand (`grab`)
44
+ * Cursors: a closed hand (`grabbing`) while dragging; an open hand (`grab`)
53
45
  * hovering a gap under a non-pan tool. The pan tool's own resting `grab` comes
54
46
  * from its `Tool.cursor`, so hovering it needs no claim here.
55
47
  */
56
- declare function createScrollHandler(stage: StageCapability, interaction: InteractionCapability, options?: ScrollHandlerOptions): InteractionHandler;
48
+ declare function createScrollHandler(stage: StageCapability, interaction: InteractionHostCapability, options?: ScrollHandlerOptions): InteractionHandler;
57
49
  //#endregion
58
50
  //#region src/settings.d.ts
59
51
  /**
60
- * Out-of-the-box defaults — a sensible document-reading feel. They are JUST
61
- * defaults: every field is overridable in `stagePlugin(config)` and at runtime via
62
- * the setters / `update()`. The plugin ships NO named presets ("document",
63
- * "canvas", …) — a preset is simply an object the app keeps and passes to
64
- * `update()`, so that taxonomy stays a customer concern.
52
+ * Out-of-the-box defaults: a document-reading feel. Every field is overridable
53
+ * in `stagePlugin(config)` and at runtime through `updateSettings()`. The
54
+ * plugin ships no named presets ("document", "canvas", …): a preset is an
55
+ * object the app keeps and passes to `updateSettings()`, so that taxonomy
56
+ * stays the app's concern.
65
57
  */
66
58
  declare const DEFAULT_SETTINGS: StageSettings;
67
59
  /**
68
- * Out-of-the-box responsive rules — the platform feel with zero configuration:
69
- * a compact container gets the thin gutter phones use (space, not device — an
60
+ * Out-of-the-box responsive rules, the platform feel with zero configuration:
61
+ * a compact container gets the thin gutter phones use (space, not device: an
70
62
  * embedded 500px pane on a desktop is compact too). Override the whole list
71
63
  * with `stagePlugin({ responsive: [...] })`; `responsive: []` opts out. The
72
- * 'compact' name is queryable app-side via `stage.matches('compact')`.
64
+ * 'compact' name is queryable by the app through `stage.matchesRule('compact')`.
73
65
  */
74
66
  declare const DEFAULT_RESPONSIVE: readonly ResponsiveRule[];
75
- /** Field-by-field settings equality, derived from the registry — a new setting is
76
- * covered automatically. (The React `useStageSettings` selector equality.) */
77
- declare const settingsEqual: (a: StageSettings, b: StageSettings) => boolean;
67
+ /** Field-by-field settings equality, derived from the registry, so a new
68
+ * setting is covered automatically: what an adapter compares settings with. */
69
+ declare const settingsEqual: (left: StageSettings, right: StageSettings) => boolean;
78
70
  //#endregion
79
71
  //#region src/responsive.d.ts
80
72
  /**
81
- * Container queries for the settings bag — the pure half. The capability owns
82
- * the driver (when to re-resolve, how to react); the LAWS live here: what a
83
- * box is, when a query matches, and what the effective settings are. No state,
84
- * no dispatch — property-testable in isolation (the `wheel.ts` convention).
73
+ * Container queries for the settings bag, the pure half. The capability owns
74
+ * the driver (when to re-resolve, how to react); the laws live here: what a
75
+ * box is, when a query matches, and what the effective settings are. No
76
+ * state, so they are property-testable in isolation.
85
77
  *
86
- * The query vocabulary is deliberately just the box: a headless, DOM-free
87
- * stage knows exactly one environmental fact — the viewport it was told.
88
- * Anything else (pointer coarseness, platform, app state) is either per-event
89
- * (`PointerSample.pointerType`) or the app's own business via `update()`.
78
+ * The query vocabulary is only the box: a headless, DOM-free stage knows
79
+ * exactly one environmental fact, the viewport it was told. Anything else
80
+ * (pointer coarseness, platform, app state) is either per event
81
+ * (`PointerSample.pointerType`) or the app's own business via
82
+ * `updateSettings()`.
90
83
  */
91
84
  /** The reported viewport as a queryable box. A square box is 'portrait' (CSS). */
92
- declare const boxOf: (vp: Size) => StageBox;
93
- /** All bounds inclusive, all fields optional, conditions AND-ed (CSS ranges). */
94
- declare const matchesQuery: (q: BoxQuery, box: StageBox) => boolean;
85
+ declare const boxOf: (size: Size$1) => StageBox;
86
+ /** All bounds inclusive, all fields optional, every condition must hold (CSS ranges). */
87
+ declare const matchesQuery: (query: BoxQuery, box: StageBox) => boolean;
95
88
  interface ResolvedResponsive {
96
- /** base ⊕ every matching rule's patch, in source order (later wins per key). */
89
+ /** The base merged with every matching rule's patch, in source order (later wins per key). */
97
90
  effective: StageSettings;
98
91
  /** Names of the matching rules, in source order. */
99
92
  active: string[];
100
93
  }
101
94
  declare const resolveResponsive: (base: StageSettings, rules: readonly ResponsiveRule[], box: StageBox) => ResolvedResponsive;
102
95
  //#endregion
103
- export { type Align, type Alignment, type BoxQuery, DEFAULT_RESPONSIVE, DEFAULT_SETTINGS, type DestinationReveal, type Direction, type FlowMode, type Gap, type GoToOptions, type GridColumns, type LayoutKind, type PageFrame, type ResponsiveRule, type RevealAnchor, type RevealAnchorValue, type RevealOptions, type RevealZoom, type Scheduler, type ScrollBehaviorKind, type ScrollHandlerOptions, type ScrollMetrics, type SizingMode, type SpreadMode, type StageAction, type StageBox, type StageCapability, type StageConfig, type StagePluginOptions, type StageScrollToOptions, type StageSettings, type StageState, StageToken, type StageViewState, type Viewpoint, type VisiblePage, ZoomMode, type ZoomModeValue, type ZoomSpec, boxOf, createScrollHandler, destinationToReveal, matchesQuery, resolveResponsive, settingsEqual, stagePlugin };
96
+ export { type Align, type AlignValue, type Alignment, type AlignmentValue, ArrivalAlignValue, ArrivalAlignment, BoxQuery, type Camera, DEFAULT_RESPONSIVE, DEFAULT_SETTINGS, type Direction, FlowMode, Gap, GoToDestinationOptions, GoToOptions, GridColumns, LayoutKind, type PageFrame, type Point, ResponsiveRule, RevealAnchor, RevealAnchorValue, RevealOptions, RevealZoom, ScrollBehaviorKind, type ScrollHandlerOptions, type ScrollMetrics, type Size, type SizingMode, type SpreadMode, StageBox, StageCameraChangedEvent, StageCapability, StageConfig, StageMotionEndedEvent, StagePageChangedEvent, StagePluginOptions, StageScrollToOptions, StageSettings, StageSettingsChangedEvent, StageSettingsPatch, StageToken, StageViewState, StageViewportChangedEvent, StageZoomChangedEvent, Viewpoint, ViewportPoint, ViewportRect, VisiblePage, ZoomMode, type ZoomModeValue, type ZoomSpec, ZoomToOptions, boxOf, createScrollHandler, matchesQuery, resolveResponsive, settingsEqual, stagePlugin, stageState };
104
97
  //# sourceMappingURL=index.d.cts.map
package/dist/index.d.ts CHANGED
@@ -1,104 +1,97 @@
1
- import { C as Viewpoint, S as StageViewState, _ as StageConfig, a as GridColumns, b as StageState, c as RevealAnchor, d as RevealZoom, f as Scheduler, g as StageCapability, h as StageBox, i as GoToOptions, l as RevealAnchorValue, m as StageAction, n as FlowMode, o as LayoutKind, p as ScrollBehaviorKind, r as Gap, s as ResponsiveRule, t as BoxQuery, u as RevealOptions, v as StageScrollToOptions, w as VisiblePage, x as StageToken, y as StageSettings } from "./types-CdIFKQnj.js";
2
- import { Align, Alignment, Direction, PageFrame, ScrollMetrics, SizingMode, SpreadMode, ZoomMode, ZoomModeValue, ZoomSpec } from "./contract.js";
3
- import { DestinationReveal, destinationToReveal } from "./destination.js";
4
- import { CapabilityToken } from "@embedpdf/core";
5
- import { Size } from "@embedpdf/core-stage";
6
- import { InteractionCapability, InteractionHandler } from "@embedpdf/plugin-interaction/contract";
1
+ import { A as StageCapability, B as StageViewportChangedEvent, C as ScrollBehaviorKind, D as SpreadMode, E as SizingMode, F as StageScrollToOptions, G as VisiblePage, H as Viewpoint, I as StageSettings, J as ZoomSpec, K as ZoomMode, L as StageSettingsChangedEvent, M as StageMotionEndedEvent, N as StagePageChangedEvent, O as StageBox, P as StagePluginOptions, R as StageSettingsPatch, S as RevealZoom, T as Size, U as ViewportPoint, V as StageZoomChangedEvent, W as ViewportRect, X as StageToken, Y as ZoomToOptions, _ as Point, a as ArrivalAlignValue, b as RevealAnchorValue, c as Camera, d as Gap, f as GoToDestinationOptions, g as PageFrame, h as LayoutKind, i as AlignmentValue, j as StageConfig, k as StageCameraChangedEvent, l as Direction, m as GridColumns, n as AlignValue, o as ArrivalAlignment, p as GoToOptions, q as ZoomModeValue, r as Alignment, s as BoxQuery, t as Align, u as FlowMode, v as ResponsiveRule, w as ScrollMetrics, x as RevealOptions, y as RevealAnchor, z as StageViewState } from "./contract-CjHtrfJj.js";
2
+ import { c as StageState, o as StageHostCapability } from "./host-contract-Du5tEZ4h.js";
3
+ import { Size as Size$1 } from "@embedpdf/core-stage";
4
+ import { InteractionHandler, InteractionHostCapability } from "@embedpdf/plugin-interaction/contract/host";
7
5
  //#region src/stage.plugin.d.ts
8
6
  /**
9
- * Options for registering a stage instance. The Stage is a LENS, not a singleton:
10
- * a document may be viewed through several stages at once (the main view, a wrapped
11
- * thumbnail sidebar, …), each with independent camera/settings. Register additional
12
- * lenses by giving them their own `id` + `token`:
13
- *
14
- * const ThumbsToken = createCapabilityToken<StageCapability>('stage-thumbs');
15
- * plugins = [
16
- * stagePlugin(), // main lens
17
- * stagePlugin({ id: 'stage-thumbs', token: ThumbsToken,
18
- * layout: 'grid', columns: 'auto', zoom: { level: 0.2 } }),
19
- * ];
20
- *
21
- * Everything multiplexes automatically: state slices, capabilities, and teardown
22
- * are already keyed by plugin-id × document in the kernel.
23
- */
24
- interface StagePluginOptions extends StageConfig {
25
- id?: string;
26
- token?: CapabilityToken<StageCapability>;
27
- }
28
- /**
29
- * Wires the parts into a kernel plugin. This file is the "manifest": it says what
30
- * the plugin IS (id, token, state, reducer, capability) — the how lives in the
31
- * sibling files.
7
+ * The stage plugin: one lens's camera, layout, zoom and navigation over a
8
+ * document. Document-scoped. The actions plugin is optional: with it, the
9
+ * main lens feeds page state to it and interprets GoTo and Named page
10
+ * actions. Pointer input is opted into by the surface binding
11
+ * (`<Stage interaction>` / `createStageSurface`), which both forwards pointer
12
+ * samples and registers this lens's scroll handler.
32
13
  */
33
- declare const stagePlugin: (options?: StagePluginOptions) => import("@embedpdf/core").PluginDef<StageState, StageAction, StageCapability>;
14
+ declare const stagePlugin: (options?: StagePluginOptions) => import("@embedpdf/core").PluginDef<StageState, StageHostCapability, import("@embedpdf/core").NoSettings>;
15
+ //#endregion
16
+ //#region src/state.d.ts
17
+ declare const stageState: import("@embedpdf/core").StateDeclaration<StageCapability, {
18
+ zoomLevel: number;
19
+ zoomMode: import("@embedpdf/core-stage").ZoomModeValue | "custom";
20
+ currentPageIndex: number;
21
+ currentPage: import("@embedpdf/core").PageRef | null;
22
+ pageCount: number;
23
+ viewRotation: import("@embedpdf/core-geometry").PageRotation;
24
+ activeRules: readonly string[];
25
+ }>;
34
26
  //#endregion
35
27
  //#region src/scroll-handler.d.ts
36
28
  interface ScrollHandlerOptions {
37
29
  /**
38
- * Let a drag over a page GAP pan regardless of the active tool — and show a grab
39
- * cursor there — so the gutter always pans (v2 parity, and the natural feel:
40
- * outside a page there's nothing to draw/select on). On-page behaviour is
41
- * untouched; the tool's own gesture still owns page space. Default true.
30
+ * Let a drag over a page gap pan regardless of the active tool, and show a
31
+ * grab cursor there, so the gutter always pans (outside a page there is
32
+ * nothing to draw on or select). On-page behavior is untouched: the tool's
33
+ * own gesture still owns page space. Default true.
42
34
  */
43
35
  panFallback?: boolean;
44
36
  }
45
37
  /**
46
38
  * Pan-the-camera as an interaction handler. Live under the built-in `pan` tool
47
- * (the `scroll` tag) and — with `panFallback` — under every tool, where it then
48
- * captures ONLY page-gap drags (on-page downs belong to the active tool, which
49
- * claims them first at higher priority). It uses the sample's viewport delta, so
50
- * it pans over the whole viewport (pages and gaps).
39
+ * (the `scroll` tag) and, with `panFallback`, under every tool, where it then
40
+ * captures only page-gap drags (on-page downs belong to the active tool, which
41
+ * claims them first at higher priority). It uses the sample's viewport delta,
42
+ * so it pans over the whole viewport (pages and gaps).
51
43
  *
52
- * Cursor feel: a closed hand (`grabbing`) while dragging; an open hand (`grab`)
44
+ * Cursors: a closed hand (`grabbing`) while dragging; an open hand (`grab`)
53
45
  * hovering a gap under a non-pan tool. The pan tool's own resting `grab` comes
54
46
  * from its `Tool.cursor`, so hovering it needs no claim here.
55
47
  */
56
- declare function createScrollHandler(stage: StageCapability, interaction: InteractionCapability, options?: ScrollHandlerOptions): InteractionHandler;
48
+ declare function createScrollHandler(stage: StageCapability, interaction: InteractionHostCapability, options?: ScrollHandlerOptions): InteractionHandler;
57
49
  //#endregion
58
50
  //#region src/settings.d.ts
59
51
  /**
60
- * Out-of-the-box defaults — a sensible document-reading feel. They are JUST
61
- * defaults: every field is overridable in `stagePlugin(config)` and at runtime via
62
- * the setters / `update()`. The plugin ships NO named presets ("document",
63
- * "canvas", …) — a preset is simply an object the app keeps and passes to
64
- * `update()`, so that taxonomy stays a customer concern.
52
+ * Out-of-the-box defaults: a document-reading feel. Every field is overridable
53
+ * in `stagePlugin(config)` and at runtime through `updateSettings()`. The
54
+ * plugin ships no named presets ("document", "canvas", …): a preset is an
55
+ * object the app keeps and passes to `updateSettings()`, so that taxonomy
56
+ * stays the app's concern.
65
57
  */
66
58
  declare const DEFAULT_SETTINGS: StageSettings;
67
59
  /**
68
- * Out-of-the-box responsive rules — the platform feel with zero configuration:
69
- * a compact container gets the thin gutter phones use (space, not device — an
60
+ * Out-of-the-box responsive rules, the platform feel with zero configuration:
61
+ * a compact container gets the thin gutter phones use (space, not device: an
70
62
  * embedded 500px pane on a desktop is compact too). Override the whole list
71
63
  * with `stagePlugin({ responsive: [...] })`; `responsive: []` opts out. The
72
- * 'compact' name is queryable app-side via `stage.matches('compact')`.
64
+ * 'compact' name is queryable by the app through `stage.matchesRule('compact')`.
73
65
  */
74
66
  declare const DEFAULT_RESPONSIVE: readonly ResponsiveRule[];
75
- /** Field-by-field settings equality, derived from the registry — a new setting is
76
- * covered automatically. (The React `useStageSettings` selector equality.) */
77
- declare const settingsEqual: (a: StageSettings, b: StageSettings) => boolean;
67
+ /** Field-by-field settings equality, derived from the registry, so a new
68
+ * setting is covered automatically: what an adapter compares settings with. */
69
+ declare const settingsEqual: (left: StageSettings, right: StageSettings) => boolean;
78
70
  //#endregion
79
71
  //#region src/responsive.d.ts
80
72
  /**
81
- * Container queries for the settings bag — the pure half. The capability owns
82
- * the driver (when to re-resolve, how to react); the LAWS live here: what a
83
- * box is, when a query matches, and what the effective settings are. No state,
84
- * no dispatch — property-testable in isolation (the `wheel.ts` convention).
73
+ * Container queries for the settings bag, the pure half. The capability owns
74
+ * the driver (when to re-resolve, how to react); the laws live here: what a
75
+ * box is, when a query matches, and what the effective settings are. No
76
+ * state, so they are property-testable in isolation.
85
77
  *
86
- * The query vocabulary is deliberately just the box: a headless, DOM-free
87
- * stage knows exactly one environmental fact — the viewport it was told.
88
- * Anything else (pointer coarseness, platform, app state) is either per-event
89
- * (`PointerSample.pointerType`) or the app's own business via `update()`.
78
+ * The query vocabulary is only the box: a headless, DOM-free stage knows
79
+ * exactly one environmental fact, the viewport it was told. Anything else
80
+ * (pointer coarseness, platform, app state) is either per event
81
+ * (`PointerSample.pointerType`) or the app's own business via
82
+ * `updateSettings()`.
90
83
  */
91
84
  /** The reported viewport as a queryable box. A square box is 'portrait' (CSS). */
92
- declare const boxOf: (vp: Size) => StageBox;
93
- /** All bounds inclusive, all fields optional, conditions AND-ed (CSS ranges). */
94
- declare const matchesQuery: (q: BoxQuery, box: StageBox) => boolean;
85
+ declare const boxOf: (size: Size$1) => StageBox;
86
+ /** All bounds inclusive, all fields optional, every condition must hold (CSS ranges). */
87
+ declare const matchesQuery: (query: BoxQuery, box: StageBox) => boolean;
95
88
  interface ResolvedResponsive {
96
- /** base ⊕ every matching rule's patch, in source order (later wins per key). */
89
+ /** The base merged with every matching rule's patch, in source order (later wins per key). */
97
90
  effective: StageSettings;
98
91
  /** Names of the matching rules, in source order. */
99
92
  active: string[];
100
93
  }
101
94
  declare const resolveResponsive: (base: StageSettings, rules: readonly ResponsiveRule[], box: StageBox) => ResolvedResponsive;
102
95
  //#endregion
103
- export { type Align, type Alignment, type BoxQuery, DEFAULT_RESPONSIVE, DEFAULT_SETTINGS, type DestinationReveal, type Direction, type FlowMode, type Gap, type GoToOptions, type GridColumns, type LayoutKind, type PageFrame, type ResponsiveRule, type RevealAnchor, type RevealAnchorValue, type RevealOptions, type RevealZoom, type Scheduler, type ScrollBehaviorKind, type ScrollHandlerOptions, type ScrollMetrics, type SizingMode, type SpreadMode, type StageAction, type StageBox, type StageCapability, type StageConfig, type StagePluginOptions, type StageScrollToOptions, type StageSettings, type StageState, StageToken, type StageViewState, type Viewpoint, type VisiblePage, ZoomMode, type ZoomModeValue, type ZoomSpec, boxOf, createScrollHandler, destinationToReveal, matchesQuery, resolveResponsive, settingsEqual, stagePlugin };
96
+ export { type Align, type AlignValue, type Alignment, type AlignmentValue, ArrivalAlignValue, ArrivalAlignment, BoxQuery, type Camera, DEFAULT_RESPONSIVE, DEFAULT_SETTINGS, type Direction, FlowMode, Gap, GoToDestinationOptions, GoToOptions, GridColumns, LayoutKind, type PageFrame, type Point, ResponsiveRule, RevealAnchor, RevealAnchorValue, RevealOptions, RevealZoom, ScrollBehaviorKind, type ScrollHandlerOptions, type ScrollMetrics, type Size, type SizingMode, type SpreadMode, StageBox, StageCameraChangedEvent, StageCapability, StageConfig, StageMotionEndedEvent, StagePageChangedEvent, StagePluginOptions, StageScrollToOptions, StageSettings, StageSettingsChangedEvent, StageSettingsPatch, StageToken, StageViewState, StageViewportChangedEvent, StageZoomChangedEvent, Viewpoint, ViewportPoint, ViewportRect, VisiblePage, ZoomMode, type ZoomModeValue, type ZoomSpec, ZoomToOptions, boxOf, createScrollHandler, matchesQuery, resolveResponsive, settingsEqual, stagePlugin, stageState };
104
97
  //# sourceMappingURL=index.d.ts.map