@vectoriox/iox-ui 5.83.1 → 5.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/actions-core/index.d.ts +18 -2
  2. package/composite-core/index.d.ts +93 -15
  3. package/design-core/index.d.ts +566 -4
  4. package/fesm2022/vectoriox-iox-ui-actions-core.mjs +18 -1
  5. package/fesm2022/vectoriox-iox-ui-actions-core.mjs.map +1 -1
  6. package/fesm2022/vectoriox-iox-ui-composite-core.mjs +307 -39
  7. package/fesm2022/vectoriox-iox-ui-composite-core.mjs.map +1 -1
  8. package/fesm2022/vectoriox-iox-ui-design-core.mjs +680 -15
  9. package/fesm2022/vectoriox-iox-ui-design-core.mjs.map +1 -1
  10. package/fesm2022/vectoriox-iox-ui-generation-core.mjs +665 -24
  11. package/fesm2022/vectoriox-iox-ui-generation-core.mjs.map +1 -1
  12. package/fesm2022/vectoriox-iox-ui-harness-core.mjs +39 -1
  13. package/fesm2022/vectoriox-iox-ui-harness-core.mjs.map +1 -1
  14. package/fesm2022/vectoriox-iox-ui-scene-core.mjs +101 -5
  15. package/fesm2022/vectoriox-iox-ui-scene-core.mjs.map +1 -1
  16. package/fesm2022/vectoriox-iox-ui.mjs +285 -12
  17. package/fesm2022/vectoriox-iox-ui.mjs.map +1 -1
  18. package/generation-core/index.d.ts +414 -8
  19. package/harness-core/index.d.ts +81 -3
  20. package/index.d.ts +143 -42
  21. package/package.json +1 -1
  22. package/scene-core/index.d.ts +32 -4
  23. package/src/actions-core/dialog-motion.ts +25 -0
  24. package/src/composite-core/header.ts +25 -0
  25. package/src/composite-core/public-api.ts +1 -0
  26. package/src/composite-core/slider-runtime.ts +82 -0
  27. package/src/composite-core/slider.ts +194 -27
  28. package/src/composite-core/structure.ts +14 -9
  29. package/src/design-core/flavor-spec.generated.ts +596 -9
  30. package/src/design-core/header-behaviour.ts +76 -0
  31. package/src/design-core/public-api.ts +1 -0
  32. package/src/design-core/theme-color.ts +21 -5
  33. package/src/generation-core/ai-run.ts +10 -2
  34. package/src/generation-core/art-direction.ts +122 -0
  35. package/src/generation-core/audit-site.ts +14 -0
  36. package/src/generation-core/compose-site.ts +8 -0
  37. package/src/generation-core/node-baselines.generated.ts +17 -3
  38. package/src/generation-core/patterns.ts +2 -0
  39. package/src/generation-core/pictures.ts +464 -0
  40. package/src/generation-core/plan-wire.ts +2 -0
  41. package/src/generation-core/public-api.ts +2 -0
  42. package/src/generation-core/site-build-run.ts +3 -0
  43. package/src/generation-core/site-plan.model.ts +4 -0
  44. package/src/generation-core/site-spec.generated.ts +126 -1
  45. package/src/generation-core/stock-photos.ts +40 -10
  46. package/src/generation-core/validate-site-plan.ts +14 -0
  47. package/src/harness-core/business-types.ts +3 -1
  48. package/src/harness-core/generation-view.ts +50 -1
  49. package/src/harness-core/harness-spec.generated.ts +30 -0
  50. package/src/scene-core/scene.ts +18 -0
  51. package/src/scene-core/scroll-driver.ts +83 -6
  52. package/styles/iox-design.css +232 -1
  53. package/styles/iox-forms.css +5 -2
@@ -1,5 +1,5 @@
1
1
  import { MotionId, MoodId, TintId, DensityId, DesignMotion, DesignChoices, DesignMode, StylePreset, ShapeId, AnimateId } from '@vectoriox/iox-ui/design-core';
2
- import { FactKey, PathIssue, PlainObject, JsonSchema, SiteTemplate, ShapeEntry, AiGenerationStage, AiStep, SitePlan, PlanEdit, PlanChange, SiteAudit } from '@vectoriox/iox-ui/generation-core';
2
+ import { FactKey, PictureWorld, PathIssue, PlainObject, JsonSchema, SiteTemplate, ShapeEntry, AiGenerationStage, AiStep, SitePlan, PlanEdit, PlanChange, PictureRefusal, AiRefusalCode, SiteAudit } from '@vectoriox/iox-ui/generation-core';
3
3
  export { JsonSchema } from '@vectoriox/iox-ui/generation-core';
4
4
  import { FrameSequence } from '@vectoriox/iox-ui/media-core';
5
5
 
@@ -157,6 +157,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
157
157
  readonly between: "cinematic";
158
158
  };
159
159
  readonly ceiling: "expressive";
160
+ readonly world: "documentary";
160
161
  readonly imagery: "Your own photos only, large and uncropped; never stock.";
161
162
  readonly pages: readonly ["home", "work (collection)", "project (detail)", "about", "contact"];
162
163
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -220,6 +221,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
220
221
  readonly between: "cinematic";
221
222
  };
222
223
  readonly ceiling: "expressive";
224
+ readonly world: "architectural";
223
225
  readonly imagery: "Wide, bright room shots; details of materials.";
224
226
  readonly pages: readonly ["home", "projects (collection)", "project (detail)", "services", "about", "contact"];
225
227
  readonly needs: readonly ["collection", "detail", "services", "about", "contact"];
@@ -284,6 +286,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
284
286
  readonly between: "fade";
285
287
  };
286
288
  readonly ceiling: "expressive";
289
+ readonly world: "architectural";
287
290
  readonly imagery: "Large project photos and drawings.";
288
291
  readonly pages: readonly ["home", "projects (collection)", "project (detail)", "about", "contact"];
289
292
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -349,6 +352,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
349
352
  readonly between: "slide";
350
353
  };
351
354
  readonly ceiling: "expressive";
355
+ readonly world: "hard-light";
352
356
  readonly imagery: "Case-study images of your own work.";
353
357
  readonly pages: readonly ["home", "work (collection)", "case study (detail)", "services", "about", "contact"];
354
358
  readonly needs: readonly ["collection", "detail", "services", "about", "contact"];
@@ -404,6 +408,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
404
408
  readonly between: "fade";
405
409
  };
406
410
  readonly ceiling: "expressive";
411
+ readonly world: "drawing";
407
412
  readonly imagery: "Your pieces, photographed flat and true to colour.";
408
413
  readonly pages: readonly ["home", "works (collection)", "work (detail)", "about", "contact"];
409
414
  readonly needs: readonly ["collection", "about", "contact"];
@@ -461,6 +466,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
461
466
  readonly between: "slide";
462
467
  };
463
468
  readonly ceiling: "expressive";
469
+ readonly world: "macro";
464
470
  readonly imagery: "Your pieces and hands at work; natural light.";
465
471
  readonly pages: readonly ["home", "pieces (collection)", "piece (detail)", "workshops", "about", "contact"];
466
472
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -517,6 +523,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
517
523
  readonly between: "cinematic";
518
524
  };
519
525
  readonly ceiling: "expressive";
526
+ readonly world: "macro";
520
527
  readonly imagery: "Close-ups on a plain ground.";
521
528
  readonly pages: readonly ["home", "collection", "piece (detail)", "about", "contact"];
522
529
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -574,6 +581,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
574
581
  readonly between: "slide";
575
582
  };
576
583
  readonly ceiling: "expressive";
584
+ readonly world: "low-key";
577
585
  readonly imagery: "Healed work, clean photos.";
578
586
  readonly pages: readonly ["home", "work (collection)", "artists", "faq", "contact"];
579
587
  readonly needs: readonly ["collection", "faq", "contact"];
@@ -630,6 +638,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
630
638
  readonly between: "fade";
631
639
  };
632
640
  readonly ceiling: "standard";
641
+ readonly world: "high-key";
633
642
  readonly imagery: "Rooms, textures, hands; no faces needed.";
634
643
  readonly pages: readonly ["home", "treatments (services)", "prices", "about", "contact"];
635
644
  readonly needs: readonly ["services", "prices", "about", "contact"];
@@ -696,6 +705,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
696
705
  readonly between: "fade";
697
706
  };
698
707
  readonly ceiling: "lively";
708
+ readonly world: "high-key";
699
709
  readonly imagery: "Your own before-and-after photos.";
700
710
  readonly pages: readonly ["home", "services", "prices", "gallery", "contact"];
701
711
  readonly needs: readonly ["services", "prices", "gallery", "contact"];
@@ -756,6 +766,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
756
766
  readonly between: "fade";
757
767
  };
758
768
  readonly ceiling: "lively";
769
+ readonly world: "high-key";
759
770
  readonly imagery: "The room, real classes, daylight.";
760
771
  readonly pages: readonly ["home", "classes", "schedule", "teachers", "prices", "contact"];
761
772
  readonly needs: readonly ["prices", "contact"];
@@ -817,6 +828,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
817
828
  readonly between: "slide";
818
829
  };
819
830
  readonly ceiling: "lively";
