@riverbankcms/sdk 0.104.1 → 0.104.3

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 (120) hide show
  1. package/dist/{PreviewEditorSidebar-CmaPXdKu.mjs → PreviewEditorSidebar-CBMhU9p_.mjs} +3 -3
  2. package/dist/{PreviewEditorUI-C5xRTh2b.mjs → PreviewEditorUI-C5KEw4M8.mjs} +2 -2
  3. package/dist/{SdkPreviewModeRuntime-Eks51NcN.mjs → SdkPreviewModeRuntime-Iq12HjL7.mjs} +1142 -177
  4. package/dist/{SiteChromeCustomizeContext-Bt8zb3qu.mjs → SiteChromeCustomizeContext-Cx0NMdyv.mjs} +1640 -877
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +10 -0
  6. package/dist/_dts/blocks/src/primitives/layout/Grid.d.ts +12 -8
  7. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +3 -0
  8. package/dist/_dts/blocks/src/system/blocks/events/shared/layout.d.ts +11 -1
  9. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +7 -1
  10. package/dist/_dts/blocks/src/system/constants/events.d.ts +1 -1
  11. package/dist/_dts/blocks/src/system/fragments/library/testimonialsCarousel.d.ts +12 -0
  12. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +2 -2
  13. package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +14 -0
  14. package/dist/_dts/blocks/src/system/runtime/nodes/buttonAffordance.d.ts +33 -0
  15. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +28 -0
  16. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCapacity.d.ts +32 -0
  17. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +1 -0
  18. package/dist/_dts/blocks/src/system/runtime/nodes/svg.d.ts +77 -0
  19. package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +2 -0
  20. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +3 -40
  21. package/dist/_dts/blocks/src/system/transforms/registry/formatting.d.ts +14 -0
  22. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +11 -0
  23. package/dist/_dts/core/src/branded.d.ts +5 -0
  24. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +18 -0
  25. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +2 -2
  26. package/dist/_dts/sdk/src/version.d.ts +1 -1
  27. package/dist/_dts/theme-core/src/ThemeScope.d.ts +1 -1
  28. package/dist/_dts/theme-core/src/buttons/affordanceIcons.d.ts +29 -0
  29. package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +6 -0
  30. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  31. package/dist/_dts/theme-core/src/buttons/personalities/flat-ink.d.ts +20 -0
  32. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
  33. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +4 -0
  34. package/dist/_dts/theme-core/src/buttons/types.d.ts +34 -0
  35. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  36. package/dist/_dts/theme-core/src/gradients/types.d.ts +27 -3
  37. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +51 -15
  38. package/dist/_dts/theme-core/src/palette/curated/brand-led.d.ts +13 -0
  39. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +12 -0
  40. package/dist/_dts/theme-core/src/palette/historicalThemePalette.d.ts +44 -0
  41. package/dist/_dts/theme-core/src/palette/index.d.ts +1 -0
  42. package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +13 -2
  43. package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +17 -2
  44. package/dist/_dts/theme-core/src/palette/themePaletteCompatibility.d.ts +3 -4
  45. package/dist/_dts/theme-core/src/runtime/themeCssVarNames.d.ts +1 -0
  46. package/dist/_dts/theme-core/src/schema.d.ts +108 -26
  47. package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +2 -1
  48. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +50 -1
  49. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -2
  50. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
  51. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +56 -1
  52. package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +16 -1
  53. package/dist/_dts/theme-core/src/status/index.d.ts +0 -1
  54. package/dist/_dts/theme-core/src/surfaces/foregroundContract.d.ts +19 -0
  55. package/dist/_dts/theme-core/src/surfaces/foregroundRoles.d.ts +9 -0
  56. package/dist/_dts/theme-core/src/surfaces/index.d.ts +2 -0
  57. package/dist/_dts/ui/src/button.d.ts +1 -1
  58. package/dist/cli/index.mjs +1558 -468
  59. package/dist/client/{DiscountCodeDisclosure-Dit2aItR.mjs → DiscountCodeDisclosure-BXM73_E5.mjs} +1 -1
  60. package/dist/client/{EventCombined.client-BnREyCjf.mjs → EventCombined.client-DT5elP7j.mjs} +4 -4
  61. package/dist/client/{EventListing.client-0uHld51x.mjs → EventListing.client-pTYGfV9C.mjs} +2 -2
  62. package/dist/client/{LeafletStaticMap-DJcvSfmj.mjs → LeafletStaticMap-dQrhlUe3.mjs} +1 -1
  63. package/dist/client/{MagicLinkForm-EAsIktfw.mjs → MagicLinkForm-u6Dul4j5.mjs} +2 -2
  64. package/dist/client/{StepIndicator-CRR17tYI.mjs → StepIndicator-nWqineJ2.mjs} +2 -2
  65. package/dist/client/{accordion-B47HIuuH.mjs → accordion-CSJcTUyH.mjs} +1 -1
  66. package/dist/client/{bookingForm-I1E-8F9P.mjs → bookingForm-C73wOuVa.mjs} +6 -6
  67. package/dist/client/bookings.mjs +137 -1
  68. package/dist/client/{buttons-BbPn8OKA.mjs → buttons-DfYyqt8C.mjs} +138 -2
  69. package/dist/client/{carousel-OlM7SyBs.mjs → carousel-fMBb0JSc.mjs} +1 -1
  70. package/dist/client/{cart-BKpG5jz6.mjs → cart-BtaCwT3S.mjs} +3 -3
  71. package/dist/client/{checkout-Dmmr6qoU.mjs → checkout-DkTwZSnh.mjs} +3 -3
  72. package/dist/client/client.mjs +2327 -542
  73. package/dist/client/{colorStyles-DuW4Fjqd.mjs → colorStyles-Wyl6JujD.mjs} +45 -4
  74. package/dist/client/{courseRegistration-CflZiqGk.mjs → courseRegistration-DnLmapJu.mjs} +7 -7
  75. package/dist/client/{eventCalendar-BvoLWcp-.mjs → eventCalendar-BvLOc9KY.mjs} +165 -5
  76. package/dist/client/{eventCombined-DsrO8t_t.mjs → eventCombined-kShgJPQr.mjs} +2 -2
  77. package/dist/client/{eventDetails-C3hxgcJm.mjs → eventDetails-C5NTM0Vo.mjs} +3 -3
  78. package/dist/client/{eventListing-C-hb237X.mjs → eventListing-B82ZdKP6.mjs} +2 -2
  79. package/dist/client/{eventRegistration-B0gyzDGi.mjs → eventRegistration-qJVFqBWo.mjs} +7 -7
  80. package/dist/client/{form-C_RUi6oJ.mjs → form-BvAcKiuu.mjs} +2 -2
  81. package/dist/client/{headerSection-IKQiD2U0.mjs → headerSection-NvAiEHAg.mjs} +3 -3
  82. package/dist/client/hooks.mjs +1034 -356
  83. package/dist/client/{locationMap-8ZBrMzRJ.mjs → locationMap-D0j52xfI.mjs} +3 -3
  84. package/dist/client/{media-CZJKL7fi.mjs → media-BCW_g2cQ.mjs} +1 -1
  85. package/dist/client/{newsletterForm-CYk3ucwj.mjs → newsletterForm-B8_i93qH.mjs} +2 -2
  86. package/dist/client/{pricing-B5GmvfIH.mjs → pricing-DIYnyHOk.mjs} +1 -1
  87. package/dist/client/{productDetail-BjS2Dqzo.mjs → productDetail-w0eAHkuQ.mjs} +3 -3
  88. package/dist/client/{productList-BOHvC8My.mjs → productList-Vsguq5Xt.mjs} +3 -3
  89. package/dist/client/{propsDecoder-WS6UEJwZ.mjs → propsDecoder-CD2pJ1WB.mjs} +37 -2
  90. package/dist/client/rendering/client.mjs +1722 -760
  91. package/dist/client/rendering/islands.mjs +19 -19
  92. package/dist/client/rendering.mjs +2303 -518
  93. package/dist/client/{shop-CON03-wN.mjs → shop-Dgxs-Q8F.mjs} +6 -6
  94. package/dist/client/{shop-commerce-DlqrFgH8.mjs → shop-commerce-DJAhsTaT.mjs} +6 -6
  95. package/dist/client/{shop-commerce-store-l74-Kne6.mjs → shop-commerce-store-CfCXltXW.mjs} +1 -1
  96. package/dist/client/{shopShared-CQheEXSg.mjs → shopShared-CmDcPXUt.mjs} +2 -2
  97. package/dist/client/{useDiscountCodeUi-v6OluyWl.mjs → useDiscountCodeUi-CirrT2bM.mjs} +1 -1
  98. package/dist/client/{useEventFilters-BqSTcNOf.mjs → useEventFilters-CNZxlCcO.mjs} +5 -5
  99. package/dist/client/{usePolling-DMfADjIF.mjs → usePolling-Baks_iBI.mjs} +2 -2
  100. package/dist/preview-next/client/runtime.mjs +3 -3
  101. package/dist/{sdk-runtime-BUmJ0DaT.mjs → sdk-runtime-BfNiFeNJ.mjs} +1 -1
  102. package/dist/{separator-Dd-JYok7.mjs → separator-BhAR_Xmf.mjs} +1 -1
  103. package/dist/server/components.mjs +2293 -531
  104. package/dist/server/config-validation.mjs +1040 -357
  105. package/dist/server/config.mjs +1040 -357
  106. package/dist/server/data.mjs +1034 -356
  107. package/dist/server/index.mjs +1 -1
  108. package/dist/server/next.mjs +2296 -534
  109. package/dist/server/page-converter.mjs +1018 -324
  110. package/dist/server/prebuild.mjs +1 -1
  111. package/dist/server/rendering/server.mjs +2278 -521
  112. package/dist/server/rendering.mjs +2293 -531
  113. package/dist/server/routing.mjs +1092 -338
  114. package/dist/server/server.mjs +1016 -338
  115. package/dist/server/theme-bridge.mjs +1240 -77
  116. package/dist/server/theme.mjs +165 -5
  117. package/dist/styles/index.css +617 -34
  118. package/package.json +1 -1
  119. package/dist/_dts/blocks/src/system/transforms/registry/_utils/sectionForegroundStyles.d.ts +0 -2
  120. package/dist/_dts/theme-core/src/status/contextualColors.d.ts +0 -6