831
+ readonly world: "hard-light";
820
832
  readonly imagery: "Real people training; movement.";
821
833
  readonly pages: readonly ["home", "classes", "prices", "coaches", "contact"];
822
834
  readonly needs: readonly ["prices", "contact"];
@@ -874,6 +886,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
874
886
  readonly between: "none";
875
887
  };
876
888
  readonly ceiling: "subtle";
889
+ readonly world: "documentary";
877
890
  readonly imagery: "A calm room, daylight; your portrait.";
878
891
  readonly pages: readonly ["home", "how I work", "about", "faq", "contact"];
879
892
  readonly needs: readonly ["collection", "about", "faq", "contact"];
@@ -935,6 +948,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
935
948
  readonly between: "fade";
936
949
  };
937
950
  readonly ceiling: "subtle";
951
+ readonly world: "high-key";
938
952
  readonly imagery: "Your team and rooms; no stock doctors.";
939
953
  readonly pages: readonly ["home", "treatments (services)", "team", "faq", "contact"];
940
954
  readonly needs: readonly ["services", "team", "faq", "contact"];
@@ -997,6 +1011,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
997
1011
  readonly between: "fade";
998
1012
  };
999
1013
  readonly ceiling: "subtle";
1014
+ readonly world: "high-key";
1000
1015
  readonly imagery: "Your clinic and team.";
1001
1016
  readonly pages: readonly ["home", "treatments", "team", "faq", "contact"];
1002
1017
  readonly needs: readonly ["services", "team", "faq", "contact"];
@@ -1057,6 +1072,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1057
1072
  readonly between: "fade";
1058
1073
  };
1059
1074
  readonly ceiling: "standard";
1075
+ readonly world: "documentary";
1060
1076
  readonly imagery: "Real animals you treat (with permission).";
1061
1077
  readonly pages: readonly ["home", "services", "team", "faq", "contact"];
1062
1078
  readonly needs: readonly ["services", "team", "faq", "contact"];
@@ -1113,6 +1129,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1113
1129
  readonly between: "fade";
1114
1130
  };
1115
1131
  readonly ceiling: "expressive";
1132
+ readonly world: "low-key";
1116
1133
  readonly imagery: "Your own food and room photos.";
1117
1134
  readonly pages: readonly ["home", "menu", "about", "contact"];
1118
1135
  readonly needs: readonly ["menu", "about", "contact"];
@@ -1176,6 +1193,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1176
1193
  readonly between: "slide";
1177
1194
  };
1178
1195
  readonly ceiling: "lively";
1196
+ readonly world: "documentary";
1179
1197
  readonly imagery: "Your bakes and drinks, close up.";
1180
1198
  readonly pages: readonly ["home", "menu", "about", "contact"];
1181
1199
  readonly needs: readonly ["menu", "about", "contact"];
@@ -1236,6 +1254,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1236
1254
  readonly between: "cinematic";
1237
1255
  };
1238
1256
  readonly ceiling: "expressive";
1257
+ readonly world: "nocturne";
1239
1258
  readonly imagery: "The cellar, the bar, the bottle.";
1240
1259
  readonly pages: readonly ["home", "menu or wines", "our story", "visit", "contact"];
1241
1260
  readonly needs: readonly ["menu", "visit", "contact"];
@@ -1296,6 +1315,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1296
1315
  readonly between: "slide";
1297
1316
  };
1298
1317
  readonly ceiling: "expressive";
1318
+ readonly world: "high-key";
1299
1319
  readonly imagery: "Product photos on plain grounds; real people wearing them.";
1300
1320
  readonly pages: readonly ["home", "collection", "product (detail)", "about", "contact"];
1301
1321
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -1351,6 +1371,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1351
1371
  readonly between: "fade";
1352
1372
  };
1353
1373
  readonly ceiling: "lively";
1374
+ readonly world: "macro";
1354
1375
  readonly imagery: "Your own arrangements in daylight.";
1355
1376
  readonly pages: readonly ["home", "flowers (collection)", "weddings and events", "about", "contact"];
1356
1377
  readonly needs: readonly ["collection", "about", "contact"];
@@ -1407,6 +1428,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1407
1428
  readonly between: "fade";
1408
1429
  };
1409
1430
  readonly ceiling: "expressive";
1431
+ readonly world: "documentary";
1410
1432
  readonly imagery: "Pieces in real rooms and on plain grounds.";
1411
1433
  readonly pages: readonly ["home", "collection", "product (detail)", "about", "contact"];
1412
1434
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -1463,6 +1485,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1463
1485
  readonly between: "fade";
1464
1486
  };
1465
1487
  readonly ceiling: "standard";
1488
+ readonly world: "architectural";
1466
1489
  readonly imagery: "Your portrait; diagrams over stock.";
1467
1490
  readonly pages: readonly ["home", "services", "case studies", "about", "contact"];
1468
1491
  readonly needs: readonly ["services", "about", "contact"];
@@ -1521,6 +1544,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1521
1544
  readonly between: "fade";
1522
1545
  };
1523
1546
  readonly ceiling: "standard";
1547
+ readonly world: "documentary";
1524
1548
  readonly imagery: "Your portrait, working with people.";
1525
1549
  readonly pages: readonly ["home", "how it works", "programmes", "about", "contact"];
1526
1550
  readonly needs: readonly ["collection", "about", "contact"];
@@ -1573,6 +1597,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1573
1597
  readonly between: "none";
1574
1598
  };
1575
1599
  readonly ceiling: "subtle";
1600
+ readonly world: "architectural";
1576
1601
  readonly imagery: "Your team; your office.";
1577
1602
  readonly pages: readonly ["home", "practice areas (services)", "team", "about", "contact"];
1578
1603
  readonly needs: readonly ["services", "team", "about", "contact"];
@@ -1636,6 +1661,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1636
1661
  readonly between: "slide";
1637
1662
  };
1638
1663
  readonly ceiling: "lively";
1664
+ readonly world: "architectural";
1639
1665
  readonly imagery: "Your own property photos; never stock.";
1640
1666
  readonly pages: readonly ["home", "properties (collection)", "property (detail)", "about", "contact"];
1641
1667
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -1695,6 +1721,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1695
1721
  readonly between: "fade";
1696
1722
  };
1697
1723
  readonly ceiling: "standard";
1724
+ readonly world: "documentary";
1698
1725
  readonly imagery: "Real people you help (with permission).";
1699
1726
  readonly pages: readonly ["home", "what we do", "stories", "get involved", "contact"];
1700
1727
  readonly needs: readonly ["contact"];
@@ -1747,6 +1774,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1747
1774
  readonly between: "cinematic";
1748
1775
  };
1749
1776
  readonly ceiling: "expressive";
1777
+ readonly world: "nocturne";
1750
1778
  readonly imagery: "Real events at your venue.";
1751
1779
  readonly pages: readonly ["home", "spaces", "gallery", "faq", "contact"];
1752
1780
  readonly needs: readonly ["gallery", "faq", "contact"];
@@ -1806,6 +1834,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1806
1834
  readonly between: "cinematic";
1807
1835
  };
1808
1836
  readonly ceiling: "expressive";
1837
+ readonly world: "documentary";
1809
1838
  readonly imagery: "Rooms, views, breakfast; your own photos.";
1810
1839
  readonly pages: readonly ["home", "rooms (collection)", "room (detail)", "about", "contact"];
1811
1840
  readonly needs: readonly ["collection", "detail", "about", "contact"];