@@ -1538,6 +1538,9 @@ export declare const typographySchema: z.ZodObject<{
1538
1538
  loose: "loose";
1539
1539
  }>>;
1540
1540
  }, z.core.$strip>>;
1541
+ eyebrow: z.ZodOptional<z.ZodObject<{
1542
+ family: z.ZodString;
1543
+ }, z.core.$strip>>;
1541
1544
  }, z.core.$strip>;
1542
1545
  export declare const spaceSchema: z.ZodEnum<{
1543
1546
  standard: "standard";
@@ -1566,6 +1569,7 @@ export declare const shadow: z.ZodObject<{
1566
1569
  bottom: "bottom";
1567
1570
  "bottom-right": "bottom-right";
1568
1571
  }>>;
1572
+ colorToken: z.ZodOptional<z.ZodString>;
1569
1573
  }, z.core.$strip>;
1570
1574
  export declare const border: z.ZodObject<{
1571
1575
  width: z.ZodEnum<{
@@ -1834,11 +1838,16 @@ declare const headerBackgroundSchema: z.ZodObject<{
1834
1838
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
1835
1839
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1836
1840
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1837
- type: z.ZodEnum<{
1841
+ type: z.ZodDefault<z.ZodEnum<{
1838
1842
  linear: "linear";
1839
1843
  radial: "radial";
1840
- }>;
1844
+ conic: "conic";
1845
+ }>>;
1841
1846
  angle: z.ZodOptional<z.ZodNumber>;
1847
+ shape: z.ZodOptional<z.ZodEnum<{
1848
+ circle: "circle";
1849
+ ellipse: "ellipse";
1850
+ }>>;
1842
1851
  position: z.ZodOptional<z.ZodString>;
1843
1852
  stops: z.ZodArray<z.ZodObject<{
1844
1853
  color: z.ZodString;
@@ -1955,11 +1964,16 @@ export declare const headerSchema: z.ZodObject<{
1955
1964
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
1956
1965
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1957
1966
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1958
- type: z.ZodEnum<{
1967
+ type: z.ZodDefault<z.ZodEnum<{
1959
1968
  linear: "linear";
1960
1969
  radial: "radial";
1961
- }>;
1970
+ conic: "conic";
1971
+ }>>;
1962
1972
  angle: z.ZodOptional<z.ZodNumber>;
1973
+ shape: z.ZodOptional<z.ZodEnum<{
1974
+ circle: "circle";
1975
+ ellipse: "ellipse";
1976
+ }>>;
1963
1977
  position: z.ZodOptional<z.ZodString>;
1964
1978
  stops: z.ZodArray<z.ZodObject<{
1965
1979
  color: z.ZodString;
@@ -2037,6 +2051,10 @@ export declare const headerSchema: z.ZodObject<{
2037
2051
  xl: "xl";
2038
2052
  xs: "xs";
2039
2053
  }>>;
2054
+ navPlacement: z.ZodOptional<z.ZodEnum<{
2055
+ center: "center";
2056
+ end: "end";
2057
+ }>>;
2040
2058
  container: z.ZodOptional<z.ZodObject<{
2041
2059
  rounded: z.ZodDefault<z.ZodEnum<{
2042
2060
  none: "none";
@@ -2322,11 +2340,16 @@ export declare const footerSchema: z.ZodObject<{
2322
2340
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
2323
2341
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2324
2342
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
2325
- type: z.ZodEnum<{
2343
+ type: z.ZodDefault<z.ZodEnum<{
2326
2344
  linear: "linear";
2327
2345
  radial: "radial";
2328
- }>;
2346
+ conic: "conic";
2347
+ }>>;
2329
2348
  angle: z.ZodOptional<z.ZodNumber>;
2349
+ shape: z.ZodOptional<z.ZodEnum<{
2350
+ circle: "circle";
2351
+ ellipse: "ellipse";
2352
+ }>>;
2330
2353
  position: z.ZodOptional<z.ZodString>;
2331
2354
  stops: z.ZodArray<z.ZodObject<{
2332
2355
  color: z.ZodString;
@@ -2481,8 +2504,8 @@ export declare const footerSchema: z.ZodObject<{
2481
2504
  }>>;
2482
2505
  align: z.ZodOptional<z.ZodEnum<{
2483
2506
  center: "center";
2484
- start: "start";
2485
2507
  end: "end";
2508
+ start: "start";
2486
2509
  "space-between": "space-between";
2487
2510
  }>>;
2488
2511
  gapX: z.ZodOptional<z.ZodEnum<{
@@ -2526,8 +2549,8 @@ export declare const footerSchema: z.ZodObject<{
2526
2549
  }>>;
2527
2550
  align: z.ZodOptional<z.ZodEnum<{
2528
2551
  center: "center";
2529
- start: "start";
2530
2552
  end: "end";
2553
+ start: "start";
2531
2554
  }>>;
2532
2555
  }, z.core.$strip>>;
2533
2556
  bottomBar: z.ZodOptional<z.ZodObject<{
@@ -2542,11 +2565,16 @@ export declare const footerSchema: z.ZodObject<{
2542
2565
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
2543
2566
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2544
2567
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
2545
- type: z.ZodEnum<{
2568
+ type: z.ZodDefault<z.ZodEnum<{
2546
2569
  linear: "linear";
2547
2570
  radial: "radial";
2548
- }>;
2571
+ conic: "conic";
2572
+ }>>;
2549
2573
  angle: z.ZodOptional<z.ZodNumber>;
2574
+ shape: z.ZodOptional<z.ZodEnum<{
2575
+ circle: "circle";
2576
+ ellipse: "ellipse";
2577
+ }>>;
2550
2578
  position: z.ZodOptional<z.ZodString>;
2551
2579
  stops: z.ZodArray<z.ZodObject<{
2552
2580
  color: z.ZodString;
@@ -3158,6 +3186,9 @@ export declare const themeSchema: z.ZodObject<{
3158
3186
  loose: "loose";
3159
3187
  }>>;
3160
3188
  }, z.core.$strip>>;
3189
+ eyebrow: z.ZodOptional<z.ZodObject<{
3190
+ family: z.ZodString;
3191
+ }, z.core.$strip>>;
3161
3192
  }, z.core.$strip>;
3162
3193
  space: z.ZodEnum<{
3163
3194
  standard: "standard";
@@ -3192,6 +3223,7 @@ export declare const themeSchema: z.ZodObject<{
3192
3223
  bottom: "bottom";
3193
3224
  "bottom-right": "bottom-right";
3194
3225
  }>>;
3226
+ colorToken: z.ZodOptional<z.ZodString>;
3195
3227
  }, z.core.$strip>;
3196
3228
  motion: z.ZodObject<{
3197
3229
  level: z.ZodEnum<{
@@ -3472,11 +3504,16 @@ export declare const themeSchema: z.ZodObject<{
3472
3504
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
3473
3505
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3474
3506
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
3475
- type: z.ZodEnum<{
3507
+ type: z.ZodDefault<z.ZodEnum<{
3476
3508
  linear: "linear";
3477
3509
  radial: "radial";
3478
- }>;
3510
+ conic: "conic";
3511
+ }>>;
3479
3512
  angle: z.ZodOptional<z.ZodNumber>;
3513
+ shape: z.ZodOptional<z.ZodEnum<{
3514
+ circle: "circle";
3515
+ ellipse: "ellipse";
3516
+ }>>;
3480
3517
  position: z.ZodOptional<z.ZodString>;
3481
3518
  stops: z.ZodArray<z.ZodObject<{
3482
3519
  color: z.ZodString;
@@ -3554,6 +3591,10 @@ export declare const themeSchema: z.ZodObject<{
3554
3591
  xl: "xl";
3555
3592
  xs: "xs";
3556
3593
  }>>;
3594
+ navPlacement: z.ZodOptional<z.ZodEnum<{
3595
+ center: "center";
3596
+ end: "end";
3597
+ }>>;
3557
3598
  container: z.ZodOptional<z.ZodObject<{
3558
3599
  rounded: z.ZodDefault<z.ZodEnum<{
3559
3600
  none: "none";
@@ -3824,11 +3865,16 @@ export declare const themeSchema: z.ZodObject<{
3824
3865
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
3825
3866
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3826
3867
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
3827
- type: z.ZodEnum<{
3868
+ type: z.ZodDefault<z.ZodEnum<{
3828
3869
  linear: "linear";
3829
3870
  radial: "radial";
3830
- }>;
3871
+ conic: "conic";
3872
+ }>>;
3831
3873
  angle: z.ZodOptional<z.ZodNumber>;
3874
+ shape: z.ZodOptional<z.ZodEnum<{
3875
+ circle: "circle";
3876
+ ellipse: "ellipse";
3877
+ }>>;
3832
3878
  position: z.ZodOptional<z.ZodString>;
3833
3879
  stops: z.ZodArray<z.ZodObject<{
3834
3880
  color: z.ZodString;
@@ -3983,8 +4029,8 @@ export declare const themeSchema: z.ZodObject<{
3983
4029
  }>>;
3984
4030
  align: z.ZodOptional<z.ZodEnum<{
3985
4031
  center: "center";
3986
- start: "start";
3987
4032
  end: "end";
4033
+ start: "start";
3988
4034
  "space-between": "space-between";
3989
4035
  }>>;
3990
4036
  gapX: z.ZodOptional<z.ZodEnum<{
@@ -4028,8 +4074,8 @@ export declare const themeSchema: z.ZodObject<{
4028
4074
  }>>;
4029
4075
  align: z.ZodOptional<z.ZodEnum<{
4030
4076
  center: "center";
4031
- start: "start";
4032
4077
  end: "end";
4078
+ start: "start";
4033
4079
  }>>;
4034
4080
  }, z.core.$strip>>;
4035
4081
  bottomBar: z.ZodOptional<z.ZodObject<{
@@ -4044,11 +4090,16 @@ export declare const themeSchema: z.ZodObject<{
4044
4090
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
4045
4091
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4046
4092
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
4047
- type: z.ZodEnum<{
4093
+ type: z.ZodDefault<z.ZodEnum<{
4048
4094
  linear: "linear";
4049
4095
  radial: "radial";
4050
- }>;
4096
+ conic: "conic";
4097
+ }>>;
4051
4098
  angle: z.ZodOptional<z.ZodNumber>;
4099
+ shape: z.ZodOptional<z.ZodEnum<{
4100
+ circle: "circle";
4101
+ ellipse: "ellipse";
4102
+ }>>;
4052
4103
  position: z.ZodOptional<z.ZodString>;
4053
4104
  stops: z.ZodArray<z.ZodObject<{
4054
4105
  color: z.ZodString;
@@ -4280,6 +4331,10 @@ export declare const themeSchema: z.ZodObject<{
4280
4331
  fontSize: z.ZodOptional<z.ZodString>;
4281
4332
  }, z.core.$strip>>;
4282
4333
  }, z.core.$strip>>;
4334
+ affordance: z.ZodOptional<z.ZodObject<{
4335
+ iconId: z.ZodString;
4336
+ colorToken: z.ZodOptional<z.ZodString>;
4337
+ }, z.core.$strip>>;
4283
4338
  }, z.core.$strip>>;
4284
4339
  sizes: z.ZodOptional<z.ZodPipe<z.ZodObject<{
4285
4340
  sm: z.ZodObject<{
@@ -5481,6 +5536,9 @@ export declare const themesTurnSchema: z.ZodObject<{
5481
5536
  loose: "loose";
5482
5537
  }>>;
5483
5538
  }, z.core.$strip>>;
5539
+ eyebrow: z.ZodOptional<z.ZodObject<{
5540
+ family: z.ZodString;
5541
+ }, z.core.$strip>>;
5484
5542
  }, z.core.$strip>;
5485
5543
  space: z.ZodEnum<{
5486
5544
  standard: "standard";
@@ -5515,6 +5573,7 @@ export declare const themesTurnSchema: z.ZodObject<{
5515
5573
  bottom: "bottom";
5516
5574
  "bottom-right": "bottom-right";
5517
5575
  }>>;
5576
+ colorToken: z.ZodOptional<z.ZodString>;
5518
5577
  }, z.core.$strip>;
5519
5578
  motion: z.ZodObject<{
5520
5579
  level: z.ZodEnum<{
@@ -5795,11 +5854,16 @@ export declare const themesTurnSchema: z.ZodObject<{
5795
5854
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
5796
5855
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5797
5856
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
5798
- type: z.ZodEnum<{
5857
+ type: z.ZodDefault<z.ZodEnum<{
5799
5858
  linear: "linear";
5800
5859
  radial: "radial";
5801
- }>;
5860
+ conic: "conic";
5861
+ }>>;
5802
5862
  angle: z.ZodOptional<z.ZodNumber>;
5863
+ shape: z.ZodOptional<z.ZodEnum<{
5864
+ circle: "circle";
5865
+ ellipse: "ellipse";
5866
+ }>>;
5803
5867
  position: z.ZodOptional<z.ZodString>;
5804
5868
  stops: z.ZodArray<z.ZodObject<{
5805
5869
  color: z.ZodString;
@@ -5877,6 +5941,10 @@ export declare const themesTurnSchema: z.ZodObject<{
5877
5941
  xl: "xl";
5878
5942
  xs: "xs";
5879
5943
  }>>;
5944
+ navPlacement: z.ZodOptional<z.ZodEnum<{
5945
+ center: "center";
5946
+ end: "end";
5947
+ }>>;
5880
5948
  container: z.ZodOptional<z.ZodObject<{
5881
5949
  rounded: z.ZodDefault<z.ZodEnum<{
5882
5950
  none: "none";
@@ -6147,11 +6215,16 @@ export declare const themesTurnSchema: z.ZodObject<{
6147
6215
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
6148
6216
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6149
6217
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
6150
- type: z.ZodEnum<{
6218
+ type: z.ZodDefault<z.ZodEnum<{
6151
6219
  linear: "linear";
6152
6220
  radial: "radial";
6153
- }>;
6221
+ conic: "conic";
6222
+ }>>;
6154
6223
  angle: z.ZodOptional<z.ZodNumber>;
6224
+ shape: z.ZodOptional<z.ZodEnum<{
6225
+ circle: "circle";
6226
+ ellipse: "ellipse";
6227
+ }>>;
6155
6228
  position: z.ZodOptional<z.ZodString>;
6156
6229
  stops: z.ZodArray<z.ZodObject<{
6157
6230
  color: z.ZodString;
@@ -6306,8 +6379,8 @@ export declare const themesTurnSchema: z.ZodObject<{
6306
6379
  }>>;
6307
6380
  align: z.ZodOptional<z.ZodEnum<{
6308
6381
  center: "center";
6309
- start: "start";
6310
6382
  end: "end";
6383
+ start: "start";
6311
6384
  "space-between": "space-between";
6312
6385
  }>>;
6313
6386
  gapX: z.ZodOptional<z.ZodEnum<{
@@ -6351,8 +6424,8 @@ export declare const themesTurnSchema: z.ZodObject<{
6351
6424
  }>>;
6352
6425
  align: z.ZodOptional<z.ZodEnum<{
6353
6426
  center: "center";
6354
- start: "start";
6355
6427
  end: "end";
6428
+ start: "start";
6356
6429
  }>>;
6357
6430
  }, z.core.$strip>>;
6358
6431
  bottomBar: z.ZodOptional<z.ZodObject<{
@@ -6367,11 +6440,16 @@ export declare const themesTurnSchema: z.ZodObject<{
6367
6440
  contentOwner: z.ZodOptional<z.ZodLiteral<"site-chrome-editor">>;
6368
6441
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6369
6442
  gradient: z.ZodOptional<z.ZodNullable<z.ZodObject<{
6370
- type: z.ZodEnum<{
6443
+ type: z.ZodDefault<z.ZodEnum<{
6371
6444
  linear: "linear";
6372
6445
  radial: "radial";
6373
- }>;
6446
+ conic: "conic";
6447
+ }>>;
6374
6448
  angle: z.ZodOptional<z.ZodNumber>;
6449
+ shape: z.ZodOptional<z.ZodEnum<{
6450
+ circle: "circle";
6451
+ ellipse: "ellipse";
6452
+ }>>;
6375
6453
  position: z.ZodOptional<z.ZodString>;
6376
6454
  stops: z.ZodArray<z.ZodObject<{
6377
6455
  color: z.ZodString;
@@ -6603,6 +6681,10 @@ export declare const themesTurnSchema: z.ZodObject<{
6603
6681
  fontSize: z.ZodOptional<z.ZodString>;
6604
6682
  }, z.core.$strip>>;
6605
6683
  }, z.core.$strip>>;
6684
+ affordance: z.ZodOptional<z.ZodObject<{
6685
+ iconId: z.ZodString;
6686
+ colorToken: z.ZodOptional<z.ZodString>;
6687
+ }, z.core.$strip>>;
6606
6688
  }, z.core.$strip>>;
6607
6689
  sizes: z.ZodOptional<z.ZodPipe<z.ZodObject<{
6608
6690
  sm: z.ZodObject<{
@@ -1,8 +1,9 @@
1
1
  import type { ExpandedPalette } from '../palette/expandPalette';
2
+ import type { SurfaceForegroundRole } from '../surfaces/foregroundRoles';
2
3
  import type { SiteStyleSurfaceIntent } from './types';
3
4
  export type AccessibleColorSurfaceIntent = Exclude<SiteStyleSurfaceIntent, 'hero-image'>;
4
5
  export type ContrastPolicy = 'body-aa' | 'large-text-aa' | 'decorative';
5
- export type ForegroundRole = 'heading' | 'text' | 'link' | 'supporting';
6
+ export type ForegroundRole = SurfaceForegroundRole;
6
7
  export type AccessibleSurfaceToken = string & {
7
8
  readonly __brand: 'AccessibleSurfaceToken';
8
9
  };
@@ -9,7 +9,7 @@ import { type KnownTypographyPresetId, type TypographyPresetId } from './typogra
9
9
  import { type DesignRuntimeRules } from './runtimeCompiler';
10
10
  export declare const SOFT_EARTH_SITE_STYLE_ID_VALUE: "site-style:soft-earth";
11
11
  export declare const SOFT_EARTH_SITE_STYLE_ID: SiteStyleId;
12
- export declare const curatedSiteStyleIdValues: readonly ["site-style:calm-studio", "site-style:clear-professional", "site-style:warm-editorial", "site-style:bright-community", "site-style:quiet-luxury", "site-style:practical-services", "site-style:quiet-practice", "site-style:personal-retreat-journal", "site-style:tactile-workshop", "site-style:modern-wellness", "site-style:clarity-zen-blue", "site-style:soft-earth", "site-style:bold-launch", "site-style:south-west-twerk-school", "site-style:kirtan-ornate", "site-style:original-joy"];
12
+ export declare const curatedSiteStyleIdValues: readonly ["site-style:calm-studio", "site-style:clear-professional", "site-style:warm-editorial", "site-style:bright-community", "site-style:quiet-luxury", "site-style:practical-services", "site-style:quiet-practice", "site-style:personal-retreat-journal", "site-style:tactile-workshop", "site-style:modern-wellness", "site-style:clarity-zen-blue", "site-style:soft-earth", "site-style:bold-launch", "site-style:south-west-twerk-school", "site-style:kirtan-ornate", "site-style:original-joy", "site-style:fulcrum"];
13
13
  export type CuratedSiteStyleIdValue = (typeof curatedSiteStyleIdValues)[number];
14
14
  type CuratedSiteStyleHeroOverrides = Readonly<{
15
15
  typography?: NonNullable<NonNullable<Theme['hero']>['typography']>;
@@ -18,6 +18,14 @@ type CuratedSiteStyleBodyTextOverrides = Readonly<{
18
18
  intro?: NonNullable<NonNullable<Theme['bodyText']>['intro']>;
19
19
  }>;
20
20
  type CuratedSiteStyleInputOverrides = NonNullable<Theme['inputs']>;
21
+ /**
22
+ * Partial theme `shadow` override a site style may carry. Merged onto the
23
+ * compiled theme's `shadow` (which the token-recipe compiler always emits), so
24
+ * a style can pin just `colorToken` to tint the shadow ramp while inheriting
25
+ * the recipe-derived elevation/softness/position. Omitting it leaves the
26
+ * neutral-black ramp unchanged (byte-identical to before).
27
+ */
28
+ type CuratedSiteStyleShadowOverrides = Partial<NonNullable<Theme['shadow']>>;
21
29
  type CuratedSiteStyleAccordionOverrides = NonNullable<Theme['accordions']>;
22
30
  type CuratedSiteStyleCardOverrides = NonNullable<Theme['cards']>;
23
31
  type CuratedSiteStyleTestimonialQuoteOverrides = NonNullable<Theme['testimonialQuote']>;
@@ -37,6 +45,12 @@ export type CuratedSiteStyleThemeOverrides = Readonly<{
37
45
  */
38
46
  inputs?: CuratedSiteStyleInputOverrides;
39
47
  accordions?: CuratedSiteStyleAccordionOverrides;
48
+ /**
49
+ * Partial theme `shadow` override, merged onto the compiled theme's shadow.
50
+ * Typically used to set `colorToken` for an ink-tinted shadow ramp while the
51
+ * elevation/softness stay recipe-derived. Optional; unset → neutral ramp.
52
+ */
53
+ shadow?: CuratedSiteStyleShadowOverrides;
40
54
  /**
41
55
  * Card variants (default + optional alternative/statement) the site style
42
56
  * owns. Card-using blocks resolve a variant by role; see generateCardCss,
@@ -685,6 +699,41 @@ export declare const curatedSiteStyles: readonly [Readonly<{
685
699
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
686
700
  typographyPresetChoices: NonEmptyReadonlyArray<TypographyPresetChoice>;
687
701
  defaultTypographyPresetId: KnownTypographyPresetId;
702
+ }>, Readonly<{
703
+ id: SiteStyleId;
704
+ name: string;
705
+ description: string;
706
+ generationBrief: string;
707
+ selectionKeywordRules: readonly CuratedSiteStyleSelectionKeywordRule[];
708
+ siteCreatorSelection: CuratedSiteStyleCreatorSelection;
709
+ template: DesignSystemTemplate;
710
+ themeOverrides?: CuratedSiteStyleThemeOverrides;
711
+ /**
712
+ * Optional Theme V2 runtime rules owned by the style. These translate
713
+ * semantic section surfaces into block runtime fields such as background
714
+ * and foreground tokens.
715
+ */
716
+ designRuntimeRules?: DesignRuntimeRules;
717
+ defaultBlockVariants?: CuratedSiteStyleDefaultBlockVariants;
718
+ /**
719
+ * Site-wide heading decoration signature (family + colour). Applied to
720
+ * eligible block headings as a single consistent mark; alignment is inherited
721
+ * from the heading. The factory defaults this to the short centre rule.
722
+ */
723
+ headingDecoration: HeadingDecoration;
724
+ recommendedAppearancePresetIds: readonly AppearancePresetId[];
725
+ defaultHeaderSelection: HeaderLayoutStyleChoice;
726
+ recommendedHeaderLayoutChoices: NonEmptyReadonlyArray<HeaderLayoutChoice>;
727
+ recommendedHeaderStyleChoicesByLayout: RecommendedHeaderStylesByLayout;
728
+ discouragedHeaderSelections?: readonly HeaderLayoutStyleChoice[];
729
+ recommendedHeaderLookIds: readonly HeaderLookId[];
730
+ recommendedFooterLookIds: readonly FooterLookId[];
731
+ /** Authored picker choices. First item is the default/fallback. */
732
+ buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
733
+ /** Authored picker choices. First item is the default/fallback. */
734
+ paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
735
+ typographyPresetChoices: NonEmptyReadonlyArray<TypographyPresetChoice>;
736
+ defaultTypographyPresetId: KnownTypographyPresetId;
688
737
  }>];
689
738
  export declare const curatedSiteStylesById: Map<SiteStyleId, Readonly<{
690
739
  id: SiteStyleId;
@@ -132,9 +132,9 @@ export declare const blockDesignPlanSchema: z.ZodObject<{
132
132
  "media-panel": "media-panel";
133
133
  }>;
134
134
  bleed: z.ZodEnum<{
135
+ end: "end";
135
136
  both: "both";
136
137
  start: "start";
137
- end: "end";
138
138
  }>;
139
139
  }, z.core.$strict>], "kind">;
140
140
  itemSurface: z.ZodEnum<{
@@ -350,9 +350,9 @@ export declare const persistedPageDesignStateV1Schema: z.ZodObject<{
350
350
  "media-panel": "media-panel";
351
351
  }>;
352
352
  bleed: z.ZodEnum<{
353
+ end: "end";
353
354
  both: "both";
354
355
  start: "start";
355
- end: "end";
356
356
  }>;
357
357
  }, z.core.$strict>], "kind">;
358
358
  itemSurface: z.ZodEnum<{
@@ -34,7 +34,8 @@ export declare const generatedSiteStyleIdSchema: z.ZodPipe<z.ZodEnum<{
34
34
  "site-style:south-west-twerk-school": "site-style:south-west-twerk-school";
35
35
  "site-style:kirtan-ornate": "site-style:kirtan-ornate";
36
36
  "site-style:original-joy": "site-style:original-joy";
37
- }>, z.ZodTransform<SiteStyleId, "site-style:soft-earth" | "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:quiet-practice" | "site-style:personal-retreat-journal" | "site-style:tactile-workshop" | "site-style:modern-wellness" | "site-style:clarity-zen-blue" | "site-style:bold-launch" | "site-style:south-west-twerk-school" | "site-style:kirtan-ornate" | "site-style:original-joy">>;
37
+ "site-style:fulcrum": "site-style:fulcrum";
38
+ }>, z.ZodTransform<SiteStyleId, "site-style:soft-earth" | "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:quiet-practice" | "site-style:personal-retreat-journal" | "site-style:tactile-workshop" | "site-style:modern-wellness" | "site-style:clarity-zen-blue" | "site-style:bold-launch" | "site-style:south-west-twerk-school" | "site-style:kirtan-ornate" | "site-style:original-joy" | "site-style:fulcrum">>;
38
39
  export declare const generatedBlockDesignIntentSchema: z.ZodObject<{
39
40
  sectionSurface: z.ZodDiscriminatedUnion<[z.ZodObject<{
40
41
  source: z.ZodLiteral<"generated">;
@@ -183,7 +184,8 @@ export declare const generatedPageDesignIntentSchema: z.ZodObject<{
183
184
  "site-style:south-west-twerk-school": "site-style:south-west-twerk-school";
184
185
  "site-style:kirtan-ornate": "site-style:kirtan-ornate";
185
186
  "site-style:original-joy": "site-style:original-joy";
186
- }>, z.ZodTransform<SiteStyleId, "site-style:soft-earth" | "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:quiet-practice" | "site-style:personal-retreat-journal" | "site-style:tactile-workshop" | "site-style:modern-wellness" | "site-style:clarity-zen-blue" | "site-style:bold-launch" | "site-style:south-west-twerk-school" | "site-style:kirtan-ornate" | "site-style:original-joy">>;
187
+ "site-style:fulcrum": "site-style:fulcrum";
188
+ }>, z.ZodTransform<SiteStyleId, "site-style:soft-earth" | "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:quiet-practice" | "site-style:personal-retreat-journal" | "site-style:tactile-workshop" | "site-style:modern-wellness" | "site-style:clarity-zen-blue" | "site-style:bold-launch" | "site-style:south-west-twerk-school" | "site-style:kirtan-ornate" | "site-style:original-joy" | "site-style:fulcrum">>;
187
189
  blocks: z.ZodArray<z.ZodObject<{
188
190
  blockId: z.ZodString;
189
191
  blockKind: z.ZodString;
@@ -2,7 +2,7 @@ import type { Theme, ThemeHeader } from '../schema';
2
2
  import { type SiteChromeLookDiagnostics } from './customizableSurfaces';
3
3
  import { type BrandDisplayMode, type HeaderBrandPresentationPlan, type HeaderBrandPresentationSelection, type LogoAccommodationOption, type LogoAccommodationRejectionReason, type LogoFacts, type LogoSizePolicy } from './logoBranding';
4
4
  import { type Brand } from './types';
5
- export declare const headerLookIdValues: readonly ["clean-base", "brand-solid", "serif-line", "centered-calm", "practical-utility", "minimal-transparent", "transparent-overlay", "floating-glass"];
5
+ export declare const headerLookIdValues: readonly ["clean-base", "classic-centered-nav", "brand-solid", "serif-line", "centered-calm", "practical-utility", "minimal-transparent", "transparent-overlay", "floating-glass"];
6
6
  export type HeaderLookIdValue = (typeof headerLookIdValues)[number];
7
7
  export type HeaderLookId = Brand<HeaderLookIdValue, 'HeaderLookId'>;
8
8
  export declare function asHeaderLookId(value: HeaderLookIdValue): HeaderLookId;
@@ -458,6 +458,12 @@ export declare const legacyHeaderLookAliases: readonly [{
458
458
  readonly layoutId: HeaderLayoutId;
459
459
  readonly styleId: HeaderStyleId;
460
460
  };
461
+ }, {
462
+ readonly lookId: HeaderLookId;
463
+ readonly selection: {
464
+ readonly layoutId: HeaderLayoutId;
465
+ readonly styleId: HeaderStyleId;
466
+ };
461
467
  }];
462
468
  export declare function getHeaderLayout(id: HeaderLayoutId): HeaderLayoutDefinition | null;
463
469
  export declare function getHeaderStyle(id: HeaderStyleId): HeaderStyleDefinition | null;
@@ -472,6 +478,7 @@ export declare function resolveHeaderLayoutStyleSelection(selection: HeaderLayou
472
478
  export declare function compileHeaderLayoutStyleSelection(theme: Theme, selection: HeaderLayoutStyleSelection): Theme['header'];
473
479
  declare function solidBrandHeader(theme: Theme): Theme['header'];
474
480
  declare function cleanBaseHeader(theme: Theme): Theme['header'];
481
+ declare function classicCenteredNavHeader(theme: Theme): Theme['header'];
475
482
  declare function serifLineHeader(theme: Theme): Theme['header'];
476
483
  declare function centeredCalmHeader(theme: Theme): Theme['header'];
477
484
  declare function practicalUtilityHeader(theme: Theme): Theme['header'];
@@ -525,6 +532,54 @@ export declare const headerLookCatalog: readonly [{
525
532
  readonly providesBacking: true;
526
533
  }];
527
534
  readonly compile: typeof cleanBaseHeader;
535
+ }, {
536
+ readonly id: HeaderLookId;
537
+ readonly label: "Centered nav";
538
+ readonly visualTreatment: "solid-neutral";
539
+ readonly layoutBehavior: "sticky";
540
+ readonly configuration: {
541
+ readonly structure: "inline-classic";
542
+ readonly treatment: "solid-neutral";
543
+ readonly behavior: "sticky";
544
+ };
545
+ readonly openingRequirement: "none";
546
+ readonly maxRecommendedNavItems: 6;
547
+ readonly logoAccommodations: readonly [{
548
+ readonly pattern: "title-only";
549
+ readonly supportedShapes: readonly ["none", "horizontal", "square", "portrait", "tall"];
550
+ readonly supportedTextPresence: readonly ["contains-text", "no-text", "unknown"];
551
+ readonly supportedDisplayModes: readonly ["title-only"];
552
+ readonly size: "compact";
553
+ }, {
554
+ readonly pattern: "inline-wordmark";
555
+ readonly supportedShapes: readonly ["horizontal"];
556
+ readonly supportedTextPresence: readonly ["contains-text", "no-text", "unknown"];
557
+ readonly supportedDisplayModes: readonly ["logo-only"];
558
+ readonly size: "standard";
559
+ readonly maxDensity: "detailed";
560
+ }, {
561
+ readonly pattern: "inline-mark-with-title";
562
+ readonly supportedShapes: readonly ["horizontal", "square", "portrait", "tall"];
563
+ readonly supportedTextPresence: readonly ["no-text"];
564
+ readonly supportedDisplayModes: readonly ["logo-plus-title"];
565
+ readonly size: "compact";
566
+ readonly maxDensity: "simple";
567
+ }, {
568
+ readonly pattern: "popout-badge";
569
+ readonly supportedShapes: readonly ["square", "portrait", "tall"];
570
+ readonly supportedTextPresence: readonly ["contains-text", "unknown"];
571
+ readonly supportedDisplayModes: readonly ["logo-only"];
572
+ readonly size: "display";
573
+ readonly providesBacking: true;
574
+ }, {
575
+ readonly pattern: "logo-plate";
576
+ readonly supportedShapes: readonly ["square", "portrait", "tall"];
577
+ readonly supportedTextPresence: readonly ["contains-text", "unknown"];
578
+ readonly supportedDisplayModes: readonly ["logo-only"];
579
+ readonly size: "display";
580
+ readonly providesBacking: true;
581
+ }];
582
+ readonly compile: typeof classicCenteredNavHeader;
528
583
  }, {
529
584
  readonly id: HeaderLookId;
530
585
  readonly label: "Brand solid";
@@ -2,7 +2,7 @@ import type { Theme } from '../schema';
2
2
  import type { Brand, NonEmptyReadonlyArray } from './types';
3
3
  import type { PersistedIdParseResult } from './persistedIdParseResult';
4
4
  export type TypographyPresetId = Brand<string, 'TypographyPresetId'>;
5
- export declare const typographyPresetIdValues: readonly ["typography-preset:modern-sans", "typography-preset:warm-rounded", "typography-preset:editorial-serif", "typography-preset:classic-serif", "typography-preset:luxe-contrast", "typography-preset:kirtan-ornate", "typography-preset:bold-display", "typography-preset:original-joy"];
5
+ export declare const typographyPresetIdValues: readonly ["typography-preset:modern-sans", "typography-preset:warm-rounded", "typography-preset:editorial-serif", "typography-preset:classic-serif", "typography-preset:luxe-contrast", "typography-preset:kirtan-ornate", "typography-preset:bold-display", "typography-preset:original-joy", "typography-preset:fulcrum"];
6
6
  export type KnownTypographyPresetIdValue = typeof typographyPresetIdValues[number];
7
7
  export type KnownTypographyPresetId = TypographyPresetId & KnownTypographyPresetIdValue;
8
8
  export type TypographyFontSlot = 'body' | 'heading';
@@ -204,6 +204,21 @@ export declare const typographyPresets: readonly [Readonly<{
204
204
  slotPolicies: Readonly<Record<TypographyFontSlot, TypographyFontSlotPolicy>>;
205
205
  typography: Theme["typography"];
206
206
  heroTypography?: NonNullable<NonNullable<Theme["hero"]>["typography"]>;
207
+ }>, Readonly<{
208
+ id: KnownTypographyPresetId;
209
+ name: string;
210
+ description: string;
211
+ defaultFonts: Readonly<{
212
+ body: string;
213
+ heading: string;
214
+ }>;
215
+ recommendedFonts: Readonly<{
216
+ body: NonEmptyReadonlyArray<string>;
217
+ heading: NonEmptyReadonlyArray<string>;
218
+ }>;
219
+ slotPolicies: Readonly<Record<TypographyFontSlot, TypographyFontSlotPolicy>>;
220
+ typography: Theme["typography"];
221
+ heroTypography?: NonNullable<NonNullable<Theme["hero"]>["typography"]>;
207
222
  }>];
208
223
  export declare function findTypographyPreset(id: TypographyPresetId): TypographyPreset | undefined;
209
224
  export declare function parsePersistedTypographyPresetId(value: string | null | undefined): PersistedIdParseResult<KnownTypographyPresetId>;
@@ -1,3 +1,2 @@
1
1
  export { generateStatusCss } from './generateStatusCss';
2
2
  export type { GenerateStatusCssParams } from './generateStatusCss';
3
- export { DEFAULT_STATUS_MUTED_COLOR, STATUS_MUTED_COLOR_VAR, SURFACE_MUTED_STATUS_COLOR, contextualMutedStatusColorDeclaration, statusMutedColorDeclaration, statusMutedColorValue, } from './contextualColors';
@@ -0,0 +1,19 @@
1
+ import { type SurfaceForegroundInput, type SurfaceForegroundRole, type SurfaceForegrounds } from './foregroundRoles';
2
+ export declare const SURFACE_FOREGROUND_CSS_VARS: {
3
+ readonly text: "--rb-surface-text-color";
4
+ readonly heading: "--rb-surface-heading-color";
5
+ readonly link: "--rb-surface-link-color";
6
+ readonly supporting: "--rb-surface-supporting-color";
7
+ };
8
+ export type SurfaceForegroundCssVariable = (typeof SURFACE_FOREGROUND_CSS_VARS)[SurfaceForegroundRole];
9
+ export type SurfaceForegroundStyle = Readonly<{
10
+ color: string;
11
+ } & Record<SurfaceForegroundCssVariable, string>>;
12
+ export declare const DEFAULT_SURFACE_TEXT_COLOR = "rgb(var(--tb-text, 17 24 39))";
13
+ export declare const DEFAULT_SURFACE_LINK_COLOR = "rgb(var(--tb-primary, var(--tb-text, 17 24 39)))";
14
+ export declare const DEFAULT_SURFACE_SUPPORTING_COLOR = "rgb(var(--tb-mutedText, 100 116 139))";
15
+ export declare function completeSurfaceForegrounds(input: SurfaceForegroundInput): SurfaceForegrounds;
16
+ export declare function surfaceForegroundValue(role: SurfaceForegroundRole, outsideProviderFallback?: string): string;
17
+ export declare function surfaceForegroundValueWithOpacity(role: SurfaceForegroundRole, opacityPercent: number): string;
18
+ export declare function surfaceForegroundStyle(input: SurfaceForegroundInput): SurfaceForegroundStyle;
19
+ export declare function surfaceForegroundDeclarations(input: SurfaceForegroundInput): readonly string[];
@@ -0,0 +1,9 @@
1
+ export declare const SURFACE_FOREGROUND_ROLES: readonly ["text", "heading", "link", "supporting"];
2
+ export type SurfaceForegroundRole = (typeof SURFACE_FOREGROUND_ROLES)[number];
3
+ export type SurfaceForegrounds = Readonly<Record<SurfaceForegroundRole, string>>;
4
+ export type SurfaceForegroundInput = Readonly<{
5
+ text: string;
6
+ heading?: string;
7
+ link?: string;
8
+ supporting?: string;
9
+ }>;
@@ -0,0 +1,2 @@
1
+ export * from './foregroundContract';
2
+ export * from './foregroundRoles';