@@ -1865,6 +1894,7 @@ declare const SPEC_BUSINESS_TYPES: readonly [{
1865
1894
  readonly between: "slide";
1866
1895
  };
1867
1896
  readonly ceiling: "lively";
1897
+ readonly world: "documentary";
1868
1898
  readonly imagery: "Real classes (with permission).";
1869
1899
  readonly pages: readonly ["home", "classes", "prices", "about", "contact"];
1870
1900
  readonly needs: readonly ["prices", "about", "contact"];
@@ -2273,6 +2303,8 @@ interface BusinessType {
2273
2303
  * so a type capped below it never gets one. Binds generated output only — the owner may choose any level. */
2274
2304
  readonly ceiling: DesignMotion['animate'];
2275
2305
  readonly imagery: string;
2306
+ /** M7: the picture world a site's made pictures start in (generation-core `artDirectionFor`; contract site.pictureWorlds). */
2307
+ readonly world: `${PictureWorld}`;
2276
2308
  readonly pages: ReadonlyArray<string>;
2277
2309
  /** The needs its page set implies, in page order (derived from `pages` at contract build). */
2278
2310
  readonly needs: ReadonlyArray<NeedId>;
@@ -2943,6 +2975,42 @@ interface PlanRevisionView {
2943
2975
  edits?: PlanEdit[];
2944
2976
  changed?: PlanChange[];
2945
2977
  }
2978
+ /** Why no picture can be made for this site right now (the Plan step says it instead of offering the switch). */
2979
+ declare enum PicturesUnavailable {
2980
+ /** No slot is left after the owner's photos and the refusals. */
2981
+ Nothing = "nothing",
2982
+ /** The key in use has no model that makes pictures (a Claude key does not). */
2983
+ NoModel = "no-model"
2984
+ }
2985
+ /**
2986
+ * M7: the pictures a generation may have MADE, as the Plan step shows them before the owner says yes, and while they are
2987
+ * made. `estimate` is the cost shown — every picture and its review plus the second tries (generation-core
2988
+ * `estimatePictures`) — and the most the run may spend on them.
2989
+ */
2990
+ interface GenerationPicturesView {
2991
+ /** Pictures that would be made (after the owner's photos and the refusals). */
2992
+ count: number;
2993
+ /** The owner's photos that go first. */
2994
+ own: number;
2995
+ /** Slots no picture is made for, by why. */
2996
+ refused: Partial<Record<`${PictureRefusal}`, number>>;
2997
+ /** Credits — the cost shown and the run's ceiling. */
2998
+ estimate: number;
2999
+ /** One picture with its review, in credits. */
3000
+ each: number;
3001
+ rerolls: number;
3002
+ /** The model that makes them, or null. */
3003
+ model: string | null;
3004
+ /** Why none can be made now — instead of the switch. A refusal code when credits or the plan say no. */
3005
+ unavailable?: `${PicturesUnavailable}` | `${AiRefusalCode}`;
3006
+ /** The owner said yes (Build with pictures): the run's progress. */
3007
+ wanted?: boolean;
3008
+ made?: number;
3009
+ /** Slots whose review said no to every try — stock or the empty box stands in. */
3010
+ failed?: number;
3011
+ /** Credits the pictures have cost so far (the ledger). */
3012
+ spent?: number;
3013
+ }
2946
3014
  interface AiGenerationView {
2947
3015
  _id: string;
2948
3016
  organization: string;
@@ -3001,6 +3069,16 @@ interface AiGenerationView {
3001
3069
  path: string;
3002
3070
  }>;
3003
3071
  };
3072
+ /** M7: the pictures that may be made (on the Plan step) or are being made. Absent: no plan yet. */
3073
+ pictures?: GenerationPicturesView;
3074
+ }
3075
+ /** `POST …/ai/generations/:id/build` (and `/auto`). */
3076
+ interface GenerationBuildRequest {
3077
+ replaceGlobals?: boolean;
3078
+ /** SC6b: the owner's film as pictures. */
3079
+ film?: FrameSequence;
3080
+ /** M7: make pictures for the site first (the cost shown on the Plan step). */
3081
+ pictures?: boolean;
3004
3082
  }
3005
3083
  /** `POST …/ai/generations`. */
3006
3084
  interface GenerationStartRequest {
@@ -3052,5 +3130,5 @@ type SiteAuditView = SiteAudit & {
3052
3130
  advice: LintFinding[];
3053
3131
  };
3054
3132
 
3055
- export { ANIMATE_ADVICE_STEPS, AnalysisIssueCode, AnalysisLocale, AvoidCheck, BUSINESS_TYPES, BUSINESS_TYPE_IDS, BookingNeed, COPY_LENGTH_ORDER, CopyLength, GENERATION_LIMITS, HARNESS_SOURCE, LITTLE_MOVEMENT_AVOID, LITTLE_MOVEMENT_CAP, LintKind, MAX_ANALYSIS_MOODS, MAX_PIXEL_SAMPLES, MAX_READ_PICTURES, NEEDS, NEED_IDS, NeedSource, PALETTE_SIZE, PALETTE_THRESHOLDS, PictureRole, PlanChangeOutcome, PresetFit, RANK_WEIGHTS, READING_SHAPE, READ_ANIMATE, READ_WEIGHTS, RankReason, ReaderState, ReadingIssueCode, SITE_ANALYSIS_SCHEMA_NAME, SITE_READING_SCHEMA_NAME, SPEC_ANALYSIS_SHAPE, SPEC_BUSINESS_TYPES, SPEC_HARNESS_EXAMPLES, SPEC_HARNESS_SOURCE, SPEC_NEEDS, SPEC_STRUCTURES, SPEC_USER_AVOIDS, STRUCTURES, SiteReadRefusal, StyleReadGround, StyleReadHeadings, StyleReadMotion, StyleReadSourceKind, USER_AVOID_IDS, VoiceFormality, VoicePerson, addressesIn, analysisFromWire, analysisPromptContext, analysisToWire, bestRankedPreset, businessTypeById, calmerChoice, decodeSiteReading, inferNeeds, isLookRule, lintDesign, lookMatches, mapStyleRead, matchBusinessType, matchBusinessTypes, measurePalette, mergeStyleReads, motionAdvice, motionFor, normalizeAddress, oklchHue, paletteBrand, paletteGround, paletteSamples, pictureStyleRead, pixelSamples, presetDesign, presetHasSerifHeadings, presetLook, presetReason, presetsByFlavor, rankStylePresets, rankWithReferences, readPalette, referenceSeed, seedPassesPreset, siteAnalysisJsonSchema, siteReadingJsonSchema, startingDesign, structureFor, userAvoidRule, validateSiteAnalysis, validateSiteReading, withoutAddress };
3056
- export type { AiGenerationView, AnalysisContext, AnalysisIssue, AnalysisValidation, AvoidRule, BusinessType, BusinessTypeMatch, CheckRule, ColourSample, FactRead, GenerationFileView, GenerationReadersView, GenerationStartRequest, GoodFit, LintFinding, LintSite, LookCondition, LookDesign, LookRule, MeasuredPicture, MotionBasis, MotionInput, MotionStart, NeedDef, NeedId, PaletteColour, PaletteReading, PictureStyle, PlanRevisionView, PresetFlavorGroup, PromptContext, PromptContextOptions, PromptSection, RankInput, RankedPreset, ReadingIssue, ReferenceSeed, SiteAnalysis, SiteAuditView, SiteNeed, SiteReaderView, SiteReading, StartingDesign, StructureChoice, StructureId, StyleHints, StyleRead, UserAvoidId };
3133
+ export { ANIMATE_ADVICE_STEPS, AnalysisIssueCode, AnalysisLocale, AvoidCheck, BUSINESS_TYPES, BUSINESS_TYPE_IDS, BookingNeed, COPY_LENGTH_ORDER, CopyLength, GENERATION_LIMITS, HARNESS_SOURCE, LITTLE_MOVEMENT_AVOID, LITTLE_MOVEMENT_CAP, LintKind, MAX_ANALYSIS_MOODS, MAX_PIXEL_SAMPLES, MAX_READ_PICTURES, NEEDS, NEED_IDS, NeedSource, PALETTE_SIZE, PALETTE_THRESHOLDS, PictureRole, PicturesUnavailable, PlanChangeOutcome, PresetFit, RANK_WEIGHTS, READING_SHAPE, READ_ANIMATE, READ_WEIGHTS, RankReason, ReaderState, ReadingIssueCode, SITE_ANALYSIS_SCHEMA_NAME, SITE_READING_SCHEMA_NAME, SPEC_ANALYSIS_SHAPE, SPEC_BUSINESS_TYPES, SPEC_HARNESS_EXAMPLES, SPEC_HARNESS_SOURCE, SPEC_NEEDS, SPEC_STRUCTURES, SPEC_USER_AVOIDS, STRUCTURES, SiteReadRefusal, StyleReadGround, StyleReadHeadings, StyleReadMotion, StyleReadSourceKind, USER_AVOID_IDS, VoiceFormality, VoicePerson, addressesIn, analysisFromWire, analysisPromptContext, analysisToWire, bestRankedPreset, businessTypeById, calmerChoice, decodeSiteReading, inferNeeds, isLookRule, lintDesign, lookMatches, mapStyleRead, matchBusinessType, matchBusinessTypes, measurePalette, mergeStyleReads, motionAdvice, motionFor, normalizeAddress, oklchHue, paletteBrand, paletteGround, paletteSamples, pictureStyleRead, pixelSamples, presetDesign, presetHasSerifHeadings, presetLook, presetReason, presetsByFlavor, rankStylePresets, rankWithReferences, readPalette, referenceSeed, seedPassesPreset, siteAnalysisJsonSchema, siteReadingJsonSchema, startingDesign, structureFor, userAvoidRule, validateSiteAnalysis, validateSiteReading, withoutAddress };
3134
+ export type { AiGenerationView, AnalysisContext, AnalysisIssue, AnalysisValidation, AvoidRule, BusinessType, BusinessTypeMatch, CheckRule, ColourSample, FactRead, GenerationBuildRequest, GenerationFileView, GenerationPicturesView, GenerationReadersView, GenerationStartRequest, GoodFit, LintFinding, LintSite, LookCondition, LookDesign, LookRule, MeasuredPicture, MotionBasis, MotionInput, MotionStart, NeedDef, NeedId, PaletteColour, PaletteReading, PictureStyle, PlanRevisionView, PresetFlavorGroup, PromptContext, PromptContextOptions, PromptSection, RankInput, RankedPreset, ReadingIssue, ReferenceSeed, SiteAnalysis, SiteAuditView, SiteNeed, SiteReaderView, SiteReading, StartingDesign, StructureChoice, StructureId, StyleHints, StyleRead, UserAvoidId };
package/index.d.ts CHANGED
@@ -719,7 +719,8 @@ declare function planResponsiveRules(styleProps: StyleMap | null | undefined, st
719
719
  * shared boot). The slides render into `.swiper-wrapper` (`childrenHost` — the `.swiper-slide` direct-child invariant,
720
720
  * slider.md); the control PARTS (CC3: Previous, Next, Pause, Pagination — `childHostFor`) render beside it, inside
721
721
  * `.swiper`: those before the first slide before the wrapper, the rest after it. A saved slider with no parts keeps
722
- * Swiper-drawn controls (the legacy switches). Swiper is booted by the ONE shared `bootSlider`.
722
+ * Swiper-drawn controls (the legacy switches). Swiper is booted by the ONE shared `bootSlider`. A slider the scroll plays
723
+ * (premium M4) sits in its runway — the string path writes the same `iox-slider-runway` wrapper.
723
724
  */
724
725
  declare class ClientSliderContainerComponent implements AfterViewInit, OnDestroy {
725
726
  private platformId;
@@ -764,6 +765,9 @@ declare class ClientSliderContainerComponent implements AfterViewInit, OnDestroy
764
765
  responsive: ResponsiveOverrides | null;
765
766
  /** The slider's controls are parts (set by the renderer from the node): Swiper draws none of its own. */
766
767
  controlParts: boolean;
768
+ /** Premium M4: the scroll plays it — a runway (a Scene root the ONE driver drives) holds it mid-screen; otherwise the
769
+ * wrapper is `display: contents` and the slider lays out exactly as before. */
770
+ scrollPlays: boolean;
767
771
  childrenHost: ViewContainerRef;
768
772
  leadHost: ViewContainerRef;
769
773
  trailHost: ViewContainerRef;
@@ -786,7 +790,7 @@ declare class ClientSliderContainerComponent implements AfterViewInit, OnDestroy
786
790
  private boot;
787
791
  private inputs;
788
792
  static ɵfac: i0.ɵɵFactoryDeclaration<ClientSliderContainerComponent, never>;
789
- static ɵcmp: i0.ɵɵComponentDeclaration<ClientSliderContainerComponent, "iox-slider-container", never, { "nodeId": { "alias": "nodeId"; "required": false; }; "dir": { "alias": "dir"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "loop": { "alias": "loop"; "required": false; }; "slidesPerView": { "alias": "slidesPerView"; "required": false; }; "slidesPerGroup": { "alias": "slidesPerGroup"; "required": false; }; "spaceBetween": { "alias": "spaceBetween"; "required": false; }; "speed": { "alias": "speed"; "required": false; }; "effect": { "alias": "effect"; "required": false; }; "grabCursor": { "alias": "grabCursor"; "required": false; }; "centeredSlides": { "alias": "centeredSlides"; "required": false; }; "initialSlide": { "alias": "initialSlide"; "required": false; }; "autoHeight": { "alias": "autoHeight"; "required": false; }; "slideToClickedSlide": { "alias": "slideToClickedSlide"; "required": false; }; "freeMode": { "alias": "freeMode"; "required": false; }; "enableNavigation": { "alias": "enableNavigation"; "required": false; }; "enablePagination": { "alias": "enablePagination"; "required": false; }; "enableScrollbar": { "alias": "enableScrollbar"; "required": false; }; "enableAutoplay": { "alias": "enableAutoplay"; "required": false; }; "enableKeyboard": { "alias": "enableKeyboard"; "required": false; }; "enableMousewheel": { "alias": "enableMousewheel"; "required": false; }; "enableZoom": { "alias": "enableZoom"; "required": false; }; "enableGrid": { "alias": "enableGrid"; "required": false; }; "enableParallax": { "alias": "enableParallax"; "required": false; }; "autoplayDelay": { "alias": "autoplayDelay"; "required": false; }; "autoplayPauseOnMouseEnter": { "alias": "autoplayPauseOnMouseEnter"; "required": false; }; "autoplayDisableOnInteraction": { "alias": "autoplayDisableOnInteraction"; "required": false; }; "paginationType": { "alias": "paginationType"; "required": false; }; "paginationClickable": { "alias": "paginationClickable"; "required": false; }; "paginationDynamicBullets": { "alias": "paginationDynamicBullets"; "required": false; }; "navigationColor": { "alias": "navigationColor"; "required": false; }; "paginationColor": { "alias": "paginationColor"; "required": false; }; "gridRows": { "alias": "gridRows"; "required": false; }; "breakpoints": { "alias": "breakpoints"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "controlParts": { "alias": "controlParts"; "required": false; }; }, {}, never, never, false, never>;
793
+ static ɵcmp: i0.ɵɵComponentDeclaration<ClientSliderContainerComponent, "iox-slider-container", never, { "nodeId": { "alias": "nodeId"; "required": false; }; "dir": { "alias": "dir"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "loop": { "alias": "loop"; "required": false; }; "slidesPerView": { "alias": "slidesPerView"; "required": false; }; "slidesPerGroup": { "alias": "slidesPerGroup"; "required": false; }; "spaceBetween": { "alias": "spaceBetween"; "required": false; }; "speed": { "alias": "speed"; "required": false; }; "effect": { "alias": "effect"; "required": false; }; "grabCursor": { "alias": "grabCursor"; "required": false; }; "centeredSlides": { "alias": "centeredSlides"; "required": false; }; "initialSlide": { "alias": "initialSlide"; "required": false; }; "autoHeight": { "alias": "autoHeight"; "required": false; }; "slideToClickedSlide": { "alias": "slideToClickedSlide"; "required": false; }; "freeMode": { "alias": "freeMode"; "required": false; }; "enableNavigation": { "alias": "enableNavigation"; "required": false; }; "enablePagination": { "alias": "enablePagination"; "required": false; }; "enableScrollbar": { "alias": "enableScrollbar"; "required": false; }; "enableAutoplay": { "alias": "enableAutoplay"; "required": false; }; "enableKeyboard": { "alias": "enableKeyboard"; "required": false; }; "enableMousewheel": { "alias": "enableMousewheel"; "required": false; }; "enableZoom": { "alias": "enableZoom"; "required": false; }; "enableGrid": { "alias": "enableGrid"; "required": false; }; "enableParallax": { "alias": "enableParallax"; "required": false; }; "autoplayDelay": { "alias": "autoplayDelay"; "required": false; }; "autoplayPauseOnMouseEnter": { "alias": "autoplayPauseOnMouseEnter"; "required": false; }; "autoplayDisableOnInteraction": { "alias": "autoplayDisableOnInteraction"; "required": false; }; "paginationType": { "alias": "paginationType"; "required": false; }; "paginationClickable": { "alias": "paginationClickable"; "required": false; }; "paginationDynamicBullets": { "alias": "paginationDynamicBullets"; "required": false; }; "navigationColor": { "alias": "navigationColor"; "required": false; }; "paginationColor": { "alias": "paginationColor"; "required": false; }; "gridRows": { "alias": "gridRows"; "required": false; }; "breakpoints": { "alias": "breakpoints"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "controlParts": { "alias": "controlParts"; "required": false; }; "scrollPlays": { "alias": "scrollPlays"; "required": false; }; }, {}, never, never, false, never>;
790
794
  }
791
795
 
792
796
  /**
@@ -1728,6 +1732,8 @@ interface SliderInputs {
1728
1732
  gridRows?: number | string;
1729
1733
  breakpoints?: string;
1730
1734
  responsive?: ResponsiveOverrides | null;
1735
+ /** Premium M4: the scroll plays it — held mid-screen, resting on each picture; no swipe, no loop, no autoplay. */
1736
+ scrollPlays?: boolean;
1731
1737
  }
1732
1738
  /** The slider's controls, when they are PARTS (CC3) — the elements Swiper is handed. */
1733
1739
  interface SliderControlElements {
@@ -1759,6 +1765,17 @@ declare const LEGACY_SWIPER_CONTROLS: {
1759
1765
  readonly pagination: ".swiper-pagination";
1760
1766
  readonly scrollbar: ".swiper-scrollbar";
1761
1767
  };
1768
+ /**
1769
+ * The feel every live slider gets (premium M4, T3 — Emil 114/121): past either end a drag meets friction, not a wall
1770
+ * (resistance), and a swipe commits only after a few px of travel, so a vertical scroll that drifts never moves a slide.
1771
+ * The easing of the slides is the look's (`slider-ease`, iox-design.css).
1772
+ */
1773
+ declare const SLIDER_FEEL: {
1774
+ readonly resistanceRatio: 0.65;
1775
+ readonly threshold: 6;
1776
+ };
1777
+ /** At or under this width one picture takes the full width (M1.3) unless the author said otherwise there. */
1778
+ declare const SLIDER_PHONE_BREAKPOINT = "mobile";
1762
1779
  /** The pagination part's classes — Swiper's own position CSS (`.swiper-pagination-bullets.swiper-pagination-horizontal`)
1763
1780
  * must not pin a PART: its place is its own styles'. The dots keep Swiper's bullet class. */
1764
1781
  declare const PART_PAGINATION_MODIFIER = "iox-slider-pagination-";
@@ -1767,6 +1784,12 @@ declare function swiperLoopOptions(loop: unknown): {
1767
1784
  loop: boolean;
1768
1785
  rewind: boolean;
1769
1786
  };
1787
+ /**
1788
+ * One picture the full width on a phone (M1.3) — the default the M1 prototype proved: a 1.15 "peek" left an empty strip
1789
+ * beside the picture. Added as a phone layer only where the author set no slides-per-view at a phone width; an effect
1790
+ * that shows one slide anyway keeps its own (a "cards" stack stays a centred card, iox-design.css).
1791
+ */
1792
+ declare function withPhoneDefaults(inputs: SliderInputs): ResponsiveOverrides | null;
1770
1793
  declare function planSwiperOptions(inputs: SliderInputs, ctx: SwiperPlanContext): SwiperPlan;
1771
1794
 
1772
1795
  /**
@@ -1795,6 +1818,19 @@ declare function sliderControlElements(el: Element): {
1795
1818
  /** True when the rendered slider holds any control part (the model's `hasSliderParts`, read off the DOM). */
1796
1819
  declare function domHasSliderParts(el: Element): boolean;
1797
1820
  declare function bootSlider(el: HTMLElement, inputs: SliderInputs, options?: SliderBootOptions): Promise<any>;
1821
+ /** The element a slider the scroll plays is held in: its runway, the Scene root the ONE driver drives (premium M4). */
1822
+ declare const SLIDER_RUNWAY_CLASS = "iox-slider-runway";
1823
+ /** The runway's steps (slides − 1): how many half-screens of scroll it reserves (iox-design.css). */
1824
+ declare const SLIDER_STEPS_PROPERTY = "--slider-steps";
1825
+ /**
1826
+ * The runway a slider the scroll plays sits in — ONE answer for the string path (it writes this wrapper, steps known at
1827
+ * render, so the page never shifts) and the component path (the same class and Scene root; its boot writes the steps).
1828
+ * Null when the scroll does not play it.
1829
+ */
1830
+ declare function sliderRunwayHtml(inputs: SliderInputs | null | undefined, slideCount: number): {
1831
+ open: string;
1832
+ close: string;
1833
+ } | null;
1798
1834
  /** The inputs a string-path slider carries (`data-iox-slider`), or null. */
1799
1835
  declare function sliderInputsOf(el: Element): SliderInputs | null;
1800
1836
  /** The Swiper inputs of a saved SliderContainer node — what the string path serialises into `data-iox-slider`. */
@@ -1958,10 +1994,17 @@ type StateMaps = Record<string, Record<string, any> | undefined> | null | undefi
1958
1994
  declare function stateTransitionProperties(stateStyles: StateMaps, responsive?: Record<string, {
1959
1995
  stateStyles?: StateMaps;
1960
1996
  } | undefined> | null, type?: string | null): string[];
1997
+ /**
1998
+ * What an element style animates beyond the properties its states change (premium M4): a link's underline is DRAWN by
1999
+ * the shared CSS (`iox-design.css`) as a background line that grows from the reading start on hover — its growth is a
2000
+ * `background-size` the node's own transition must name, or it would jump.
2001
+ */
2002
+ declare const ELEMENT_STYLE_TRANSITION_EXTRAS: Readonly<Record<string, ReadonlyArray<string>>>;
1961
2003
  /**
1962
2004
  * `styleProps` as a renderer compiles them: a hovering node with no timing of its own takes the default hover timing,
1963
- * and a node whose transition names no properties gets the ones its states change. An author's own `transitionProperty`
1964
- * (or a raw `transition`) always wins. Pure: the node's stored styles are never touched.
2005
+ * and a node whose transition names no properties gets the ones its states change (and what its element style draws,
2006
+ * `ELEMENT_STYLE_TRANSITION_EXTRAS`). An author's own `transitionProperty` (or a raw `transition`) always wins. Pure:
2007
+ * the node's stored styles are never touched.
1965
2008
  */
1966
2009
  declare function withStateTransitions(styleProps: Record<string, any>, stateStyles: StateMaps, elementStyle?: string | null, responsive?: Record<string, {
1967
2010
  stateStyles?: StateMaps;
@@ -2301,6 +2344,98 @@ declare function normalizeAppPath(path: string | null | undefined, baseHref?: st
2301
2344
  /** Whether `href` points at the page at `currentPath` (both app-relative, or absolute under `baseHref`). */
2302
2345
  declare function isCurrentLink(href: string | null | undefined, currentPath: string | null | undefined, options?: CurrentLinkOptions): boolean;
2303
2346
 
2347
+ /**
2348
+ * Reduced motion (CC1, R1 — complex-components plan §2d). The token sheet already collapses the
2349
+ * motion tokens under `prefers-reduced-motion`; everything that moves through SCRIPT must ask the
2350
+ * same question, and ask it HERE: the interaction engines (builder canvas + live site), the Slider's
2351
+ * autoplay and the Gallery's crossfade loop. Publishable gate #6: reduced motion = motion dial 0.
2352
+ */
2353
+ declare const REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
2354
+ /** Anything with `matchMedia` — a window, or a stub in a spec. */
2355
+ interface MatchMediaHost {
2356
+ matchMedia?: (query: string) => {
2357
+ matches: boolean;
2358
+ };
2359
+ }
2360
+ /** True when the visitor asked their system for reduced motion. No `matchMedia` (SSR) → false. */
2361
+ declare function prefersReducedMotion(host?: MatchMediaHost | null | undefined): boolean;
2362
+ /** True when script may animate. The ONE question every runtime asks before moving anything. */
2363
+ declare function motionAllowed(host?: MatchMediaHost | null | undefined): boolean;
2364
+
2365
+ /** How far the page has to move before it counts as scrolled — past a trackpad's rest jitter. */
2366
+ declare const SCROLLED_THRESHOLD_PX = 8;
2367
+ /** True once `offset` has passed the threshold. */
2368
+ declare function isScrolled(offset: number, threshold?: number): boolean;
2369
+ /** Anything that scrolls: a window (`scrollY`) or an element (`scrollTop`). */
2370
+ interface ScrollSource {
2371
+ addEventListener(type: 'scroll', fn: () => void, options?: AddEventListenerOptions): void;
2372
+ removeEventListener(type: 'scroll', fn: () => void): void;
2373
+ scrollY?: number;
2374
+ scrollTop?: number;
2375
+ }
2376
+ /**
2377
+ * Keep `SCROLLED_ATTRIBUTE` on `target` while `source` has scrolled past the threshold — what the Scrolled state (G4)
2378
+ * compiles against, on the live site (the window → the document element) and on the canvas (its scroller → the page).
2379
+ * One passive listener, read once per frame, written only when it changes. Returns the stop.
2380
+ */
2381
+ declare function watchScrolled(source: ScrollSource, target: Element, threshold?: number): () => void;
2382
+
2383
+ /**
2384
+ * A header that HIDES (premium components T2, M4): it steps aside while the page scrolls down and comes back the moment
2385
+ * it scrolls up — ONE runtime for the live site (the window's scroll) and the builder canvas (its Lenis scroll, handed in
2386
+ * through `update`). It never moves while the visitor is inside it: keyboard focus in the header, or its own drawer
2387
+ * open, keeps it in place, and it is always there at the top of the page.
2388
+ *
2389
+ * Motion (Emil 30/41/52/59/192): `translate` only, from the live value (a run interrupted by a change of direction turns
2390
+ * back from where it is — never stacked); the exit is faster than the return (dur-fast out, dur-ui back, on the look's
2391
+ * standard easing — the tokens collapse with the look's motion); under reduced motion it fades in place (opacity, no
2392
+ * movement — gentler, not zero), and is not clickable while faded. The return RELEASES (no inline frame is left), the
2393
+ * hidden frame is held, as every exit in the product (M2's settle rule).
2394
+ *
2395
+ * A header that only STAYS needs no runtime: the shared CSS keeps it at the top (`iox-design.css`).
2396
+ */
2397
+ /** Page px the scroll must travel in one direction before the header answers — past a trackpad's jitter. */
2398
+ declare const HEADER_SCROLL_HYSTERESIS_PX = 6;
2399
+ interface HeaderRuntimeOptions {
2400
+ /** Where reduced motion is asked (the window; a stub in a spec). */
2401
+ host?: MatchMediaHost | null;
2402
+ }
2403
+ /** `120ms` / `0.2s` → milliseconds; anything else → null. */
2404
+ declare function durationMs(value: string | null | undefined): number | null;
2405
+ /**
2406
+ * Whether a hiding header should step aside now: the page moved DOWN past the header's own height, the header is not
2407
+ * held (focus inside, its drawer open). Pure: the direction and the offsets come from the caller.
2408
+ */
2409
+ declare function headerShouldHide(offset: number, delta: number, headerHeight: number, held: boolean): boolean;
2410
+ declare class HeaderRuntime {
2411
+ private readonly header;
2412
+ private readonly options;
2413
+ private lastOffset;
2414
+ private hidden;
2415
+ private height;
2416
+ private anim;
2417
+ private readonly resize;
2418
+ private readonly onFocusIn;
2419
+ constructor(header: HTMLElement, options?: HeaderRuntimeOptions);
2420
+ /** True while the header has stepped aside. */
2421
+ get isHidden(): boolean;
2422
+ /** The page now stands at `offset` page px (layout px — the canvas divides out its zoom). */
2423
+ update(offset: number): void;
2424
+ /** Back in place now, with no motion (a page change, the runtime going away). */
2425
+ reset(): void;
2426
+ destroy(): void;
2427
+ private held;
2428
+ private setHidden;
2429
+ }
2430
+ /** The headers that hide while the page scrolls down: in `root`, or among `elements` (each, and what it holds — what a
2431
+ * runtime instance owns: the page's nodes or the globals'). */
2432
+ declare function hidingHeadersIn(root: ParentNode | Iterable<Element>): HTMLElement[];
2433
+ /**
2434
+ * The live site's door: every hiding header in `root` (or among `elements`) follows `source` (the window), through ONE
2435
+ * passive listener read once per frame. Returns the stop.
2436
+ */
2437
+ declare function watchHeaders(source: ScrollSource, root: ParentNode | Iterable<Element>, options?: HeaderRuntimeOptions): () => void;
2438
+
2304
2439
  /**
2305
2440
  * The content traits the accessibility attributes are read from (CC1). Import-free on purpose: the
2306
2441
  * builder's component configs declare these traits, and the node-baseline generator bundles those
@@ -2332,6 +2467,8 @@ declare const DIALOG_NODE_TYPE = "Dialog";
2332
2467
  declare const NAMED_GROUP_ROLES: ReadonlyArray<string>;
2333
2468
  /** Carries the min-width (px) at which an open dialog closes itself; the engine listens on it. */
2334
2469
  declare const DIALOG_CLOSE_ABOVE_ATTRIBUTE = "data-iox-dialog-close-above";
2470
+ /** A slide's caption (premium M4, T3): the Slider's Caption part shows the caption of the slide in view. */
2471
+ declare const SLIDE_CAPTION_ATTRIBUTE = "data-iox-caption";
2335
2472
  declare enum A11yAttribute {
2336
2473
  Label = "aria-label",
2337
2474
  Hidden = "aria-hidden",
@@ -2395,24 +2532,6 @@ declare function needsGroupName(node: (A11yNodeSource & {
2395
2532
  role?: string | null;
2396
2533
  }) | null | undefined): boolean;
2397
2534
 
2398
- /**
2399
- * Reduced motion (CC1, R1 — complex-components plan §2d). The token sheet already collapses the
2400
- * motion tokens under `prefers-reduced-motion`; everything that moves through SCRIPT must ask the
2401
- * same question, and ask it HERE: the interaction engines (builder canvas + live site), the Slider's
2402
- * autoplay and the Gallery's crossfade loop. Publishable gate #6: reduced motion = motion dial 0.
2403
- */
2404
- declare const REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
2405
- /** Anything with `matchMedia` — a window, or a stub in a spec. */
2406
- interface MatchMediaHost {
2407
- matchMedia?: (query: string) => {
2408
- matches: boolean;
2409
- };
2410
- }
2411
- /** True when the visitor asked their system for reduced motion. No `matchMedia` (SSR) → false. */
2412
- declare function prefersReducedMotion(host?: MatchMediaHost | null | undefined): boolean;
2413
- /** True when script may animate. The ONE question every runtime asks before moving anything. */
2414
- declare function motionAllowed(host?: MatchMediaHost | null | undefined): boolean;
2415
-
2416
2535
  /**
2417
2536
  * Scrolling (AI plan rev 3.1 §3p, MO-D1/MO-D7): the look's `scroll` choice → the options the ONE page
2418
2537
  * scroller starts Lenis with, or `null` for the browser's own scrolling. The table is the contract's
@@ -2644,24 +2763,6 @@ declare function splitPressFeedback<T extends PressAction>(actions: ReadonlyArra
2644
2763
  onClick: T[];
2645
2764
  };
2646
2765
 
2647
- /** How far the page has to move before it counts as scrolled — past a trackpad's rest jitter. */
2648
- declare const SCROLLED_THRESHOLD_PX = 8;
2649
- /** True once `offset` has passed the threshold. */
2650
- declare function isScrolled(offset: number, threshold?: number): boolean;
2651
- /** Anything that scrolls: a window (`scrollY`) or an element (`scrollTop`). */
2652
- interface ScrollSource {
2653
- addEventListener(type: 'scroll', fn: () => void, options?: AddEventListenerOptions): void;
2654
- removeEventListener(type: 'scroll', fn: () => void): void;
2655
- scrollY?: number;
2656
- scrollTop?: number;
2657
- }
2658
- /**
2659
- * Keep `SCROLLED_ATTRIBUTE` on `target` while `source` has scrolled past the threshold — what the Scrolled state (G4)
2660
- * compiles against, on the live site (the window → the document element) and on the canvas (its scroller → the page).
2661
- * One passive listener, read once per frame, written only when it changes. Returns the stop.
2662
- */
2663
- declare function watchScrolled(source: ScrollSource, target: Element, threshold?: number): () => void;
2664
-
2665
2766
  /**
2666
2767
  * page-style — the ONE compiler that turns a page's style settings into CSS.
2667
2768
  *
@@ -3842,5 +3943,5 @@ declare const FLOATING_MARGIN = 12;
3842
3943
  /** Where `panel` goes beside `anchor` inside `viewport`. */
3843
3944
  declare function placeFloating(anchor: FloatingRect, panel: FloatingSize, viewport: FloatingViewport, options?: FloatingOptions): FloatingPlacement;
3844
3945
 
3845
- export { A11yAttribute, A11yTrait, ACCESSIBLE_NAME_TYPES, AOSService, ARIA_CURRENT_PAGE, BACKDROP_TWIN_KEY, BACKDROP_WHOLE_KEY, BREAKPOINTS, Breakpoint, BreakpointQueryKind, BuilderButtonComponent, BuilderDividerComponent, BuilderHeadingComponent, BuilderIconComponent, BuilderImageComponent, BuilderLinkComponent, BuilderSpacerComponent, ButtonBlockComponent, CALENDAR_CLOSING_ATTRIBUTE, CALENDAR_DESIGN_ATTRIBUTE, CALENDAR_INSTANT_ATTRIBUTE, CALENDAR_SHEET_QUERY, COMPONENT_STATE_SELECTOR, CONTAINER_HTML_TAGS, CONTEXT_ACTION_TYPES, CURRENT_LINK_TYPES, CalendarClass, CardComponent, ClientGalleryComponent, ClientListComponent, ClientListItemComponent, ClientRepeaterComponent, ClientSliderContainerComponent, ClientSliderSlideComponent, ComponentInstanceRegistryService, ComponentState, ContainerComponent, ContextStore, DECORATIVE_TYPES, DEFAULT_GALLERY_SCHEDULER, DEFAULT_INTERACTION_EASING, DEFAULT_PAGE_TRANSITION, DEFAULT_PAGE_TRANSITION_DURATION, DEFAULT_PAGE_TRANSITION_EASING, DEFAULT_PAGE_TRANSITION_PERSPECTIVE, DEFAULT_PHOSPHOR_WEIGHT, DEFAULT_WIDTH_BY_TYPE, DIALOG_CLOSE_ABOVE_ATTRIBUTE, DIALOG_NODE_TYPE, DatePickerRuntime, DeclarationContext, EASING_KEYWORDS, EASING_TOKENS, ENTRANCE_ACTION_TYPES, ENTRANCE_FALLBACK_CSS, ENTRANCE_NOSCRIPT_CSS, ENTRANCE_PRESTATE_ATTRIBUTE, EXIT_ACTION_TYPES, EasingKeyword, EasingToken, FLOATING_GAP, FLOATING_MARGIN, FloatingSide, FormRenderState, FormRuntimeService, GALLERY_EFFECTS, GALLERY_EFFECT_DESCRIPTORS, GalleryLoop, HOVER_DEFAULT_TRANSITION_TRAITS, HOVER_MEDIA_QUERY, HOVER_STATES, INTERACTION_ANIMATION_ID, INTERACTION_HIDDEN_ATTRIBUTE, IOX_BUILDER_EVENTS, IOX_FORM_MESSAGES, IOX_FORM_NAVIGATOR, IOX_FORM_TRANSPORT, IS_PREVIEW, IoxAnimateContainer, IoxAosDirective, IoxAosModule, IoxBuilderComponentsModule, IoxComponentRegistryService, IoxDialogComponent, IoxFieldComponent, IoxFormComponent, IoxFormErrorComponent, IoxFormSuccessComponent, IoxPageComponent, IoxPageModule, IoxSubmitButtonComponent, IoxUiModule, IoxVideoComponent, LAST_EMITTED_STATES, LEGACY_DIRECTION_KEY, LEGACY_HOVER_TRANSITION_TRAITS, LEGACY_SWIPER_CONTROLS, LinkedContainerComponent, MANAGED_A11Y_ATTRIBUTES, MAX_LINES_KEY, NAMED_GROUP_ROLES, NO_PAGE_TRANSITION, ON_STATE_ROLES, OUTER_STYLE_PROPS, PAGE_STYLE_TOKENS, PAGE_TOKEN_FALLBACKS, PAGE_TRANSITION_CATEGORIES, PAGE_TRANSITION_PRESETS, PART_CLASS_NAMES, PART_PAGINATION_MODIFIER, PHONE_TRANSITION_QUERY, PIPE_DESCRIPTORS, PIPE_REGISTRY, PageScrollProvider, PageStyleField, PageStyleSource, PointerKind, REDUCED_MOTION_QUERY, RELATIONAL_STATE_PSEUDO, RevealActionType, SCROLLED_ATTRIBUTE, SCROLLED_STATE_ROLE, SCROLLED_THRESHOLD_PX, SCROLL_EASINGS, SELF_PLAYING_TRIGGERS, SHAKE_DURATION_MS, SHAKE_EASING, SHAKE_KEYFRAMES, SLIDER_INPUTS_ATTRIBUTE, SLIDER_INPUT_NAMES, STATE_PSEUDO_CLASS, STRUCTURAL_STATES, SUPPRESSED_STYLE_PROPS_BY_TYPE, SWIPER_A11Y_OPTIONS, SWIPER_RESPONSIVE_TRAITS, SWIPER_TRIGGER_EVENTS, ScrollEasing, SectionComponent, SettleMode, StringFormRuntime, SwiperModuleName, TARGETED_STATE_SUFFIX, TEXT_ALIGN_KEY, TEXT_DIRECTION_KEY, TRANSITION_FEELS, TRANSITION_PROPERTY_KEY, TextAlign, TextBlockComponent, VALIDATION_STATES, VALIDATION_STATE_CLASS, VIRTUAL_TRAIT_GROUPS, VIRTUAL_TRAIT_KEYS, ViewPositionDirective, ViewPositionModule, VisibilityActionType, activeActions, animateAction, applyBindingPipes, applyFeel, attachDatePicker, attachDatePickers, attachStringForm, bootSlider, breakpointDef, breakpointForWidth, breakpointQueryFor, buildInteractionKeyframes, buildPartSelector, buildSwiperBreakpoints, buildTargetedStateSelector, buildTargetedSuffixSelector, buildTransitionTimeline, cascadeChain, clearInputOverride, clearOverride, closeAboveMediaQuery, collectContextSlotKeys, compileDeclarations, compilePageStyle, componentStatesFor, composeVirtualTraits, containerHtmlTag, contextActionEffect, contextSlotKeys, countOverrides, datePickerOf, declaredInputNames, decomposeBackdropFilter, defaultHoverTransitionTraits, defaultMessageResolver, deriveSeoFromContent, describePageStyle, describeSeoFields, dialogCloseAboveMinWidth, domHasSliderParts, effectiveActionType, effectiveTransitionId, entrancePreStateStyle, entranceStartsHidden, feelFor, fieldLanguage, finalKeyframe, framesFromLiveValue, gateHoverRule, getSeoValue, hasHoverState, hasOwnPageTransition, hasOwnTransition, initialSlotValues, isActionEnabled, isContextAction, isCubicBezier, isCurrentLink, isEasingToken, isExternalOrFragment, isGradientPaint, isHoverPointer, isHoverState, isInputOverriddenAt, isInteractionEasing, isLastEmittedStateKey, isOverriddenAt, isPressFeedback, isScrolled, isStructuralState, isValidSlotKey, isWholeBackdropSet, keyframePropertyName, keyframeStyleEntries, legacyEnterToTransition, mediaQueryFor, mergeSwiperBreakpoints, migrateLegacyDirection, migrateLegacyTextAlign, motionAllowed, nearestCommonAncestorId, needsAccessibleName, needsGroupName, nodeA11yAttributes, nodeCssId, nodeTraitValue, nodeUsesContext, normalizeAppPath, normalizeGalleryImage, normalizeIconClass, orderStatesForEmit, pageTransitionOf, parentBreakpoint, parseUrlList, partClassName, placeFloating, planPartRule, planResponsiveRules, planScroll, planStateRule, planSwiperOptions, playDualLayerTransition, playInteraction, prefersReducedMotion, renderDefaultDeclarations, resetPageStyleField, resetSeoField, resolveBoundValue, resolveContextValue, resolveGalleryEffect, resolveGalleryUrls, resolveInputChain, resolveInputs, resolveInteractionEasing, resolvePageTransition, resolvePath, resolveSeo, resolveStateStyles, resolveStyleProps, resolveToggleVisibility, resolveValueChain, rewriteViewportUnits, safeSetInput, serializeA11yAttributes, setDateFieldValue, setInputOverride, setOverride, setSeoAuto, setSeoBinding, setSeoOverride, setSeoValue, settleInteraction, settleModeFor, shakeElement, showCalendarDesign, sliderControlElements, sliderInputsFromProps, sliderInputsOf, splitOuterProps, splitPressFeedback, stateNamesIn, statePseudoClass, stateSelectorSuffix, stateTransitionProperties, stringFormRuntimeOf, stripSuppressedProps, swiperAutoplayAllowed, swiperLoopOptions, swiperModuleNames, syncNodeA11yAttributes, syncSubmitButtons, targetedStateSelector, transitionPropertyList, viewportTransitionContext, watchScrolled, withContextSlots, withStateTransitions, wrapInBreakpointQuery, wrapInMediaQuery };
3846
- export type { A11yNodeSource, AnimateActionOptions, BoundValueSpec, BreakpointDef, ContextActionEffect, ContextActionLike, ContextItemRef, ContextSlotDefault, ContextValueSpec, ContextWriteScope, CurrentLinkOptions, DatePickerOptions, FloatingOptions, FloatingPlacement, FloatingRect, FloatingSize, FloatingViewport, FormMessageResolver, GalleryBoundSource, GalleryDurations, GalleryEffect, GalleryEffectDescriptor, GalleryImage, GalleryLoopOptions, GalleryLoopScheduler, GalleryLoopState, GallerySlideState, IBuilderEventEmitter, InputMap, InteractionKeyframe, IoxContextSlot, IoxPipe, MatchMediaHost, NodeA11yContext, OverrideBreakpoint, PageScrollStart, PageStyleFieldState, PageStyleOptions, PageStyleSettings, PageTransitionCategory, PageTransitionCategoryMeta, PageTransitionContext, PageTransitionOptions, PageTransitionPreset, PipeArgSpec, PipeContext, PipeDescriptor, PlannedPageTransition, PressAction, RegisteredField, ResolvedPageTransition, ResponsiveLayer, ResponsiveOverrides, ResponsiveRuleSet, RouteAnimationLike, ScrollPlanContext, ScrollSource, SeoDerivedContent, SeoFieldSource, SeoFieldState, SeoResolveContext, SetContextParams, SettleOptions, SliderBootOptions, SliderControlElements, SliderInputs, StateRulePlan, StateScope, StateStyleMap, StringFormOptions, StyleMap, StyleTreeNode, SwiperBreakpointMap, SwiperModuleFlags, SwiperPlan, SwiperPlanContext, ToggleableAction, TransitionFeel, TransitionPhase, TransitionPreviewLayers, TransitionTimelineInput, TransitionViewport, ValueSource, VirtualTraitGroup };
3946
+ export { A11yAttribute, A11yTrait, ACCESSIBLE_NAME_TYPES, AOSService, ARIA_CURRENT_PAGE, BACKDROP_TWIN_KEY, BACKDROP_WHOLE_KEY, BREAKPOINTS, Breakpoint, BreakpointQueryKind, BuilderButtonComponent, BuilderDividerComponent, BuilderHeadingComponent, BuilderIconComponent, BuilderImageComponent, BuilderLinkComponent, BuilderSpacerComponent, ButtonBlockComponent, CALENDAR_CLOSING_ATTRIBUTE, CALENDAR_DESIGN_ATTRIBUTE, CALENDAR_INSTANT_ATTRIBUTE, CALENDAR_SHEET_QUERY, COMPONENT_STATE_SELECTOR, CONTAINER_HTML_TAGS, CONTEXT_ACTION_TYPES, CURRENT_LINK_TYPES, CalendarClass, CardComponent, ClientGalleryComponent, ClientListComponent, ClientListItemComponent, ClientRepeaterComponent, ClientSliderContainerComponent, ClientSliderSlideComponent, ComponentInstanceRegistryService, ComponentState, ContainerComponent, ContextStore, DECORATIVE_TYPES, DEFAULT_GALLERY_SCHEDULER, DEFAULT_INTERACTION_EASING, DEFAULT_PAGE_TRANSITION, DEFAULT_PAGE_TRANSITION_DURATION, DEFAULT_PAGE_TRANSITION_EASING, DEFAULT_PAGE_TRANSITION_PERSPECTIVE, DEFAULT_PHOSPHOR_WEIGHT, DEFAULT_WIDTH_BY_TYPE, DIALOG_CLOSE_ABOVE_ATTRIBUTE, DIALOG_NODE_TYPE, DatePickerRuntime, DeclarationContext, EASING_KEYWORDS, EASING_TOKENS, ELEMENT_STYLE_TRANSITION_EXTRAS, ENTRANCE_ACTION_TYPES, ENTRANCE_FALLBACK_CSS, ENTRANCE_NOSCRIPT_CSS, ENTRANCE_PRESTATE_ATTRIBUTE, EXIT_ACTION_TYPES, EasingKeyword, EasingToken, FLOATING_GAP, FLOATING_MARGIN, FloatingSide, FormRenderState, FormRuntimeService, GALLERY_EFFECTS, GALLERY_EFFECT_DESCRIPTORS, GalleryLoop, HEADER_SCROLL_HYSTERESIS_PX, HOVER_DEFAULT_TRANSITION_TRAITS, HOVER_MEDIA_QUERY, HOVER_STATES, HeaderRuntime, INTERACTION_ANIMATION_ID, INTERACTION_HIDDEN_ATTRIBUTE, IOX_BUILDER_EVENTS, IOX_FORM_MESSAGES, IOX_FORM_NAVIGATOR, IOX_FORM_TRANSPORT, IS_PREVIEW, IoxAnimateContainer, IoxAosDirective, IoxAosModule, IoxBuilderComponentsModule, IoxComponentRegistryService, IoxDialogComponent, IoxFieldComponent, IoxFormComponent, IoxFormErrorComponent, IoxFormSuccessComponent, IoxPageComponent, IoxPageModule, IoxSubmitButtonComponent, IoxUiModule, IoxVideoComponent, LAST_EMITTED_STATES, LEGACY_DIRECTION_KEY, LEGACY_HOVER_TRANSITION_TRAITS, LEGACY_SWIPER_CONTROLS, LinkedContainerComponent, MANAGED_A11Y_ATTRIBUTES, MAX_LINES_KEY, NAMED_GROUP_ROLES, NO_PAGE_TRANSITION, ON_STATE_ROLES, OUTER_STYLE_PROPS, PAGE_STYLE_TOKENS, PAGE_TOKEN_FALLBACKS, PAGE_TRANSITION_CATEGORIES, PAGE_TRANSITION_PRESETS, PART_CLASS_NAMES, PART_PAGINATION_MODIFIER, PHONE_TRANSITION_QUERY, PIPE_DESCRIPTORS, PIPE_REGISTRY, PageScrollProvider, PageStyleField, PageStyleSource, PointerKind, REDUCED_MOTION_QUERY, RELATIONAL_STATE_PSEUDO, RevealActionType, SCROLLED_ATTRIBUTE, SCROLLED_STATE_ROLE, SCROLLED_THRESHOLD_PX, SCROLL_EASINGS, SELF_PLAYING_TRIGGERS, SHAKE_DURATION_MS, SHAKE_EASING, SHAKE_KEYFRAMES, SLIDER_FEEL, SLIDER_INPUTS_ATTRIBUTE, SLIDER_INPUT_NAMES, SLIDER_PHONE_BREAKPOINT, SLIDER_RUNWAY_CLASS, SLIDER_STEPS_PROPERTY, SLIDE_CAPTION_ATTRIBUTE, STATE_PSEUDO_CLASS, STRUCTURAL_STATES, SUPPRESSED_STYLE_PROPS_BY_TYPE, SWIPER_A11Y_OPTIONS, SWIPER_RESPONSIVE_TRAITS, SWIPER_TRIGGER_EVENTS, ScrollEasing, SectionComponent, SettleMode, StringFormRuntime, SwiperModuleName, TARGETED_STATE_SUFFIX, TEXT_ALIGN_KEY, TEXT_DIRECTION_KEY, TRANSITION_FEELS, TRANSITION_PROPERTY_KEY, TextAlign, TextBlockComponent, VALIDATION_STATES, VALIDATION_STATE_CLASS, VIRTUAL_TRAIT_GROUPS, VIRTUAL_TRAIT_KEYS, ViewPositionDirective, ViewPositionModule, VisibilityActionType, activeActions, animateAction, applyBindingPipes, applyFeel, attachDatePicker, attachDatePickers, attachStringForm, bootSlider, breakpointDef, breakpointForWidth, breakpointQueryFor, buildInteractionKeyframes, buildPartSelector, buildSwiperBreakpoints, buildTargetedStateSelector, buildTargetedSuffixSelector, buildTransitionTimeline, cascadeChain, clearInputOverride, clearOverride, closeAboveMediaQuery, collectContextSlotKeys, compileDeclarations, compilePageStyle, componentStatesFor, composeVirtualTraits, containerHtmlTag, contextActionEffect, contextSlotKeys, countOverrides, datePickerOf, declaredInputNames, decomposeBackdropFilter, defaultHoverTransitionTraits, defaultMessageResolver, deriveSeoFromContent, describePageStyle, describeSeoFields, dialogCloseAboveMinWidth, domHasSliderParts, durationMs, effectiveActionType, effectiveTransitionId, entrancePreStateStyle, entranceStartsHidden, feelFor, fieldLanguage, finalKeyframe, framesFromLiveValue, gateHoverRule, getSeoValue, hasHoverState, hasOwnPageTransition, hasOwnTransition, headerShouldHide, hidingHeadersIn, initialSlotValues, isActionEnabled, isContextAction, isCubicBezier, isCurrentLink, isEasingToken, isExternalOrFragment, isGradientPaint, isHoverPointer, isHoverState, isInputOverriddenAt, isInteractionEasing, isLastEmittedStateKey, isOverriddenAt, isPressFeedback, isScrolled, isStructuralState, isValidSlotKey, isWholeBackdropSet, keyframePropertyName, keyframeStyleEntries, legacyEnterToTransition, mediaQueryFor, mergeSwiperBreakpoints, migrateLegacyDirection, migrateLegacyTextAlign, motionAllowed, nearestCommonAncestorId, needsAccessibleName, needsGroupName, nodeA11yAttributes, nodeCssId, nodeTraitValue, nodeUsesContext, normalizeAppPath, normalizeGalleryImage, normalizeIconClass, orderStatesForEmit, pageTransitionOf, parentBreakpoint, parseUrlList, partClassName, placeFloating, planPartRule, planResponsiveRules, planScroll, planStateRule, planSwiperOptions, playDualLayerTransition, playInteraction, prefersReducedMotion, renderDefaultDeclarations, resetPageStyleField, resetSeoField, resolveBoundValue, resolveContextValue, resolveGalleryEffect, resolveGalleryUrls, resolveInputChain, resolveInputs, resolveInteractionEasing, resolvePageTransition, resolvePath, resolveSeo, resolveStateStyles, resolveStyleProps, resolveToggleVisibility, resolveValueChain, rewriteViewportUnits, safeSetInput, serializeA11yAttributes, setDateFieldValue, setInputOverride, setOverride, setSeoAuto, setSeoBinding, setSeoOverride, setSeoValue, settleInteraction, settleModeFor, shakeElement, showCalendarDesign, sliderControlElements, sliderInputsFromProps, sliderInputsOf, sliderRunwayHtml, splitOuterProps, splitPressFeedback, stateNamesIn, statePseudoClass, stateSelectorSuffix, stateTransitionProperties, stringFormRuntimeOf, stripSuppressedProps, swiperAutoplayAllowed, swiperLoopOptions, swiperModuleNames, syncNodeA11yAttributes, syncSubmitButtons, targetedStateSelector, transitionPropertyList, viewportTransitionContext, watchHeaders, watchScrolled, withContextSlots, withPhoneDefaults, withStateTransitions, wrapInBreakpointQuery, wrapInMediaQuery };
3947
+ export type { A11yNodeSource, AnimateActionOptions, BoundValueSpec, BreakpointDef, ContextActionEffect, ContextActionLike, ContextItemRef, ContextSlotDefault, ContextValueSpec, ContextWriteScope, CurrentLinkOptions, DatePickerOptions, FloatingOptions, FloatingPlacement, FloatingRect, FloatingSize, FloatingViewport, FormMessageResolver, GalleryBoundSource, GalleryDurations, GalleryEffect, GalleryEffectDescriptor, GalleryImage, GalleryLoopOptions, GalleryLoopScheduler, GalleryLoopState, GallerySlideState, HeaderRuntimeOptions, IBuilderEventEmitter, InputMap, InteractionKeyframe, IoxContextSlot, IoxPipe, MatchMediaHost, NodeA11yContext, OverrideBreakpoint, PageScrollStart, PageStyleFieldState, PageStyleOptions, PageStyleSettings, PageTransitionCategory, PageTransitionCategoryMeta, PageTransitionContext, PageTransitionOptions, PageTransitionPreset, PipeArgSpec, PipeContext, PipeDescriptor, PlannedPageTransition, PressAction, RegisteredField, ResolvedPageTransition, ResponsiveLayer, ResponsiveOverrides, ResponsiveRuleSet, RouteAnimationLike, ScrollPlanContext, ScrollSource, SeoDerivedContent, SeoFieldSource, SeoFieldState, SeoResolveContext, SetContextParams, SettleOptions, SliderBootOptions, SliderControlElements, SliderInputs, StateRulePlan, StateScope, StateStyleMap, StringFormOptions, StyleMap, StyleTreeNode, SwiperBreakpointMap, SwiperModuleFlags, SwiperPlan, SwiperPlanContext, ToggleableAction, TransitionFeel, TransitionPhase, TransitionPreviewLayers, TransitionTimelineInput, TransitionViewport, ValueSource, VirtualTraitGroup };