@rokt/dcui-orchestrator 0.2.1-rc.82 → 0.2.1-rc.84

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 (517) hide show
  1. package/dist/extensions/address-form/src/actions/forms.d.ts +11 -0
  2. package/dist/extensions/address-form/src/actions/index.d.ts +1 -0
  3. package/dist/extensions/address-form/src/components/address-form.d.ts +96 -0
  4. package/dist/extensions/address-form/src/components/edit-address-form-view.d.ts +23 -0
  5. package/dist/extensions/address-form/src/components/form-button.d.ts +15 -0
  6. package/dist/extensions/address-form/src/components/input-field.d.ts +34 -0
  7. package/dist/extensions/address-form/src/index.d.ts +3 -0
  8. package/dist/extensions/address-form/src/models/form-state.d.ts +1 -0
  9. package/dist/extensions/address-form/src/models/index.d.ts +1 -0
  10. package/dist/extensions/address-form/src/reducers/forms.d.ts +4 -0
  11. package/dist/extensions/address-form/src/reducers/index.d.ts +1 -0
  12. package/dist/extensions/address-form/src/sagas/cart-service/index.d.ts +1 -0
  13. package/dist/{libraries/orchestrator → extensions/address-form}/src/sagas/cart-service/sagas.d.ts +5 -12
  14. package/dist/extensions/address-form/src/sagas/index.d.ts +2 -0
  15. package/dist/extensions/address-form/src/types.d.ts +63 -0
  16. package/dist/extensions/address-form/src/utils.d.ts +15 -0
  17. package/dist/extensions/shimmer-background/src/index.d.ts +10 -0
  18. package/dist/extensions/shimmer-background/src/shimmer-background.d.ts +11 -0
  19. package/dist/index.cjs +97 -36
  20. package/dist/index.js +100 -39
  21. package/dist/libraries/dcui-components/src/components/action-button/action-button.d.ts +24 -0
  22. package/dist/libraries/dcui-components/src/components/action-button/factory.d.ts +2 -0
  23. package/dist/libraries/dcui-components/src/components/action-button/index.d.ts +2 -0
  24. package/dist/libraries/dcui-components/src/components/catalog-carousel-collection/hooks.d.ts +7 -0
  25. package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/factory.d.ts +1 -1
  26. package/dist/libraries/dcui-components/src/components/data-mapper/form-state-projection.d.ts +31 -0
  27. package/dist/libraries/dcui-components/src/components/data-mapper/index.d.ts +1 -0
  28. package/dist/libraries/dcui-components/src/components/extension/context.d.ts +2 -1
  29. package/dist/libraries/dcui-components/src/components/extension/models.d.ts +2 -1
  30. package/dist/libraries/dcui-components/src/components/form/factory.d.ts +2 -0
  31. package/dist/libraries/dcui-components/src/components/form/form.d.ts +24 -0
  32. package/dist/libraries/dcui-components/src/components/form/index.d.ts +2 -0
  33. package/dist/libraries/dcui-components/src/components/index.d.ts +5 -0
  34. package/dist/libraries/dcui-components/src/components/layout-timer/index.d.ts +5 -0
  35. package/dist/libraries/dcui-components/src/components/layout-timer/layout-timer.d.ts +7 -0
  36. package/dist/libraries/dcui-components/src/components/layout-timer/timer-countdown-provider.d.ts +8 -0
  37. package/dist/libraries/dcui-components/src/components/layout-timer/use-layout-timer.d.ts +11 -0
  38. package/dist/libraries/dcui-components/src/components/layout-timer/use-timer-action-dispatch.d.ts +9 -0
  39. package/dist/libraries/dcui-components/src/components/rich-text/rich-text.d.ts +2 -0
  40. package/dist/libraries/dcui-components/src/components/scrollable-column/scrollable-column.d.ts +1 -1
  41. package/dist/libraries/dcui-components/src/components/scrollable-row/scrollable-row.d.ts +1 -1
  42. package/dist/libraries/dcui-components/src/components/style-mapper/get-css-writer.d.ts +1 -0
  43. package/dist/libraries/dcui-components/src/components/style-mapper/transformers/index.d.ts +1 -0
  44. package/dist/libraries/dcui-components/src/components/style-mapper/transformers/scroll-mask-transformer.d.ts +8 -0
  45. package/dist/libraries/dcui-components/src/components/style-mapper/types.d.ts +2 -2
  46. package/dist/libraries/dcui-components/src/components/text-input/factory.d.ts +2 -0
  47. package/dist/libraries/dcui-components/src/components/text-input/index.d.ts +2 -0
  48. package/dist/libraries/dcui-components/src/components/text-input/text-input.d.ts +23 -0
  49. package/dist/libraries/dcui-components/src/components/when/form-state.d.ts +9 -0
  50. package/dist/libraries/dcui-components/src/contexts/form-context.d.ts +15 -0
  51. package/dist/libraries/dcui-components/src/contexts/index.d.ts +2 -0
  52. package/dist/libraries/dcui-components/src/contexts/minimizable-context.d.ts +2 -0
  53. package/dist/libraries/dcui-components/src/contexts/offer-data-context.d.ts +1 -0
  54. package/dist/libraries/dcui-components/src/failure-codes.d.ts +1 -0
  55. package/dist/libraries/dcui-components/src/utils/get-scroll-mask-config.d.ts +20 -0
  56. package/dist/libraries/dcui-components/src/utils/index.d.ts +2 -0
  57. package/dist/libraries/dcui-components/src/utils/use-scroll-mask-visibility.d.ts +22 -0
  58. package/dist/libraries/dcui-schema/src/models/nodes/close-button.d.ts +3 -1
  59. package/dist/libraries/domain/src/behaviors/cart-item-event.d.ts +7 -12
  60. package/dist/libraries/domain/src/behaviors/dismiss-overlay.d.ts +9 -0
  61. package/dist/libraries/domain/src/behaviors/domain-states.d.ts +2 -2
  62. package/dist/libraries/domain/src/behaviors/form-state.d.ts +66 -0
  63. package/dist/libraries/domain/src/behaviors/global-actions.d.ts +15 -1
  64. package/dist/libraries/domain/src/behaviors/index.d.ts +5 -0
  65. package/dist/libraries/domain/src/behaviors/layout-events.d.ts +17 -0
  66. package/dist/libraries/domain/src/behaviors/offer-engagement.d.ts +2 -1
  67. package/dist/libraries/domain/src/behaviors/report-error.d.ts +26 -0
  68. package/dist/libraries/domain/src/behaviors/send-partner.d.ts +36 -3
  69. package/dist/libraries/domain/src/behaviors/trigger-action.d.ts +19 -0
  70. package/dist/libraries/domain/src/models/domain-state-keys.d.ts +5 -0
  71. package/dist/libraries/domain/src/models/form-state.d.ts +85 -0
  72. package/dist/libraries/domain/src/models/global-state.d.ts +4 -1
  73. package/dist/libraries/domain/src/models/index.d.ts +2 -0
  74. package/dist/libraries/domain/src/models/layout/index.d.ts +1 -0
  75. package/dist/libraries/domain/src/models/layout/layout-child-config.d.ts +2 -0
  76. package/dist/libraries/domain/src/models/layout/layout-config.d.ts +2 -2
  77. package/dist/libraries/domain/src/models/layout/layout-offer.d.ts +2 -0
  78. package/dist/libraries/domain/src/models/layout/layout-signal-type.d.ts +3 -1
  79. package/dist/libraries/domain/src/models/layout/layout-transaction-data.d.ts +31 -0
  80. package/dist/libraries/domain/src/models/partner-event.d.ts +2 -2
  81. package/dist/libraries/domain/src/models/plugin/index.d.ts +2 -0
  82. package/dist/libraries/domain/src/models/plugin/plugin-catalog-item-group.d.ts +17 -0
  83. package/dist/libraries/domain/src/models/plugin/plugin-child-layout-model.d.ts +2 -0
  84. package/dist/libraries/domain/src/models/plugin/plugin-model.d.ts +3 -3
  85. package/dist/libraries/domain/src/models/plugin/plugin-offer.d.ts +4 -0
  86. package/dist/libraries/domain/src/models/plugin/plugin-signal-type.d.ts +4 -1
  87. package/dist/libraries/domain/src/models/plugin/plugin-transaction-data.d.ts +31 -0
  88. package/dist/libraries/domain/src/models/purchase.d.ts +54 -0
  89. package/dist/libraries/domain/src/models/signals.d.ts +18 -4
  90. package/dist/libraries/layout-renderer-utils/src/actions/domain-states.d.ts +14 -0
  91. package/dist/libraries/layout-renderer-utils/src/actions/form-states.d.ts +37 -0
  92. package/dist/libraries/layout-renderer-utils/src/actions/index.d.ts +15 -3
  93. package/dist/libraries/layout-renderer-utils/src/actions/overlay.d.ts +15 -8
  94. package/dist/libraries/layout-renderer-utils/src/actions/settings.d.ts +10 -3
  95. package/dist/libraries/layout-renderer-utils/src/components/index.d.ts +4 -1
  96. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/connector.d.ts +2 -0
  97. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/drag-handle.d.ts +7 -0
  98. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/extract-border-styles.d.ts +25 -0
  99. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/factory.d.ts +13 -0
  100. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/hooks.d.ts +23 -0
  101. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/index.d.ts +2 -0
  102. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet-wrapper.d.ts +12 -0
  103. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet.d.ts +27 -0
  104. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/sheet-gesture.d.ts +18 -0
  105. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/types.d.ts +63 -0
  106. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/factory.d.ts +2 -0
  107. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/index.d.ts +2 -0
  108. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/minimize-button.d.ts +12 -0
  109. package/dist/libraries/layout-renderer-utils/src/components/overlay/overlay.d.ts +1 -0
  110. package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/attached-overlay-wrapper.d.ts +19 -0
  111. package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/index.d.ts +1 -0
  112. package/dist/libraries/layout-renderer-utils/src/components/utils.d.ts +1 -0
  113. package/dist/libraries/layout-renderer-utils/src/constant.d.ts +1 -1
  114. package/dist/libraries/layout-renderer-utils/src/hooks/useEscToClose.d.ts +1 -0
  115. package/dist/libraries/layout-renderer-utils/src/models/state/fired-events.d.ts +17 -0
  116. package/dist/libraries/layout-renderer-utils/src/models/state/form-states.d.ts +11 -0
  117. package/dist/libraries/layout-renderer-utils/src/models/state/index.d.ts +9 -2
  118. package/dist/libraries/layout-renderer-utils/src/models/state/layout.d.ts +2 -1
  119. package/dist/libraries/layout-renderer-utils/src/models/state/settings.d.ts +6 -0
  120. package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/index.d.ts +1 -0
  121. package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/reducer.d.ts +5 -0
  122. package/dist/libraries/layout-renderer-utils/src/reducers/form-states/index.d.ts +1 -0
  123. package/dist/libraries/layout-renderer-utils/src/reducers/form-states/reducer.d.ts +4 -0
  124. package/dist/libraries/layout-renderer-utils/src/reducers/index.d.ts +6 -0
  125. package/dist/libraries/layout-renderer-utils/src/reducers/settings/reducer.d.ts +3 -3
  126. package/dist/libraries/layout-renderer-utils/src/sagas/error/error-codes.d.ts +1 -0
  127. package/dist/libraries/layout-renderer-utils/src/sagas/form-states/index.d.ts +1 -0
  128. package/dist/libraries/layout-renderer-utils/src/sagas/form-states/sagas.d.ts +16 -0
  129. package/dist/libraries/layout-renderer-utils/src/sagas/index.d.ts +2 -0
  130. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/attached-bottomsheet.d.ts +18 -0
  131. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/display.d.ts +4 -13
  132. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/sagas.d.ts +1 -1
  133. package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/index.d.ts +1 -0
  134. package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/sagas.d.ts +12 -0
  135. package/dist/libraries/layout-renderer-utils/src/selectors/fired-events/selectors.d.ts +7 -0
  136. package/dist/libraries/layout-renderer-utils/src/selectors/form-state/index.d.ts +1 -0
  137. package/dist/libraries/layout-renderer-utils/src/selectors/form-state/selectors.d.ts +8 -0
  138. package/dist/libraries/layout-renderer-utils/src/selectors/index.d.ts +2 -0
  139. package/dist/libraries/layout-renderer-utils/src/utils/signals.d.ts +2 -2
  140. package/dist/libraries/module-connector/src/main.d.ts +1 -1
  141. package/dist/libraries/module-connector/src/models/gateway.d.ts +4 -3
  142. package/dist/libraries/module-connector/src/models/module-connector-builder.d.ts +4 -1
  143. package/dist/libraries/module-utils/src/actions/child-layouts.d.ts +11 -0
  144. package/dist/libraries/module-utils/src/actions/dynamic-data.d.ts +7 -0
  145. package/dist/libraries/module-utils/src/actions/index.d.ts +2 -0
  146. package/dist/libraries/module-utils/src/index.d.ts +5 -0
  147. package/dist/libraries/module-utils/src/models/index.d.ts +1 -0
  148. package/dist/libraries/module-utils/src/models/state/child-layouts.d.ts +4 -0
  149. package/dist/libraries/module-utils/src/models/state/dynamic-data.d.ts +3 -0
  150. package/dist/libraries/module-utils/src/models/state/index.d.ts +3 -0
  151. package/dist/libraries/module-utils/src/models/state/static-data.d.ts +6 -0
  152. package/dist/libraries/module-utils/src/reducers/child-layouts/index.d.ts +1 -0
  153. package/dist/libraries/module-utils/src/reducers/child-layouts/reducer.d.ts +5 -0
  154. package/dist/libraries/module-utils/src/reducers/dynamic-data/index.d.ts +1 -0
  155. package/dist/libraries/module-utils/src/reducers/dynamic-data/reducer.d.ts +4 -0
  156. package/dist/libraries/module-utils/src/reducers/index.d.ts +3 -0
  157. package/dist/libraries/module-utils/src/reducers/static-data/index.d.ts +1 -0
  158. package/dist/libraries/module-utils/src/reducers/static-data/reducer.d.ts +4 -0
  159. package/dist/libraries/module-utils/src/sagas/child-layouts/index.d.ts +1 -0
  160. package/dist/libraries/module-utils/src/sagas/child-layouts/sagas.d.ts +5 -0
  161. package/dist/libraries/module-utils/src/sagas/error-codes.d.ts +1 -0
  162. package/dist/libraries/module-utils/src/sagas/index.d.ts +1 -0
  163. package/dist/libraries/module-utils/src/selectors/child-layouts/index.d.ts +1 -0
  164. package/dist/libraries/module-utils/src/selectors/child-layouts/selectors.d.ts +4 -0
  165. package/dist/libraries/module-utils/src/selectors/dynamic-data/index.d.ts +1 -0
  166. package/dist/libraries/module-utils/src/selectors/dynamic-data/selectors.d.ts +4 -0
  167. package/dist/libraries/module-utils/src/selectors/index.d.ts +3 -0
  168. package/dist/libraries/module-utils/src/selectors/static-data/index.d.ts +1 -0
  169. package/dist/libraries/module-utils/src/selectors/static-data/selectors.d.ts +7 -0
  170. package/dist/libraries/orchestrator/src/actions/domain-states.d.ts +2 -2
  171. package/dist/libraries/orchestrator/src/actions/index.d.ts +14 -4
  172. package/dist/libraries/orchestrator/src/actions/trigger-action.d.ts +2 -0
  173. package/dist/libraries/orchestrator/src/global-store-proxy.d.ts +2 -0
  174. package/dist/libraries/orchestrator/src/models/index.d.ts +1 -1
  175. package/dist/libraries/orchestrator/src/models/state/domain-states.d.ts +2 -2
  176. package/dist/libraries/orchestrator/src/models/state/index.d.ts +0 -2
  177. package/dist/libraries/orchestrator/src/reducers/domain-states/reducer.d.ts +2 -1
  178. package/dist/libraries/orchestrator/src/reducers/index.d.ts +3 -1
  179. package/dist/libraries/orchestrator/src/sagas/plugin/config-transformer.d.ts +2 -2
  180. package/dist/libraries/orchestrator/src/sagas/plugin/migrate-schema.d.ts +2 -2
  181. package/dist/libraries/orchestrator/src/sagas/plugin/migrations/migration-mapper.d.ts +3 -3
  182. package/dist/libraries/orchestrator/src/sagas/plugin/migrations/v1.0.d.ts +2 -2
  183. package/dist/libraries/orchestrator/src/sagas/plugin/sagas.d.ts +2 -2
  184. package/dist/libraries/orchestrator/src/sagas/trigger-action/index.d.ts +1 -0
  185. package/dist/libraries/orchestrator/src/sagas/trigger-action/sagas.d.ts +3 -0
  186. package/dist/libraries/orchestrator/src/selectors/domain-state/selectors.d.ts +2 -2
  187. package/dist/libraries/orchestrator/src/selectors/index.d.ts +1 -1
  188. package/dist/libraries/plugin-utils/src/translate-config.d.ts +5 -1
  189. package/dist/libraries/saga-utils/src/sagas/handle-variant-action.d.ts +12 -0
  190. package/dist/libraries/saga-utils/src/sagas/index.d.ts +1 -0
  191. package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry-data.d.ts +10 -0
  192. package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry.d.ts +9 -0
  193. package/dist/modules/add-to-cart/src/components/mapped-icons/mapped-icon.d.ts +15 -0
  194. package/dist/modules/add-to-cart/src/reducers/index.d.ts +1 -1
  195. package/dist/modules/add-to-cart/src/sagas/cart-service-response/index.d.ts +1 -0
  196. package/dist/modules/add-to-cart/src/sagas/cart-service-response/sagas.d.ts +11 -0
  197. package/dist/modules/add-to-cart/src/sagas/index.d.ts +9 -0
  198. package/dist/modules/add-to-cart/src/selectors/catalogItems/selectors.d.ts +2 -0
  199. package/dist/modules/add-to-cart/src/selectors/index.d.ts +1 -1
  200. package/dist/modules/add-to-cart/src/selectors/offerDataState/index.d.ts +1 -0
  201. package/dist/modules/add-to-cart/src/selectors/{globalOfferDataState → offerDataState}/selectors.d.ts +1 -1
  202. package/dist/modules/instant-purchase/src/actions/device-pay.d.ts +60 -0
  203. package/dist/modules/instant-purchase/src/actions/index.d.ts +2 -0
  204. package/dist/modules/instant-purchase/src/actions/instant-purchase.d.ts +47 -2
  205. package/dist/modules/instant-purchase/src/actions/paypal.d.ts +35 -0
  206. package/dist/modules/instant-purchase/src/channels/channel.d.ts +5 -1
  207. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/apple-pay-button.d.ts +36 -0
  208. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/catalog-device-pay-button.d.ts +59 -0
  209. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/factory.d.ts +2 -0
  210. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/retryable-device-pay-error.d.ts +1 -0
  211. package/dist/modules/instant-purchase/src/components/catalog-discount-callout-tag/catalog-discount-callout-tag.d.ts +1 -1
  212. package/dist/modules/instant-purchase/src/components/catalog-dropdown/catalog-dropdown.d.ts +6 -0
  213. package/dist/modules/instant-purchase/src/components/catalog-dropdown/dropdown-options-context.d.ts +17 -0
  214. package/dist/modules/instant-purchase/src/components/catalog-dropdown/factory.d.ts +2 -0
  215. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-gallery-index.d.ts +1 -0
  216. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-image-gallery.d.ts +6 -0
  217. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/factory.d.ts +2 -0
  218. package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/catalog-selectors-stacked.d.ts +6 -0
  219. package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/factory.d.ts +2 -0
  220. package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/catalog-thumbnail-gallery.d.ts +6 -0
  221. package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/factory.d.ts +2 -0
  222. package/dist/modules/instant-purchase/src/components/checkout-state-button-trigger/checkout-state-button-trigger.d.ts +2 -0
  223. package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/catalog-image-gallery.d.ts +6 -0
  224. package/dist/modules/instant-purchase/src/components/snackbar/snackbar.d.ts +25 -0
  225. package/dist/modules/instant-purchase/src/constants/device-pay-error.d.ts +4 -0
  226. package/dist/modules/instant-purchase/src/constants/device-pay-providers.d.ts +26 -0
  227. package/dist/modules/instant-purchase/src/constants/index.d.ts +2 -0
  228. package/dist/modules/instant-purchase/src/models/state/device-pay-availability.d.ts +5 -0
  229. package/dist/modules/instant-purchase/src/models/state/index.d.ts +1 -0
  230. package/dist/modules/instant-purchase/src/models/state/instant-purchase.d.ts +68 -1
  231. package/dist/modules/instant-purchase/src/reducers/device-pay-availability/index.d.ts +1 -0
  232. package/dist/modules/instant-purchase/src/reducers/device-pay-availability/reducer.d.ts +4 -0
  233. package/dist/modules/instant-purchase/src/reducers/index.d.ts +15 -2
  234. package/dist/modules/instant-purchase/src/reducers/instant-purchase/index.d.ts +2 -0
  235. package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/index.d.ts +1 -0
  236. package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/reducer.d.ts +4 -0
  237. package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/index.d.ts +1 -0
  238. package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/reducer.d.ts +4 -0
  239. package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/index.d.ts +2 -0
  240. package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/reducer.d.ts +5 -0
  241. package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/index.d.ts +2 -0
  242. package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/reducer.d.ts +5 -0
  243. package/dist/modules/instant-purchase/src/sagas/checkout-lifecycle/sagas.d.ts +1 -1
  244. package/dist/modules/instant-purchase/src/sagas/device-pay/index.d.ts +1 -0
  245. package/dist/modules/instant-purchase/src/sagas/device-pay/sagas.d.ts +116 -0
  246. package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/index.d.ts +1 -0
  247. package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/sagas.d.ts +7 -0
  248. package/dist/modules/instant-purchase/src/sagas/error-codes.d.ts +14 -0
  249. package/dist/modules/instant-purchase/src/sagas/index.d.ts +14 -1
  250. package/dist/modules/instant-purchase/src/sagas/instant-purchase/sagas.d.ts +20 -81
  251. package/dist/modules/instant-purchase/src/sagas/instant-purchase-signals.d.ts +4 -0
  252. package/dist/modules/instant-purchase/src/sagas/layout-events.d.ts +9 -0
  253. package/dist/modules/instant-purchase/src/sagas/offer-engagement.d.ts +3 -0
  254. package/dist/modules/instant-purchase/src/sagas/paypal/index.d.ts +1 -0
  255. package/dist/modules/instant-purchase/src/sagas/paypal/sagas.d.ts +83 -0
  256. package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/index.d.ts +1 -0
  257. package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/sagas.d.ts +50 -0
  258. package/dist/modules/instant-purchase/src/sagas/variant-action-overrides.d.ts +11 -0
  259. package/dist/modules/instant-purchase/src/selectors/creative/index.d.ts +1 -0
  260. package/dist/modules/instant-purchase/src/selectors/creative/selectors.d.ts +5 -0
  261. package/dist/modules/instant-purchase/src/selectors/device-pay-availability/index.d.ts +1 -0
  262. package/dist/modules/instant-purchase/src/selectors/device-pay-availability/selectors.d.ts +13 -0
  263. package/dist/modules/instant-purchase/src/selectors/index.d.ts +4 -0
  264. package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/index.d.ts +1 -0
  265. package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/selectors.d.ts +3 -0
  266. package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/index.d.ts +1 -0
  267. package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/selectors.d.ts +3 -0
  268. package/dist/modules/instant-purchase/src/utils/create-tax-and-shipping-cache-key.d.ts +4 -0
  269. package/dist/modules/layouts-xp-sandbox/src/reducers/index.d.ts +1 -1
  270. package/dist/modules/layouts-xp-sandbox/src/sagas/index.d.ts +9 -0
  271. package/dist/modules/layouts-xp-sandbox/src/sagas/offer-engagement/sagas.d.ts +1 -1
  272. package/dist/modules/standard-marketing/src/components/escape-hatch/factory.d.ts +2 -0
  273. package/dist/modules/standard-marketing/src/components/escape-hatch-checkbox/escape-hatch-checkbox.d.ts +28 -0
  274. package/dist/modules/standard-marketing/src/reducers/index.d.ts +1 -1
  275. package/dist/modules/standard-marketing/src/sagas/index.d.ts +9 -0
  276. package/dist/modules/standard-marketing/src/sagas/offer-engagement/sagas.d.ts +3 -3
  277. package/node_modules/@rokt/dcui-layout-schema/dist/schema.d.ts +4694 -117
  278. package/node_modules/@rokt/dcui-layout-schema/dist/schema.js +1 -1
  279. package/node_modules/@rokt/dcui-layout-schema/dist/tsconfig.tsbuildinfo +1 -1
  280. package/node_modules/@rokt/dcui-layout-schema/package.json +1 -1
  281. package/node_modules/@rokt/dcui-layout-schema/v0.1/index.d.ts +953 -29
  282. package/node_modules/@rokt/dcui-layout-schema/v0.1/index.js +1 -1
  283. package/node_modules/@rokt/dcui-layout-schema/v0.10/index.d.ts +1087 -35
  284. package/node_modules/@rokt/dcui-layout-schema/v0.10/index.js +1 -1
  285. package/node_modules/@rokt/dcui-layout-schema/v0.11/index.d.ts +1143 -35
  286. package/node_modules/@rokt/dcui-layout-schema/v0.11/index.js +1 -1
  287. package/node_modules/@rokt/dcui-layout-schema/v0.12/index.d.ts +1147 -35
  288. package/node_modules/@rokt/dcui-layout-schema/v0.12/index.js +1 -1
  289. package/node_modules/@rokt/dcui-layout-schema/v0.13/index.d.ts +1218 -35
  290. package/node_modules/@rokt/dcui-layout-schema/v0.13/index.js +1 -1
  291. package/node_modules/@rokt/dcui-layout-schema/v0.14/index.d.ts +1258 -37
  292. package/node_modules/@rokt/dcui-layout-schema/v0.14/index.js +1 -1
  293. package/node_modules/@rokt/dcui-layout-schema/v0.15/index.d.ts +1272 -38
  294. package/node_modules/@rokt/dcui-layout-schema/v0.15/index.js +1 -1
  295. package/node_modules/@rokt/dcui-layout-schema/v0.16/index.d.ts +1334 -38
  296. package/node_modules/@rokt/dcui-layout-schema/v0.16/index.js +1 -1
  297. package/node_modules/@rokt/dcui-layout-schema/v0.17/index.d.ts +1353 -39
  298. package/node_modules/@rokt/dcui-layout-schema/v0.17/index.js +1 -1
  299. package/node_modules/@rokt/dcui-layout-schema/v0.18/index.d.ts +1406 -39
  300. package/node_modules/@rokt/dcui-layout-schema/v0.18/index.js +1 -1
  301. package/node_modules/@rokt/dcui-layout-schema/v0.19/index.d.ts +1407 -39
  302. package/node_modules/@rokt/dcui-layout-schema/v0.19/index.js +1 -1
  303. package/node_modules/@rokt/dcui-layout-schema/v0.2/index.d.ts +1013 -33
  304. package/node_modules/@rokt/dcui-layout-schema/v0.2/index.js +1 -1
  305. package/node_modules/@rokt/dcui-layout-schema/v0.20/index.d.ts +1439 -39
  306. package/node_modules/@rokt/dcui-layout-schema/v0.20/index.js +1 -1
  307. package/node_modules/@rokt/dcui-layout-schema/v0.21/index.d.ts +1482 -39
  308. package/node_modules/@rokt/dcui-layout-schema/v0.21/index.js +1 -1
  309. package/node_modules/@rokt/dcui-layout-schema/v0.22/index.d.ts +1512 -39
  310. package/node_modules/@rokt/dcui-layout-schema/v0.22/index.js +1 -1
  311. package/node_modules/@rokt/dcui-layout-schema/v0.23/index.d.ts +1522 -40
  312. package/node_modules/@rokt/dcui-layout-schema/v0.23/index.js +1 -1
  313. package/node_modules/@rokt/dcui-layout-schema/v0.3/index.d.ts +1013 -33
  314. package/node_modules/@rokt/dcui-layout-schema/v0.3/index.js +1 -1
  315. package/node_modules/@rokt/dcui-layout-schema/v0.4/index.d.ts +1041 -33
  316. package/node_modules/@rokt/dcui-layout-schema/v0.4/index.js +1 -1
  317. package/node_modules/@rokt/dcui-layout-schema/v0.5/index.d.ts +1065 -33
  318. package/node_modules/@rokt/dcui-layout-schema/v0.5/index.js +1 -1
  319. package/node_modules/@rokt/dcui-layout-schema/v0.6/index.d.ts +1065 -33
  320. package/node_modules/@rokt/dcui-layout-schema/v0.6/index.js +1 -1
  321. package/node_modules/@rokt/dcui-layout-schema/v0.7/index.d.ts +1066 -33
  322. package/node_modules/@rokt/dcui-layout-schema/v0.7/index.js +1 -1
  323. package/node_modules/@rokt/dcui-layout-schema/v0.8/index.d.ts +1069 -33
  324. package/node_modules/@rokt/dcui-layout-schema/v0.8/index.js +1 -1
  325. package/node_modules/@rokt/dcui-layout-schema/v0.9/index.d.ts +1070 -33
  326. package/node_modules/@rokt/dcui-layout-schema/v0.9/index.js +1 -1
  327. package/node_modules/@rokt/dcui-layout-schema/v1.0/index.d.ts +1827 -59
  328. package/node_modules/@rokt/dcui-layout-schema/v1.0/index.js +1 -1
  329. package/node_modules/@rokt/dcui-layout-schema/v1.1/index.d.ts +1851 -59
  330. package/node_modules/@rokt/dcui-layout-schema/v1.1/index.js +1 -1
  331. package/node_modules/@rokt/dcui-layout-schema/v1.10/index.d.ts +5322 -0
  332. package/node_modules/@rokt/dcui-layout-schema/v1.10/index.js +4 -0
  333. package/node_modules/@rokt/dcui-layout-schema/v1.11/index.d.ts +5486 -0
  334. package/node_modules/@rokt/dcui-layout-schema/v1.11/index.js +4 -0
  335. package/node_modules/@rokt/dcui-layout-schema/v1.12/index.d.ts +5496 -0
  336. package/node_modules/@rokt/dcui-layout-schema/v1.12/index.js +4 -0
  337. package/node_modules/@rokt/dcui-layout-schema/v1.13/index.d.ts +5498 -0
  338. package/node_modules/@rokt/dcui-layout-schema/v1.13/index.js +4 -0
  339. package/node_modules/@rokt/dcui-layout-schema/v1.14/index.d.ts +5828 -0
  340. package/node_modules/@rokt/dcui-layout-schema/v1.14/index.js +4 -0
  341. package/node_modules/@rokt/dcui-layout-schema/v1.15/index.d.ts +6085 -0
  342. package/node_modules/@rokt/dcui-layout-schema/v1.15/index.js +4 -0
  343. package/node_modules/@rokt/dcui-layout-schema/v1.16/index.d.ts +6324 -0
  344. package/node_modules/@rokt/dcui-layout-schema/v1.16/index.js +4 -0
  345. package/node_modules/@rokt/dcui-layout-schema/v1.17/index.d.ts +6439 -0
  346. package/node_modules/@rokt/dcui-layout-schema/v1.17/index.js +4 -0
  347. package/node_modules/@rokt/dcui-layout-schema/v1.18/index.d.ts +6439 -0
  348. package/node_modules/@rokt/dcui-layout-schema/v1.18/index.js +4 -0
  349. package/node_modules/@rokt/dcui-layout-schema/v1.19/index.d.ts +6439 -0
  350. package/node_modules/@rokt/dcui-layout-schema/v1.19/index.js +4 -0
  351. package/node_modules/@rokt/dcui-layout-schema/v1.2/index.d.ts +1861 -59
  352. package/node_modules/@rokt/dcui-layout-schema/v1.2/index.js +1 -1
  353. package/node_modules/@rokt/dcui-layout-schema/v1.20/index.d.ts +6558 -0
  354. package/node_modules/@rokt/dcui-layout-schema/v1.20/index.js +4 -0
  355. package/node_modules/@rokt/dcui-layout-schema/v1.3/index.d.ts +1948 -59
  356. package/node_modules/@rokt/dcui-layout-schema/v1.3/index.js +1 -1
  357. package/node_modules/@rokt/dcui-layout-schema/v1.4/index.d.ts +2115 -60
  358. package/node_modules/@rokt/dcui-layout-schema/v1.4/index.js +1 -1
  359. package/node_modules/@rokt/dcui-layout-schema/v1.5/index.d.ts +2137 -60
  360. package/node_modules/@rokt/dcui-layout-schema/v1.5/index.js +1 -1
  361. package/node_modules/@rokt/dcui-layout-schema/v1.6/index.d.ts +2308 -60
  362. package/node_modules/@rokt/dcui-layout-schema/v1.6/index.js +1 -1
  363. package/node_modules/@rokt/dcui-layout-schema/v1.7/index.d.ts +2578 -68
  364. package/node_modules/@rokt/dcui-layout-schema/v1.7/index.js +1 -1
  365. package/node_modules/@rokt/dcui-layout-schema/v1.8/index.d.ts +2680 -68
  366. package/node_modules/@rokt/dcui-layout-schema/v1.8/index.js +1 -1
  367. package/node_modules/@rokt/dcui-layout-schema/v1.9/index.d.ts +5222 -0
  368. package/node_modules/@rokt/dcui-layout-schema/v1.9/index.js +4 -0
  369. package/node_modules/@rokt/partner-integration/README.md +85 -0
  370. package/node_modules/@rokt/partner-integration/dist/cart/index.barrel.d.ts +2 -0
  371. package/node_modules/@rokt/partner-integration/dist/cart/index.d.ts +3 -0
  372. package/node_modules/@rokt/partner-integration/dist/cart/v1/delete-alert-partner-message-body.d.ts +7 -0
  373. package/node_modules/@rokt/partner-integration/dist/cart/v1/events.d.ts +23 -0
  374. package/node_modules/@rokt/partner-integration/dist/cart/v1/index.d.ts +5 -0
  375. package/node_modules/@rokt/partner-integration/dist/cart/v1/update-cart-item.d.ts +48 -0
  376. package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-alert-partner-message-body.d.ts +15 -0
  377. package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-delivery-details-message-body.d.ts +12 -0
  378. package/node_modules/@rokt/partner-integration/dist/cart/v2/cart-item-updated-placement-message-body.d.ts +48 -0
  379. package/node_modules/@rokt/partner-integration/dist/cart/v2/index.d.ts +4 -0
  380. package/node_modules/@rokt/partner-integration/dist/cart/v2/partner-message.d.ts +8 -0
  381. package/node_modules/@rokt/partner-integration/dist/cart/v2/placement-message.d.ts +10 -0
  382. package/node_modules/@rokt/partner-integration/dist/cart/v2/update-cart-item-partner-message-body.d.ts +4 -0
  383. package/node_modules/@rokt/partner-integration/dist/core/events.d.ts +45 -0
  384. package/node_modules/@rokt/partner-integration/dist/core/index.d.ts +1 -0
  385. package/node_modules/@rokt/partner-integration/dist/delivery-details/delivery-details.d.ts +20 -0
  386. package/node_modules/@rokt/partner-integration/dist/delivery-details/index.barrel.d.ts +2 -0
  387. package/node_modules/@rokt/partner-integration/dist/delivery-details/index.d.ts +2 -0
  388. package/node_modules/@rokt/partner-integration/dist/delivery-details/placement-message.d.ts +10 -0
  389. package/node_modules/@rokt/partner-integration/dist/extensions/extension-mapping.d.ts +9 -0
  390. package/node_modules/@rokt/partner-integration/dist/extensions/extension.d.ts +6 -0
  391. package/node_modules/@rokt/partner-integration/dist/extensions/index.barrel.d.ts +2 -0
  392. package/node_modules/@rokt/partner-integration/dist/extensions/index.d.ts +2 -0
  393. package/node_modules/@rokt/partner-integration/dist/index.d.ts +11 -0
  394. package/node_modules/@rokt/partner-integration/dist/index.js +1 -0
  395. package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-message-body.d.ts +6 -0
  396. package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-response-message-body.d.ts +11 -0
  397. package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.barrel.d.ts +5 -0
  398. package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.d.ts +2 -0
  399. package/node_modules/@rokt/partner-integration/dist/instant-purchase/partner-message.d.ts +8 -0
  400. package/node_modules/@rokt/partner-integration/dist/instant-purchase/placement-message.d.ts +9 -0
  401. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.barrel.d.ts +5 -0
  402. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.d.ts +1 -0
  403. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/partner-message.d.ts +8 -0
  404. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/placement-message.d.ts +9 -0
  405. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-message-body.d.ts +8 -0
  406. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-response-message-body.d.ts +11 -0
  407. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item.d.ts +26 -0
  408. package/node_modules/@rokt/partner-integration/dist/journey/index.barrel.d.ts +1 -0
  409. package/node_modules/@rokt/partner-integration/dist/journey/index.d.ts +2 -0
  410. package/node_modules/@rokt/partner-integration/dist/journey/journey-extension.d.ts +39 -0
  411. package/node_modules/@rokt/partner-integration/dist/link-navigation/index.d.ts +2 -0
  412. package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-message.d.ts +9 -0
  413. package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-request-body.d.ts +3 -0
  414. package/node_modules/@rokt/partner-integration/dist/partner-validation/events.d.ts +17 -0
  415. package/node_modules/@rokt/partner-integration/dist/partner-validation/index.barrel.d.ts +4 -0
  416. package/node_modules/@rokt/partner-integration/dist/partner-validation/index.d.ts +2 -0
  417. package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-extension.d.ts +7 -0
  418. package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-status.d.ts +10 -0
  419. package/node_modules/@rokt/partner-integration/dist/partner-validation/set-partner-validation-status.d.ts +12 -0
  420. package/node_modules/@rokt/partner-integration/dist/promotions-extension/index.d.ts +2 -0
  421. package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-events.d.ts +6 -0
  422. package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-payload.d.ts +1 -0
  423. package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.barrel.d.ts +1 -0
  424. package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.d.ts +2 -0
  425. package/node_modules/@rokt/partner-integration/dist/thank-you-page/thank-you-page-extension.d.ts +22 -0
  426. package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.barrel.d.ts +5 -0
  427. package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.d.ts +2 -0
  428. package/node_modules/@rokt/partner-integration/dist/upsells-offers/partner-message.d.ts +9 -0
  429. package/node_modules/@rokt/partner-integration/dist/upsells-offers/placement-message.d.ts +21 -0
  430. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsell-creative-sent-message-body.d.ts +14 -0
  431. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offer.d.ts +35 -0
  432. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offers-sent-body.d.ts +11 -0
  433. package/node_modules/@rokt/partner-integration/dist/user-action/index.barrel.d.ts +2 -0
  434. package/node_modules/@rokt/partner-integration/dist/user-action/index.d.ts +2 -0
  435. package/node_modules/@rokt/partner-integration/dist/user-action/user-action-event.d.ts +11 -0
  436. package/node_modules/@rokt/partner-integration/dist/user-action/user-action-extension.d.ts +4 -0
  437. package/node_modules/@rokt/partner-integration/package.json +34 -0
  438. package/node_modules/@rokt/plugin/bootstrap/bootstrap.d.ts +1 -2
  439. package/node_modules/@rokt/plugin/bootstrap/bootstrap.js +5 -30
  440. package/node_modules/@rokt/plugin/interface/context.d.ts +1 -0
  441. package/node_modules/@rokt/plugin/interface/display.d.ts +1 -0
  442. package/node_modules/@rokt/plugin/lib/index.barrel.d.ts +1 -14
  443. package/node_modules/@rokt/plugin/lib/index.barrel.js +1 -14
  444. package/node_modules/@rokt/plugin/lib/is-preload-frame.d.ts +1 -1
  445. package/node_modules/@rokt/plugin/lib/is-preload-frame.js +3 -1
  446. package/node_modules/@rokt/plugin/lib/plugin-instance.d.ts +13 -27
  447. package/node_modules/@rokt/plugin/lib/plugin-instance.js +1 -99
  448. package/node_modules/@rokt/plugin/package.json +15 -16
  449. package/node_modules/@rokt/plugin/standalone/standalone.d.ts +14 -2
  450. package/node_modules/@rokt/plugin/standalone/standalone.js +1 -0
  451. package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.d.ts +1 -1
  452. package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.js +2 -1
  453. package/node_modules/@rokt/plugin/testing/mock-child-plugin.d.ts +5 -5
  454. package/node_modules/@rokt/plugin/testing/mock-child-plugin.js +6 -5
  455. package/node_modules/@rokt/plugin/testing/mock-context.d.ts +18 -17
  456. package/node_modules/@rokt/plugin/testing/mock-context.js +19 -17
  457. package/node_modules/@rokt/plugin/testing/mock-display.d.ts +1 -1
  458. package/node_modules/@rokt/plugin/testing/mock-display.js +2 -1
  459. package/node_modules/@rokt/plugin/testing/mock-engine.d.ts +1 -2
  460. package/node_modules/@rokt/plugin/testing/mock-error.d.ts +1 -1
  461. package/node_modules/@rokt/plugin/testing/mock-error.js +2 -1
  462. package/node_modules/@rokt/plugin/testing/mock-function.d.ts +1 -0
  463. package/node_modules/@rokt/plugin/testing/mock-function.js +31 -0
  464. package/node_modules/@rokt/plugin/testing/mock-metrics.d.ts +4 -4
  465. package/node_modules/@rokt/plugin/testing/mock-metrics.js +5 -4
  466. package/node_modules/@rokt/plugin/testing/mock-parent-interaction.d.ts +2 -2
  467. package/node_modules/@rokt/plugin/testing/mock-parent-interaction.js +3 -2
  468. package/node_modules/@rokt/plugin/testing/mock-partner-interaction.d.ts +2 -2
  469. package/node_modules/@rokt/plugin/testing/mock-partner-interaction.js +3 -2
  470. package/node_modules/@rokt/plugin/testing/mock-rdn.d.ts +3 -3
  471. package/node_modules/@rokt/plugin/testing/mock-rdn.js +4 -3
  472. package/node_modules/@rokt/plugin/types/library-loaded.d.ts +0 -2
  473. package/node_modules/@rokt/plugin/types/library-loaded.js +0 -2
  474. package/package.json +8 -7
  475. package/node_modules/@rokt/plugin/lib/bootstrap-v1.d.ts +0 -3
  476. package/node_modules/@rokt/plugin/lib/bootstrap-v1.js +0 -9
  477. package/node_modules/@rokt/plugin/lib/child-plugin-factory.d.ts +0 -14
  478. package/node_modules/@rokt/plugin/lib/child-plugin-factory.js +0 -12
  479. package/node_modules/@rokt/plugin/lib/child-plugin.d.ts +0 -26
  480. package/node_modules/@rokt/plugin/lib/child-plugin.js +0 -81
  481. package/node_modules/@rokt/plugin/lib/context.d.ts +0 -23
  482. package/node_modules/@rokt/plugin/lib/context.js +0 -95
  483. package/node_modules/@rokt/plugin/lib/debug.d.ts +0 -19
  484. package/node_modules/@rokt/plugin/lib/debug.js +0 -36
  485. package/node_modules/@rokt/plugin/lib/display.d.ts +0 -13
  486. package/node_modules/@rokt/plugin/lib/display.js +0 -81
  487. package/node_modules/@rokt/plugin/lib/error.d.ts +0 -9
  488. package/node_modules/@rokt/plugin/lib/error.js +0 -35
  489. package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.d.ts +0 -8
  490. package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.js +0 -6
  491. package/node_modules/@rokt/plugin/lib/metrics.d.ts +0 -13
  492. package/node_modules/@rokt/plugin/lib/metrics.js +0 -55
  493. package/node_modules/@rokt/plugin/lib/parent-interaction.d.ts +0 -13
  494. package/node_modules/@rokt/plugin/lib/parent-interaction.js +0 -46
  495. package/node_modules/@rokt/plugin/lib/partner-interaction.d.ts +0 -11
  496. package/node_modules/@rokt/plugin/lib/partner-interaction.js +0 -35
  497. package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.d.ts +0 -6
  498. package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.js +0 -35
  499. package/node_modules/@rokt/plugin/lib/private-context.d.ts +0 -39
  500. package/node_modules/@rokt/plugin/lib/private-context.js +0 -76
  501. package/node_modules/@rokt/plugin/lib/rdn.d.ts +0 -15
  502. package/node_modules/@rokt/plugin/lib/rdn.js +0 -58
  503. package/node_modules/@rokt/plugin/lib/sender-receiver.d.ts +0 -5
  504. package/node_modules/@rokt/plugin/lib/sender-receiver.js +0 -1
  505. package/node_modules/@rokt/plugin/lib/theme.d.ts +0 -8
  506. package/node_modules/@rokt/plugin/lib/theme.js +0 -8
  507. package/node_modules/@rokt/plugin/lib/to-observable.d.ts +0 -4
  508. package/node_modules/@rokt/plugin/lib/to-observable.js +0 -12
  509. package/node_modules/@rokt/plugin/lib/unsafe.d.ts +0 -3
  510. package/node_modules/@rokt/plugin/lib/unsafe.js +0 -2
  511. package/node_modules/@rokt/plugin/lib/with-error-reporting.d.ts +0 -2
  512. package/node_modules/@rokt/plugin/lib/with-error-reporting.js +0 -22
  513. /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/close-button.d.ts +0 -0
  514. /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/index.d.ts +0 -0
  515. /package/dist/{modules/add-to-cart/src/selectors/globalOfferDataState → libraries/layout-renderer-utils/src/selectors/fired-events}/index.d.ts +0 -0
  516. /package/dist/modules/instant-purchase/src/components/{catalog-drop-down → escapehatch-catalog-drop-down}/catalog-drop-down.d.ts +0 -0
  517. /package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/constants.d.ts +0 -0
@@ -1,901 +1,2792 @@
1
+ /** A URL value that supports light and dark mode themes. */
1
2
  export interface ThemeUrl {
3
+ /** The URL for light mode. */
2
4
  light: string;
5
+ /** The URL for dark mode. Omit to use the light mode URL in both themes. */
3
6
  dark?: null | string;
4
7
  }
5
- export type BackgroundImagePosition = "top" | "right" | "bottom" | "left" | "center" | "top-right" | "top-left" | "bottom-left" | "bottom-right";
6
- export type BackgroundImageScale = "crop" | "fit" | "fill";
8
+ /**
9
+ * Positioning of a background image within its container.
10
+ * Specifies which area of the container the image aligns to.
11
+ */
12
+ export type BackgroundImagePosition =
13
+ /** Positions the image at the top center. */
14
+ "top"
15
+ /** Positions the image at the center right. */
16
+ | "right"
17
+ /** Positions the image at the bottom center. */
18
+ | "bottom"
19
+ /** Positions the image at the center left. */
20
+ | "left"
21
+ /** Positions the image at the center of the container. */
22
+ | "center"
23
+ /** Positions the image at the top right corner. */
24
+ | "top-right"
25
+ /** Positions the image at the top left corner. */
26
+ | "top-left"
27
+ /** Positions the image at the bottom left corner. */
28
+ | "bottom-left"
29
+ /** Positions the image at the bottom right corner. */
30
+ | "bottom-right";
31
+ /**
32
+ * How a background image is scaled to fit its container.
33
+ * Controls the trade-off between covering the container and preserving aspect ratio.
34
+ */
35
+ export type BackgroundImageScale =
36
+ /** Scales the image to cover the entire container, cropping edges that overflow. */
37
+ "crop"
38
+ /** Scales the image to fit entirely within the container, potentially leaving empty space. */
39
+ | "fit"
40
+ /** Stretches the image to fill the container exactly, potentially distorting aspect ratio. */
41
+ | "fill";
42
+ /**
43
+ * A background image with themed URL support.
44
+ * Use this to display an image behind element content with control over positioning and scaling.
45
+ */
7
46
  export interface BackgroundImage {
47
+ /** The image URL. Uses themed values for light/dark mode. */
8
48
  url: ThemeUrl;
49
+ /** Where the image is positioned within the element. */
9
50
  position?: null | BackgroundImagePosition;
51
+ /** How the image is scaled to fit the element. */
10
52
  scale?: null | BackgroundImageScale;
11
53
  }
54
+ /**
55
+ * A color value that supports light and dark mode themes. Always provide the light mode value.
56
+ * Provide dark mode only if the color should differ from light mode.
57
+ * Colors are hex strings in `#RRGGBB` or `#AARRGGBB` format. NOTE: the alpha channel comes
58
+ * BEFORE the RGB channels (e.g. `#80000000` for 50% transparent black), unlike CSS where alpha is last.
59
+ */
12
60
  export interface ThemeColor {
61
+ /** The color hex code for light mode. Format: `#RRGGBB` or `#AARRGGBB` (e.g. "#FF0000", "#80000000"). */
13
62
  light: string;
63
+ /** The color hex code for dark mode. Omit to use the light mode value in both themes. */
14
64
  dark?: null | string;
15
65
  }
66
+ /**
67
+ * Background styling properties for elements.
68
+ * All fields are optional. Only include the properties you want to override.
69
+ */
16
70
  export interface BackgroundStylingProperties {
71
+ /** The background fill color. */
17
72
  backgroundColor?: null | ThemeColor;
73
+ /** A background image to display behind the element content. */
18
74
  backgroundImage?: null | BackgroundImage;
19
75
  }
76
+ /** A styling block that defines styles for different interaction states. The 'default' state is required; other states are optional and override default styles when active. */
20
77
  export interface BasicStateStylingBlock<StyleProperties> {
78
+ /** The base styles applied in the normal state. This is always required. */
21
79
  default: StyleProperties;
80
+ /** Styles applied when the element is being pressed/clicked. Only applicable to interactive elements. */
22
81
  pressed?: null | StyleProperties;
82
+ /** Styles applied when the cursor is over the element. Only applicable to interactive elements. */
23
83
  hovered?: null | StyleProperties;
84
+ /** Styles applied when the element has keyboard focus. */
24
85
  focussed?: null | StyleProperties;
86
+ /** Styles applied when the element is disabled. */
25
87
  disabled?: null | StyleProperties;
26
88
  }
27
- export type DimensionWidthValue = {
89
+ /**
90
+ * Width value specification. MUST be an object with 'type' and 'value' properties.
91
+ * Do NOT use bare numbers or CSS strings. Example: {"type": "percentage", "value": 100}.
92
+ */
93
+ export type DimensionWidthValue =
94
+ /** A fixed width in platform units (px on Web, pt on iOS, dp on Android). Value: {"type": "fixed", "value": <number>}. */
95
+ {
28
96
  type: "fixed";
29
97
  value: number;
30
- } | {
98
+ }
99
+ /** A percentage of the parent container width. Value: {"type": "percentage", "value": <0-100>}. */
100
+ | {
31
101
  type: "percentage";
32
102
  value: number;
33
- } | {
103
+ }
104
+ /** Sizes to fit content. Value: {"type": "fit", "value": "wrap-content" or "fit-width"}. */
105
+ | {
34
106
  type: "fit";
35
107
  value: DimensionWidthFitValue;
36
108
  };
37
- export type DimensionHeightValue = {
109
+ /**
110
+ * Height value specification. MUST be an object with 'type' and 'value' properties.
111
+ * Do NOT use bare numbers or CSS strings. Example: {"type": "fixed", "value": 200}.
112
+ */
113
+ export type DimensionHeightValue =
114
+ /** A fixed height in platform units (px on Web, pt on iOS, dp on Android). Value: {"type": "fixed", "value": <number>}. */
115
+ {
38
116
  type: "fixed";
39
117
  value: number;
40
- } | {
118
+ }
119
+ /** A percentage of the parent container height. Value: {"type": "percentage", "value": <0-100>}. */
120
+ | {
41
121
  type: "percentage";
42
122
  value: number;
43
- } | {
123
+ }
124
+ /** Sizes to fit content. Value: {"type": "fit", "value": "wrap-content" or "fit-height"}. */
125
+ | {
44
126
  type: "fit";
45
127
  value: DimensionHeightFitValue;
46
128
  };
129
+ /**
130
+ * Dimension and size styling properties. Numeric values are in platform units (px on Web, pt on iOS, dp on Android). Plain numbers (e.g. minWidth: 100)
131
+ * while width/height use typed objects. Do NOT use bare numbers for width or height.
132
+ * All fields are optional. Only include the properties you want to override.
133
+ */
47
134
  export interface DimensionStylingProperties {
135
+ /** Minimum width in platform units. */
48
136
  minWidth?: null | number;
137
+ /** Maximum width in platform units. */
49
138
  maxWidth?: null | number;
139
+ /**
140
+ * The width value. MUST be a typed object, e.g. {"type": "percentage", "value": 100}.
141
+ * Do NOT use bare numbers.
142
+ */
50
143
  width?: null | DimensionWidthValue;
144
+ /** Minimum height in platform units. */
51
145
  minHeight?: null | number;
146
+ /** Maximum height in platform units. */
52
147
  maxHeight?: null | number;
148
+ /**
149
+ * The height value. MUST be a typed object, e.g. {"type": "fixed", "value": 200}.
150
+ * Do NOT use bare numbers.
151
+ */
53
152
  height?: null | DimensionHeightValue;
153
+ /** Rotation around the z-axis in degrees. */
54
154
  rotateZ?: null | number;
55
155
  }
56
- export type FlexAlignment = "center" | "flex-start" | "flex-end" | "stretch";
156
+ /** Cross-axis alignment options for flex containers and flex children. */
157
+ export type FlexAlignment =
158
+ /** Centers items along the cross axis. */
159
+ "center"
160
+ /** Aligns items to the start of the cross axis. */
161
+ | "flex-start"
162
+ /** Aligns items to the end of the cross axis. */
163
+ | "flex-end"
164
+ /** Stretches items to fill the cross axis. */
165
+ | "stretch";
166
+ /**
167
+ * Properties that control how this element behaves as a child within a flex container (Row or Column).
168
+ * All fields are optional. Only include the properties you want to override.
169
+ */
57
170
  export interface FlexChildStylingProperties {
171
+ /**
172
+ * The flex grow weight. Determines how remaining space is distributed.
173
+ * A child with weight 2 gets twice the extra space as one with weight 1.
174
+ */
58
175
  weight?: null | number;
176
+ /** The visual order of this child within its container. Lower values appear first. */
59
177
  order?: null | number;
178
+ /** Overrides the parent container's alignItems for this specific child. */
60
179
  alignSelf?: null | FlexAlignment;
61
180
  }
181
+ /**
182
+ * Spacing properties for padding, margin and offset.
183
+ * Values are specified as space-separated strings of numeric values in platform units (px on Web, pt on iOS, dp on Android) following CSS shorthand.
184
+ * All fields are optional. Only include the properties you want to override.
185
+ */
62
186
  export interface SpacingStylingProperties {
187
+ /**
188
+ * Internal spacing between the element border and its content. Specified as a
189
+ * space-separated string of numeric values following CSS shorthand: '10' for all sides,
190
+ * '10 20' for vertical/horizontal, '10 20 10 20' for top/right/bottom/left.
191
+ */
63
192
  padding?: null | string;
193
+ /** External spacing around the outside of the element border. Same format as padding. */
64
194
  margin?: null | string;
195
+ /** Positional offset from the element's normal position. Same format as padding. */
65
196
  offset?: null | string;
66
197
  }
67
- export type FontWeight = "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900";
68
- export type FontJustification = "left" | "right" | "center" | "start" | "end" | "justify";
69
- export type FontBaselineAlignment = "super" | "sub" | "baseline";
70
- export type FontStyle = "normal" | "italic";
71
- export type TextTransform = "capitalize" | "uppercase" | "lowercase" | "none";
72
- export type TextDecoration = "underline" | "strike-through" | "none";
198
+ /**
199
+ * The weight (boldness) of the font. Values are CSS-standard numeric weights.
200
+ * MUST be one of the predefined weight values. Do NOT use arbitrary numbers.
201
+ */
202
+ export type FontWeight =
203
+ /** Thin (Hairline). The lightest available weight. */
204
+ "100"
205
+ /** Extra Light (Ultra Light). */
206
+ | "200"
207
+ /** Light. */
208
+ | "300"
209
+ /** Normal / Regular. The default font weight. */
210
+ | "400"
211
+ /** Medium. Slightly bolder than normal. */
212
+ | "500"
213
+ /** Semi Bold (Demi Bold). */
214
+ | "600"
215
+ /** Bold. */
216
+ | "700"
217
+ /** Extra Bold (Ultra Bold). */
218
+ | "800"
219
+ /** Black (Heavy). The boldest available weight. */
220
+ | "900";
221
+ /**
222
+ * Horizontal text alignment within the text element.
223
+ * MUST use one of the specified alignment values. Do NOT use CSS text-align strings directly.
224
+ */
225
+ export type FontJustification =
226
+ /** Aligns text to the left edge. */
227
+ "left"
228
+ /** Aligns text to the right edge. */
229
+ | "right"
230
+ /** Centers text horizontally. */
231
+ | "center"
232
+ /** Aligns text to the start edge (left in LTR, right in RTL). */
233
+ | "start"
234
+ /** Aligns text to the end edge (right in LTR, left in RTL). */
235
+ | "end"
236
+ /** Stretches text so each line fills the full width, adjusting spacing between words. */
237
+ | "justify";
238
+ /**
239
+ * Vertical alignment of text relative to the baseline.
240
+ * Use this to position text as superscript, subscript, or at the normal baseline.
241
+ */
242
+ export type FontBaselineAlignment =
243
+ /** Raises text above the baseline (superscript). */
244
+ "super"
245
+ /** Lowers text below the baseline (subscript). */
246
+ | "sub"
247
+ /** Aligns text to the normal baseline position. */
248
+ | "baseline";
249
+ /**
250
+ * The style of the font.
251
+ * Controls whether text is rendered upright or italicised.
252
+ */
253
+ export type FontStyle =
254
+ /** Standard upright text. */
255
+ "normal"
256
+ /** Italicised text. */
257
+ | "italic";
258
+ /**
259
+ * Controls text capitalisation.
260
+ * Applied as a visual transform; does not alter the underlying text data.
261
+ */
262
+ export type TextTransform =
263
+ /** Capitalises the first letter of each word. */
264
+ "capitalize"
265
+ /** Transforms all text to uppercase. */
266
+ | "uppercase"
267
+ /** Transforms all text to lowercase. */
268
+ | "lowercase"
269
+ /** No transformation applied. */
270
+ | "none";
271
+ /**
272
+ * Decorative line applied to text.
273
+ * Use to add visual emphasis such as underline or strikethrough.
274
+ */
275
+ export type TextDecoration =
276
+ /** Adds a line beneath the text. */
277
+ "underline"
278
+ /** Adds a line through the middle of the text. */
279
+ | "strike-through"
280
+ /** No decoration applied. */
281
+ | "none";
282
+ /**
283
+ * Typography styling properties for text elements.
284
+ * All fields are optional. Only include the properties you want to override.
285
+ */
73
286
  export interface TextStylingProperties {
287
+ /** The text color. Uses themed values for light/dark mode support. */
74
288
  textColor?: null | ThemeColor;
289
+ /** Font size in platform units (px on Web, pt on iOS, dp on Android). */
75
290
  fontSize?: null | number;
291
+ /** The font family name. Use 'rokt-icons' for icon fonts. */
76
292
  fontFamily?: null | string;
293
+ /** The weight (boldness) of the font. */
77
294
  fontWeight?: null | FontWeight;
295
+ /** Line height in platform units. Controls the spacing between lines of text. */
78
296
  lineHeight?: null | number;
297
+ /** Horizontal text alignment within the element. */
79
298
  horizontalTextAlign?: null | FontJustification;
299
+ /** Vertical alignment of text relative to the baseline. */
80
300
  baselineTextAlign?: null | FontBaselineAlignment;
301
+ /** Normal or italic text rendering. */
81
302
  fontStyle?: null | FontStyle;
303
+ /** Controls automatic text capitalisation. */
82
304
  textTransform?: null | TextTransform;
305
+ /** Additional spacing between characters in platform units. */
83
306
  letterSpacing?: null | number;
307
+ /** Decorative line applied to text (underline, strikethrough). */
84
308
  textDecoration?: null | TextDecoration;
309
+ /** Maximum number of lines to display. Text beyond this limit is truncated. */
85
310
  lineLimit?: null | number;
86
311
  }
312
+ /** Visual styles for the BasicText node. */
87
313
  export interface BasicTextStyle {
314
+ /** Width, height and rotation properties. */
88
315
  dimension?: null | DimensionStylingProperties;
316
+ /** Properties controlling behaviour as a flex child. */
89
317
  flexChild?: null | FlexChildStylingProperties;
318
+ /** Padding, margin and offset properties. */
90
319
  spacing?: null | SpacingStylingProperties;
320
+ /** Background color and image properties. */
91
321
  background?: null | BackgroundStylingProperties;
322
+ /** Typography properties. */
92
323
  text?: null | TextStylingProperties;
93
324
  }
325
+ /** Style elements for the BasicText node. */
94
326
  export interface BasicTextElements {
327
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
95
328
  own: BasicStateStylingBlock<BasicTextStyle>[];
96
329
  }
330
+ /** The top-level style object for a node. Contains element styling and optional conditional transitions. */
97
331
  export interface LayoutStyle<ElementsStyles, ConditionalTransitionsStyles> {
332
+ /** Defines the visual styles for each styleable element of this node. MUST contain at least an 'own' key with a styling block array. */
98
333
  elements?: null | ElementsStyles;
334
+ /** Optional style transitions that are applied when runtime conditions (predicates) are met. */
99
335
  conditionalTransitions?: null | ConditionalTransitionsStyles;
100
336
  }
337
+ /** Defines a style transition that is applied when the specified predicates evaluate to true. */
101
338
  export interface ConditionalStyleTransition<Styles, Predicates> {
339
+ /** The list of conditions that must all be true for this transition to apply. */
102
340
  predicates: Predicates[];
341
+ /** The transition duration in milliseconds. */
103
342
  duration: number;
343
+ /** The style properties to apply when all predicates are met. */
104
344
  value: Styles;
105
345
  }
346
+ /** Renders a paragraph of plain text. Use for simple text content. For text with HTML formatting use RichText instead. */
106
347
  export interface BasicTextModel<Predicates> {
348
+ /** Visual styles for the text element. */
107
349
  styles?: null | LayoutStyle<BasicTextElements, ConditionalStyleTransition<BasicTextTransitions, Predicates>>;
350
+ /** The text content to display. Supports data binding placeholders in the format %^DATA.key^% for dynamic creative content. */
108
351
  value: string;
109
352
  }
353
+ /** Transition definitions for the BasicText node. */
110
354
  export interface BasicTextTransitions {
355
+ /** Transition properties for the primary element. */
111
356
  own?: null | BasicTextStyle;
112
357
  }
113
- export type BorderStyle = "solid" | "dashed";
358
+ /**
359
+ * The visual style of the border line.
360
+ * MUST be one of the supported values. Do NOT use CSS border-style strings directly.
361
+ */
362
+ export type BorderStyle =
363
+ /** A solid continuous border line. */
364
+ "solid"
365
+ /** A dashed border line. */
366
+ | "dashed";
367
+ /**
368
+ * Border styling properties for elements.
369
+ * All fields are optional. Only include the properties you want to override.
370
+ */
114
371
  export interface BorderStylingProperties {
372
+ /** Corner radius in platform units (px on Web, pt on iOS, dp on Android). Applies uniformly to all corners. */
115
373
  borderRadius?: null | number;
374
+ /** The border color. Uses themed values for light/dark mode support. */
116
375
  borderColor?: null | ThemeColor;
376
+ /**
377
+ * Border width specified as a space-separated string of numeric values in platform units.
378
+ * Follows CSS shorthand: '2' for all sides, '2 4' for vertical/horizontal,
379
+ * '1 2 3 4' for top/right/bottom/left.
380
+ */
117
381
  borderWidth?: null | string;
382
+ /** The visual style of the border line (solid or dashed). */
118
383
  borderStyle?: null | BorderStyle;
119
384
  }
120
- export type FlexJustification = "center" | "flex-start" | "flex-end";
385
+ /** Main-axis justification options for flex containers. */
386
+ export type FlexJustification =
387
+ /** Centers items along the main axis. */
388
+ "center"
389
+ /** Packs items toward the start of the main axis. */
390
+ | "flex-start"
391
+ /** Packs items toward the end of the main axis. */
392
+ | "flex-end";
393
+ /** Defines a box shadow effect. All offset and radius values are in platform units (px on Web, pt on iOS, dp on Android). */
121
394
  export interface Shadow {
395
+ /** Horizontal offset of the shadow. Positive values move the shadow right. */
122
396
  offsetX?: null | number;
397
+ /** Vertical offset of the shadow. Positive values move the shadow down. */
123
398
  offsetY?: null | number;
399
+ /** The blur radius. Higher values create a more diffuse shadow. */
124
400
  blurRadius?: null | number;
401
+ /** The spread radius. Positive values expand the shadow, negative values shrink it. */
125
402
  spreadRadius?: null | number;
403
+ /** The shadow color. */
126
404
  color: ThemeColor;
127
405
  }
128
- export type Overflow = "hidden" | "visible";
406
+ /** Controls visibility of content that overflows the container bounds. */
407
+ export type Overflow =
408
+ /** Content that overflows is clipped and not visible. */
409
+ "hidden"
410
+ /** Content that overflows remains visible outside the container bounds. */
411
+ | "visible";
412
+ /** Styling properties for container layout behaviour. Only applicable to nodes that contain children. */
129
413
  export interface ContainerStylingProperties {
414
+ /** Controls how children are distributed along the main axis. For a Row this is horizontal, for a Column this is vertical. */
130
415
  justifyContent?: null | FlexJustification;
416
+ /** Controls how children are aligned along the cross axis. For a Row this is vertical, for a Column this is horizontal. */
131
417
  alignItems?: null | FlexAlignment;
418
+ /** Applies a box shadow effect around the container. */
132
419
  shadow?: null | Shadow;
420
+ /** Controls whether content overflowing the container bounds is visible or hidden. */
133
421
  overflow?: null | Overflow;
422
+ /** The gap in platform units between children in the container. */
134
423
  gap?: null | number;
424
+ /** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
135
425
  blur?: null | number;
136
426
  }
427
+ /**
428
+ * Available style categories for the BottomSheet content element. Each optional field
429
+ * enables a specific category of visual styling. Omit a field to leave that category
430
+ * unstyled.
431
+ */
137
432
  export interface BottomSheetStyles {
433
+ /**
434
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
435
+ * MUST be used to control how children are arranged within the bottom sheet content area.
436
+ */
138
437
  container?: null | ContainerStylingProperties;
438
+ /**
439
+ * Background color and image properties. Use to set a solid color, gradient, or image
440
+ * behind the bottom sheet content.
441
+ */
139
442
  background?: null | BackgroundStylingProperties;
443
+ /**
444
+ * Border radius, color, width and style properties. Use to add visible borders or
445
+ * rounded corners to the bottom sheet content area. Typically top corners are rounded.
446
+ */
140
447
  border?: null | BorderStylingProperties;
448
+ /**
449
+ * Width, height and rotation properties. Use to explicitly size the bottom sheet content
450
+ * area. Do NOT set width/height if the bottom sheet should size to its content.
451
+ */
141
452
  dimension?: null | DimensionStylingProperties;
453
+ /**
454
+ * Properties controlling this element's behaviour as a child of a flex container.
455
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
456
+ */
142
457
  flexChild?: null | FlexChildStylingProperties;
458
+ /**
459
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
460
+ * bottom sheet content area.
461
+ */
143
462
  spacing?: null | SpacingStylingProperties;
144
463
  }
464
+ /**
465
+ * Style categories for the BottomSheet wrapper (backdrop) element. Controls the appearance
466
+ * of the area behind the bottom sheet content.
467
+ */
145
468
  export interface BottomSheetWrapperStyles {
469
+ /** Layout properties for the wrapper container that positions the bottom sheet content. */
146
470
  container?: null | ContainerStylingProperties;
471
+ /**
472
+ * Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
473
+ * format, e.g. `#80000000`) to dim the content behind the bottom sheet.
474
+ */
147
475
  background?: null | BackgroundStylingProperties;
148
476
  }
477
+ /**
478
+ * Styleable elements of the BottomSheet node. The BottomSheet has two styleable elements:
479
+ * its own content area and its wrapper (backdrop).
480
+ */
149
481
  export interface BottomSheetElements {
482
+ /**
483
+ * Style blocks for the bottom sheet content area. The array represents
484
+ * breakpoint-specific styles: first item is the default (no breakpoint), subsequent
485
+ * items correspond to breakpoints in ascending order. MUST contain at least one item
486
+ * for the default style.
487
+ */
150
488
  own: BasicStateStylingBlock<BottomSheetStyles>[];
489
+ /**
490
+ * Style blocks for the bottom sheet wrapper (backdrop). The array represents
491
+ * breakpoint-specific styles: first item is the default, subsequent items correspond
492
+ * to breakpoints in ascending order.
493
+ */
151
494
  wrapper: BasicStateStylingBlock<BottomSheetWrapperStyles>[];
152
495
  }
496
+ /**
497
+ * A modal container that slides up from the bottom of the screen. Use for contextual actions,
498
+ * forms, or supplementary content that does not require full-screen takeover. The bottom
499
+ * sheet appears with a backdrop behind it. Do NOT use BottomSheet for persistent content;
500
+ * use a regular Column or ScrollableColumn instead.
501
+ */
153
502
  export interface BottomSheetModel<Children, Predicates> {
503
+ /**
504
+ * If true, clicking the backdrop area closes the bottom sheet. MUST be set to true when
505
+ * the bottom sheet is dismissible. Set to false when the user MUST interact with the
506
+ * bottom sheet content before proceeding.
507
+ */
154
508
  allowBackdropToClose: boolean;
509
+ /**
510
+ * Accessibility label for screen readers. MUST be set to describe the purpose of the
511
+ * bottom sheet (e.g., "Share options" or "Filter settings").
512
+ */
155
513
  a11yLabel?: null | string;
514
+ /**
515
+ * Visual styles for this bottom sheet. See styling documentation for the structure. Omit
516
+ * to use default (unstyled) rendering.
517
+ */
156
518
  styles?: null | LayoutStyle<BottomSheetElements, ConditionalStyleTransition<BottomSheetTransitions, Predicates>>;
519
+ /** The content displayed within the bottom sheet. */
157
520
  children: Children[];
158
521
  }
522
+ /**
523
+ * Transition styles for the BottomSheet node. Use to animate style changes smoothly,
524
+ * particularly the slide-up entrance animation.
525
+ */
159
526
  export interface BottomSheetTransitions {
527
+ /**
528
+ * Transition properties for the bottom sheet content area. Specifies which style
529
+ * properties should animate and their duration/easing when values change.
530
+ */
160
531
  own?: null | BottomSheetStyles;
532
+ /** Transition properties for the bottom sheet wrapper (backdrop). */
161
533
  wrapper?: null | BottomSheetWrapperStyles;
162
534
  }
163
- export type OrderableWhenCondition = "is" | "is-not" | "is-below" | "is-above";
535
+ /**
536
+ * Condition operators for numeric/orderable comparisons. Use these to compare
537
+ * values that have a natural ordering (numbers, positions, breakpoints).
538
+ * Serialized as kebab-case strings: "is", "is-not", "is-below", "is-above".
539
+ */
540
+ export type OrderableWhenCondition =
541
+ /** True when the value equals the specified value. */
542
+ "is"
543
+ /** True when the value does not equal the specified value. */
544
+ | "is-not"
545
+ /** True when the value is less than the specified value. */
546
+ | "is-below"
547
+ /** True when the value is greater than the specified value. */
548
+ | "is-above";
549
+ /**
550
+ * Tests the viewport width against a breakpoint value. Use for
551
+ * responsive layouts that adapt to different screen sizes. The value MUST
552
+ * be a string representation of a number in platform units.
553
+ */
164
554
  export interface BreakpointPredicate {
555
+ /** The comparison operator. Use "is-above" or "is-below" for responsive breakpoints. */
165
556
  condition: OrderableWhenCondition;
557
+ /**
558
+ * The breakpoint width in platform units to compare against. MUST be a string
559
+ * representation of a number, e.g. "768".
560
+ */
166
561
  value: string;
167
562
  }
563
+ /** A styling block with only a default state. Used for non-interactive elements. */
168
564
  export interface StatelessStylingBlock<StyleProperties> {
565
+ /** The styles to apply. Always required. */
169
566
  default: StyleProperties;
170
567
  }
568
+ /**
569
+ * Visual style properties for the CarouselDistribution container.
570
+ * Contains the standard style categories: container layout, background colors,
571
+ * border appearance, dimensions, flex child positioning, and spacing.
572
+ */
171
573
  export interface CarouselDistributionStyles {
574
+ /** Container layout styles (e.g. flex direction, alignment). */
172
575
  container?: null | ContainerStylingProperties;
576
+ /** Background color and gradient styles. */
173
577
  background?: null | BackgroundStylingProperties;
578
+ /** Border width, color, and radius styles. */
174
579
  border?: null | BorderStylingProperties;
580
+ /** Width and height dimension styles. */
175
581
  dimension?: null | DimensionStylingProperties;
582
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
176
583
  flexChild?: null | FlexChildStylingProperties;
584
+ /** Padding and margin spacing styles. */
177
585
  spacing?: null | SpacingStylingProperties;
178
586
  }
587
+ /**
588
+ * Styling elements for the CarouselDistribution container.
589
+ * The `own` array contains stateless styling blocks applied to the carousel container itself.
590
+ */
179
591
  export interface CarouselDistributionElements {
592
+ /** Array of stateless styling blocks for the carousel container. */
180
593
  own: StatelessStylingBlock<CarouselDistributionStyles>[];
181
594
  }
182
- export type PeekThroughSize = {
595
+ /**
596
+ * The size of the peek-through area showing adjacent carousel items.
597
+ * Controls how much of the next/previous items are visible at the edges.
598
+ */
599
+ export type PeekThroughSize =
600
+ /** A fixed size in platform units (px on Web, pt on iOS, dp on Android) for the peek-through area. */
601
+ {
183
602
  type: "Fixed";
184
603
  value: number;
185
- } | {
604
+ }
605
+ /** A percentage-based size for the peek-through area, relative to the carousel width. */
606
+ | {
186
607
  type: "Percentage";
187
608
  value: number;
188
609
  };
610
+ /**
611
+ * Presents offers in a horizontally scrollable carousel.
612
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
613
+ * Users can swipe left/right to browse offers.
614
+ *
615
+ * Use `viewableItems` to control how many items are visible at once per breakpoint.
616
+ * Use `peekThroughSize` to hint that more items exist by showing partial adjacent items.
617
+ */
189
618
  export interface CarouselDistributionModel<Predicates> {
619
+ /**
620
+ * Configuration for how many items are visible at once.
621
+ * Provided as an array of values for different breakpoints.
622
+ */
190
623
  viewableItems: number[];
624
+ /**
625
+ * How much of the next/previous items peek into view.
626
+ * Provided as an array of PeekThroughSize values for different breakpoints.
627
+ * Use Fixed for absolute values in platform units or Percentage for relative values.
628
+ */
191
629
  peekThroughSize: PeekThroughSize[];
630
+ /**
631
+ * Visual styles for the carousel container.
632
+ * Uses the LayoutStyle wrapper with conditional style transitions.
633
+ */
192
634
  styles?: null | LayoutStyle<CarouselDistributionElements, ConditionalStyleTransition<CarouselDistributionTransitions, Predicates>>;
193
635
  }
636
+ /** Transition styles for animating CarouselDistribution style changes. */
194
637
  export interface CarouselDistributionTransitions {
638
+ /** Transition properties for the carousel container's own styles. */
195
639
  own?: null | CarouselDistributionStyles;
196
640
  }
641
+ /**
642
+ * Visual style properties for a catalog quantity option.
643
+ * Controls the layout and appearance of the selectable quantity chip.
644
+ */
197
645
  export interface CatalogQuantityStyles {
646
+ /** Layout properties for the flex container. */
198
647
  container?: null | ContainerStylingProperties;
648
+ /** Background color and image properties. */
199
649
  background?: null | BackgroundStylingProperties;
650
+ /** Border radius, color, width and style. */
200
651
  border?: null | BorderStylingProperties;
652
+ /** Width, height and rotation properties. */
201
653
  dimension?: null | DimensionStylingProperties;
654
+ /** Properties controlling behaviour as a flex child. */
202
655
  flexChild?: null | FlexChildStylingProperties;
656
+ /** Padding, margin and offset properties. */
203
657
  spacing?: null | SpacingStylingProperties;
204
658
  }
659
+ /**
660
+ * Breakpoint-specific style elements for a catalog quantity option.
661
+ * Provides separate style arrays for the default state, the active (selected) state,
662
+ * and the passive (unselected) state.
663
+ */
205
664
  export interface CatalogQuantityOptionElements {
665
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
206
666
  own: BasicStateStylingBlock<CatalogQuantityStyles>[];
667
+ /**
668
+ * Style blocks applied when this option is the currently selected (active) quantity.
669
+ * Array represents breakpoint-specific styles.
670
+ */
207
671
  active?: null | BasicStateStylingBlock<CatalogQuantityStyles>[];
672
+ /**
673
+ * Style blocks applied when this option is not selected (passive/unselected).
674
+ * Array represents breakpoint-specific styles.
675
+ */
208
676
  passive?: null | BasicStateStylingBlock<CatalogQuantityStyles>[];
209
677
  }
678
+ /**
679
+ * A selectable quantity option within a catalog radio group or quantity picker.
680
+ * Represents a single discrete quantity value the user can choose (e.g., "1", "2", "5").
681
+ * Each option renders a template node (typically a label) and tracks its own
682
+ * active/passive visual state.
683
+ */
210
684
  export interface CatalogQuantityOptionModel<NodeTemplate, Predicates> {
685
+ /**
686
+ * Accessibility label read by screen readers to describe this quantity option
687
+ * (e.g., "Select quantity 2").
688
+ */
211
689
  a11yLabel?: null | string;
690
+ /**
691
+ * The numeric quantity value this option represents. When selected, this value
692
+ * is used as the chosen quantity for the catalog item.
693
+ */
212
694
  quantity: number;
695
+ /**
696
+ * Template node rendered as the visual content of this option, typically a text
697
+ * label displaying the quantity number.
698
+ */
213
699
  template: NodeTemplate;
700
+ /**
701
+ * Responsive and conditional styling for this option, including breakpoint-specific
702
+ * element styles and animated transitions for default, active, and passive states.
703
+ */
214
704
  styles?: null | LayoutStyle<CatalogQuantityOptionElements, ConditionalStyleTransition<CatalogQuantityOptionTransitions, Predicates>>;
215
705
  }
706
+ /**
707
+ * Transition properties for animating style changes on a catalog quantity option
708
+ * across its default, active, and passive states.
709
+ */
216
710
  export interface CatalogQuantityOptionTransitions {
711
+ /** Transition properties for the primary element. */
217
712
  own?: null | CatalogQuantityStyles;
713
+ /** Transition properties for the active (selected) state. */
218
714
  active?: null | CatalogQuantityStyles;
715
+ /** Transition properties for the passive (unselected) state. */
219
716
  passive?: null | CatalogQuantityStyles;
220
717
  }
718
+ /**
719
+ * Visual style properties for the radio group's outer container.
720
+ * Controls the overall layout and appearance of the group wrapper.
721
+ */
221
722
  export interface CatalogRadioGroupStyles {
723
+ /** Layout properties for the flex container. */
222
724
  container?: null | ContainerStylingProperties;
725
+ /** Background color and image properties. */
223
726
  background?: null | BackgroundStylingProperties;
727
+ /** Border radius, color, width and style. */
224
728
  border?: null | BorderStylingProperties;
729
+ /** Width, height and rotation properties. */
225
730
  dimension?: null | DimensionStylingProperties;
731
+ /** Properties controlling behaviour as a flex child. */
226
732
  flexChild?: null | FlexChildStylingProperties;
733
+ /** Padding, margin and offset properties. */
227
734
  spacing?: null | SpacingStylingProperties;
228
735
  }
736
+ /**
737
+ * Visual style properties for the container wrapping each individual
738
+ * radio option row (radio button + option content).
739
+ */
229
740
  export interface OptionContainerStyles {
741
+ /** Layout properties for the flex container. */
230
742
  container?: null | ContainerStylingProperties;
743
+ /** Background color and image properties. */
231
744
  background?: null | BackgroundStylingProperties;
745
+ /** Border radius, color, width and style. */
232
746
  border?: null | BorderStylingProperties;
747
+ /** Width, height and rotation properties. */
233
748
  dimension?: null | DimensionStylingProperties;
749
+ /** Properties controlling behaviour as a flex child. */
234
750
  flexChild?: null | FlexChildStylingProperties;
751
+ /** Padding, margin and offset properties. */
235
752
  spacing?: null | SpacingStylingProperties;
236
753
  }
754
+ /**
755
+ * Visual style properties for the outer ring of a radio button indicator.
756
+ * This is the circular border element surrounding the inner filled circle.
757
+ */
237
758
  export interface RadioOuterStyles {
759
+ /** Layout properties for the flex container. */
238
760
  container?: null | ContainerStylingProperties;
761
+ /** Background color and image properties. */
239
762
  background?: null | BackgroundStylingProperties;
763
+ /** Border radius, color, width and style. */
240
764
  border?: null | BorderStylingProperties;
765
+ /** Width, height and rotation properties. */
241
766
  dimension?: null | DimensionStylingProperties;
767
+ /** Properties controlling behaviour as a flex child. */
242
768
  flexChild?: null | FlexChildStylingProperties;
769
+ /** Padding, margin and offset properties. */
243
770
  spacing?: null | SpacingStylingProperties;
244
771
  }
772
+ /**
773
+ * Visual style properties for the inner filled circle of a radio button indicator.
774
+ * This dot appears inside the outer ring when the option is selected.
775
+ */
245
776
  export interface RadioInnerStyles {
777
+ /** Background color and image properties. */
246
778
  background?: null | BackgroundStylingProperties;
779
+ /** Border radius, color, width and style. */
247
780
  border?: null | BorderStylingProperties;
781
+ /** Properties controlling behaviour as a flex child. */
248
782
  flexChild?: null | FlexChildStylingProperties;
249
783
  }
784
+ /**
785
+ * Breakpoint-specific style elements for the radio group and all its sub-elements.
786
+ * Provides separate style arrays for the group container, option rows, and both
787
+ * checked and unchecked states of the radio button's outer ring and inner dot.
788
+ */
250
789
  export interface CatalogRadioGroupElements {
790
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
251
791
  own: BasicStateStylingBlock<CatalogRadioGroupStyles>[];
792
+ /** Style blocks for each option's row container. Array represents breakpoint-specific styles. */
252
793
  optionContainer?: null | BasicStateStylingBlock<OptionContainerStyles>[];
794
+ /**
795
+ * Style blocks for the radio button outer ring in the unchecked state.
796
+ * Array represents breakpoint-specific styles.
797
+ */
253
798
  radioButtonOuter?: null | BasicStateStylingBlock<RadioOuterStyles>[];
799
+ /**
800
+ * Style blocks for the radio button outer ring in the checked (selected) state.
801
+ * Array represents breakpoint-specific styles.
802
+ */
254
803
  radioButtonOuterChecked?: null | BasicStateStylingBlock<RadioOuterStyles>[];
804
+ /**
805
+ * Style blocks for the radio button inner dot in the unchecked state.
806
+ * Array represents breakpoint-specific styles.
807
+ */
255
808
  radioButtonInner?: null | BasicStateStylingBlock<RadioInnerStyles>[];
809
+ /**
810
+ * Style blocks for the radio button inner dot in the checked (selected) state.
811
+ * Array represents breakpoint-specific styles.
812
+ */
256
813
  radioButtonInnerChecked?: null | BasicStateStylingBlock<RadioInnerStyles>[];
257
814
  }
258
- export type InputValidation = {
815
+ /**
816
+ * Validation rules that can be applied to input fields. MUST be an object
817
+ * with a "type" field and a "value" field. Currently only "Required"
818
+ * validation is supported. Use to enforce that users provide input before
819
+ * submitting.
820
+ */
821
+ export type InputValidation =
822
+ /**
823
+ * Validates that the input field is not empty. The value contains the
824
+ * error message configuration to show when validation fails.
825
+ */
826
+ {
259
827
  type: "Required";
260
828
  value: InputRequiredValidation;
261
829
  };
830
+ /**
831
+ * A radio button group for selecting a quantity from a set of predefined options
832
+ * in a catalog/add-to-cart flow. Renders a list of mutually exclusive radio buttons,
833
+ * each associated with a CatalogQuantityOption. Only one option may be selected at a time.
834
+ * Supports input validation rules to enforce selection constraints.
835
+ */
262
836
  export interface CatalogRadioGroupModel<NodeOptionTemplate, Predicates> {
837
+ /**
838
+ * Accessibility label read by screen readers to describe the radio group's purpose
839
+ * (e.g., "Select quantity").
840
+ */
263
841
  a11yLabel?: null | string;
842
+ /**
843
+ * Responsive and conditional styling for this radio group, including breakpoint-specific
844
+ * element styles and animated transitions for the group, option containers, and
845
+ * radio button indicators in both checked and unchecked states.
846
+ */
264
847
  styles?: null | LayoutStyle<CatalogRadioGroupElements, ConditionalStyleTransition<CatalogRadioGroupTransitions, Predicates>>;
848
+ /**
849
+ * Validation rules applied to the radio group input. Can enforce constraints such as
850
+ * requiring a selection before the form can be submitted.
851
+ */
265
852
  validations: InputValidation[];
853
+ /**
854
+ * The list of selectable quantity options displayed as radio buttons.
855
+ * Each option contains a quantity value and a template node for its visual content.
856
+ */
266
857
  options: CatalogQuantityOptionModel<NodeOptionTemplate, Predicates>[];
267
858
  }
859
+ /**
860
+ * Transition properties for animating style changes on the radio group
861
+ * and all its sub-elements across checked and unchecked states.
862
+ */
268
863
  export interface CatalogRadioGroupTransitions {
864
+ /** Transition properties for the primary element. */
269
865
  own?: null | CatalogRadioGroupStyles;
866
+ /** Transition properties for the option row container. */
270
867
  option_container?: null | OptionContainerStyles;
868
+ /** Transition properties for the radio button outer ring (unchecked state). */
271
869
  radio_button_outer?: null | RadioOuterStyles;
870
+ /** Transition properties for the radio button outer ring (checked state). */
272
871
  radio_button_outer_checked?: null | RadioOuterStyles;
872
+ /** Transition properties for the radio button inner dot (unchecked state). */
273
873
  radio_button_inner?: null | RadioInnerStyles;
874
+ /** Transition properties for the radio button inner dot (checked state). */
274
875
  radio_button_inner_checked?: null | RadioInnerStyles;
275
876
  }
877
+ /**
878
+ * Visual style properties for a catalog response button.
879
+ * Controls the button's layout, appearance, and sizing.
880
+ */
276
881
  export interface CatalogResponseButtonStyles {
882
+ /** Layout properties for the flex container. */
277
883
  container?: null | ContainerStylingProperties;
884
+ /** Background color and image properties. */
278
885
  background?: null | BackgroundStylingProperties;
886
+ /** Border radius, color, width and style. */
279
887
  border?: null | BorderStylingProperties;
888
+ /** Width, height and rotation properties. */
280
889
  dimension?: null | DimensionStylingProperties;
890
+ /** Properties controlling behaviour as a flex child. */
281
891
  flexChild?: null | FlexChildStylingProperties;
892
+ /** Padding, margin and offset properties. */
282
893
  spacing?: null | SpacingStylingProperties;
283
894
  }
895
+ /**
896
+ * Breakpoint-specific style elements for a catalog response button.
897
+ * Allows different visual treatments at different screen sizes and interaction states.
898
+ */
284
899
  export interface CatalogResponseButtonElements {
900
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
285
901
  own: BasicStateStylingBlock<CatalogResponseButtonStyles>[];
286
902
  }
903
+ /**
904
+ * A response button for catalog/add-to-cart interactions. Similar to CreativeResponse but
905
+ * designed for product catalog flows. When tapped, it sends a response keyed by `responseKey`
906
+ * back to the server to advance the catalog interaction.
907
+ */
287
908
  export interface CatalogResponseButtonModel<Children, Predicates> {
909
+ /**
910
+ * Responsive and conditional styling for this button, including breakpoint-specific
911
+ * element styles and animated transitions.
912
+ */
288
913
  styles?: null | LayoutStyle<CatalogResponseButtonElements, ConditionalStyleTransition<CatalogResponseButtonTransitions, Predicates>>;
914
+ /**
915
+ * Child nodes rendered inside this button. Typically contains text labels or icons
916
+ * describing the action (e.g., "Add to Cart", product name).
917
+ */
289
918
  children: Children[];
290
919
  }
920
+ /** Transition properties for animating style changes on a catalog response button. */
291
921
  export interface CatalogResponseButtonTransitions {
922
+ /** Transition properties for the primary element. */
292
923
  own?: null | CatalogResponseButtonStyles;
293
924
  }
925
+ /**
926
+ * Visual style properties for the stacked collection container.
927
+ * Controls the layout and appearance of the outer wrapper that holds
928
+ * the stacked catalog item cards.
929
+ */
294
930
  export interface CatalogStackedCollectionStyles {
931
+ /** Layout properties for the flex container. */
295
932
  container?: null | ContainerStylingProperties;
933
+ /** Background color and image properties. */
296
934
  background?: null | BackgroundStylingProperties;
935
+ /** Border radius, color, width and style. */
297
936
  border?: null | BorderStylingProperties;
937
+ /** Width, height and rotation properties. */
298
938
  dimension?: null | DimensionStylingProperties;
939
+ /** Properties controlling behaviour as a flex child. */
299
940
  flexChild?: null | FlexChildStylingProperties;
941
+ /** Padding, margin and offset properties. */
300
942
  spacing?: null | SpacingStylingProperties;
301
943
  }
944
+ /**
945
+ * Breakpoint-specific style elements for a catalog stacked collection.
946
+ * Uses stateless styling blocks since this is a static container without
947
+ * interactive states.
948
+ */
302
949
  export interface CatalogStackedCollectionElements {
950
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
303
951
  own: StatelessStylingBlock<CatalogStackedCollectionStyles>[];
304
952
  }
953
+ /**
954
+ * A vertically stacked collection of catalog items for add-to-cart flows.
955
+ * Renders each catalog product as a card in a vertical stack layout, where items
956
+ * are presented one below another. The visual content of each item is defined by
957
+ * a reusable template node that is instantiated per product in the collection.
958
+ */
305
959
  export interface CatalogStackedCollectionModel<NodeTemplate, Predicates> {
960
+ /**
961
+ * Responsive and conditional styling for this collection container, including
962
+ * breakpoint-specific element styles and animated transitions.
963
+ */
306
964
  styles?: null | LayoutStyle<CatalogStackedCollectionElements, ConditionalStyleTransition<CatalogStackedCollectionTransitions, Predicates>>;
965
+ /**
966
+ * Template node used to render each catalog item in the stacked collection.
967
+ * This template is instantiated once per product, with product-specific data
968
+ * bound at runtime.
969
+ */
307
970
  template: NodeTemplate;
308
971
  }
972
+ /** Transition properties for animating style changes on a catalog stacked collection. */
309
973
  export interface CatalogStackedCollectionTransitions {
974
+ /** Transition properties for the primary element. */
310
975
  own?: null | CatalogStackedCollectionStyles;
311
976
  }
977
+ /**
978
+ * Visual style properties for the CloseButton.
979
+ * Contains the standard style categories: container layout, background colors,
980
+ * border appearance, dimensions, flex child positioning, and spacing.
981
+ */
312
982
  export interface CloseButtonStyles {
983
+ /** Container layout styles (e.g. flex direction, alignment). */
313
984
  container?: null | ContainerStylingProperties;
985
+ /** Background color and gradient styles. */
314
986
  background?: null | BackgroundStylingProperties;
987
+ /** Border width, color, and radius styles. */
315
988
  border?: null | BorderStylingProperties;
989
+ /** Width and height dimension styles. */
316
990
  dimension?: null | DimensionStylingProperties;
991
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
317
992
  flexChild?: null | FlexChildStylingProperties;
993
+ /** Padding and margin spacing styles. */
318
994
  spacing?: null | SpacingStylingProperties;
319
995
  }
996
+ /**
997
+ * Styling elements for the CloseButton.
998
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed)
999
+ * applied to the close button itself.
1000
+ */
320
1001
  export interface CloseButtonElements {
1002
+ /**
1003
+ * Array of state-dependent styling blocks for the close button.
1004
+ * Each block targets a specific interaction state (default, pressed, etc.).
1005
+ */
321
1006
  own: BasicStateStylingBlock<CloseButtonStyles>[];
322
1007
  }
1008
+ /**
1009
+ * A button that closes/dismisses the layout when clicked.
1010
+ * Typically contains a StaticIcon with the 'Close' icon.
1011
+ *
1012
+ * MUST include child content (usually a StaticIcon with name `"Close"`).
1013
+ * Do NOT use CreativeResponse for dismissal; use CloseButton instead so that
1014
+ * the dismiss action is correctly tracked.
1015
+ */
323
1016
  export interface CloseButtonModel<Children, Predicates> {
1017
+ /** Visual styles for the close button. Uses the LayoutStyle wrapper with conditional style transitions. */
324
1018
  styles?: null | LayoutStyle<CloseButtonElements, ConditionalStyleTransition<CloseButtonTransitions, Predicates>>;
1019
+ /**
1020
+ * Child nodes forming the button content. Typically a StaticIcon with name `"Close"`.
1021
+ * MUST contain at least one child to display the close icon or label.
1022
+ */
325
1023
  children: Children[];
1024
+ /**
1025
+ * Optional dismissal method configuration.
1026
+ * Controls how the dismissal is reported for analytics purposes.
1027
+ */
326
1028
  dismissalMethod?: null | string;
327
1029
  }
1030
+ /**
1031
+ * Transition styles for animating CloseButton style changes.
1032
+ * Defines which style properties should animate when the button's conditional styles change.
1033
+ */
328
1034
  export interface CloseButtonTransitions {
1035
+ /** Transition properties for the close button's own styles. */
329
1036
  own?: null | CloseButtonStyles;
330
1037
  }
1038
+ /**
1039
+ * Available style categories for the Column element. Each optional field enables a specific
1040
+ * category of visual styling. Omit a field to leave that category unstyled.
1041
+ */
331
1042
  export interface ColumnStyle {
1043
+ /**
1044
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1045
+ * MUST be used to control how children are arranged within the column.
1046
+ */
332
1047
  container?: null | ContainerStylingProperties;
1048
+ /**
1049
+ * Background color and image properties. Use to set a solid color, gradient, or image
1050
+ * behind the column content.
1051
+ */
333
1052
  background?: null | BackgroundStylingProperties;
1053
+ /**
1054
+ * Border radius, color, width and style properties. Use to add visible borders or
1055
+ * rounded corners to the column.
1056
+ */
334
1057
  border?: null | BorderStylingProperties;
1058
+ /**
1059
+ * Width, height and rotation properties. Use to explicitly size the column or apply
1060
+ * rotation transforms. Do NOT set width/height if the column should size to its content.
1061
+ */
335
1062
  dimension?: null | DimensionStylingProperties;
1063
+ /**
1064
+ * Properties controlling this element's behaviour as a child of a flex container.
1065
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1066
+ */
336
1067
  flexChild?: null | FlexChildStylingProperties;
1068
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the column. */
337
1069
  spacing?: null | SpacingStylingProperties;
338
1070
  }
1071
+ /**
1072
+ * Styleable elements of the Column node. The Column has a single styleable element: its own
1073
+ * container.
1074
+ */
339
1075
  export interface ColumnElements {
1076
+ /**
1077
+ * Style blocks for the column container itself. The array represents breakpoint-specific
1078
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1079
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1080
+ */
340
1081
  own: BasicStateStylingBlock<ColumnStyle>[];
341
1082
  }
1083
+ /**
1084
+ * A vertical flex container that arranges its children in a column (top to bottom). Use for
1085
+ * vertical layouts. Children are laid out along the vertical axis by default. To control
1086
+ * alignment and distribution, configure the container styles. Do NOT nest Columns
1087
+ * unnecessarily when a single Column with appropriate styling would suffice.
1088
+ */
342
1089
  export interface ColumnModel<Children, Predicates> {
1090
+ /**
1091
+ * Accessibility label for screen readers. Omit if the column is purely decorative or its
1092
+ * children already provide sufficient accessible labels. MUST be set when the column
1093
+ * conveys meaning not available from its children alone.
1094
+ */
343
1095
  a11yLabel?: null | string;
1096
+ /**
1097
+ * Visual styles for this column. See styling documentation for the structure. Omit to use
1098
+ * default (unstyled) rendering.
1099
+ */
344
1100
  styles?: null | LayoutStyle<ColumnElements, ConditionalStyleTransition<ColumnTransitions, Predicates>>;
1101
+ /**
1102
+ * Child nodes rendered vertically within this column.
1103
+ * Children are laid out top to bottom in source order.
1104
+ */
345
1105
  children: Children[];
346
1106
  }
1107
+ /** Transition styles for the Column node. Use to animate style changes smoothly. */
347
1108
  export interface ColumnTransitions {
1109
+ /**
1110
+ * Transition properties for the column container. Specifies which style properties
1111
+ * should animate and their duration/easing when values change.
1112
+ */
348
1113
  own?: null | ColumnStyle;
349
1114
  }
350
- export type ExistenceWhenCondition = "exists" | "not-exists";
1115
+ /**
1116
+ * Condition operators for checking whether a value exists. Use these to
1117
+ * conditionally render content based on whether data is present.
1118
+ * Serialized as kebab-case strings: "exists", "not-exists".
1119
+ */
1120
+ export type ExistenceWhenCondition =
1121
+ /** True when the value is present and non-empty. */
1122
+ "exists"
1123
+ /** True when the value is absent or empty. */
1124
+ | "not-exists";
1125
+ /**
1126
+ * Tests whether a creative data attribute exists. Use to conditionally show
1127
+ * content only when specific creative data is available. Do NOT use this for
1128
+ * non-creative data checks.
1129
+ */
351
1130
  export interface CreativeCopyPredicate {
1131
+ /** Whether to check for existence or non-existence of the creative attribute. */
352
1132
  condition: ExistenceWhenCondition;
1133
+ /**
1134
+ * The dot-notation path to the creative attribute, e.g.
1135
+ * "creative.socialProof.number". MUST use dot notation to reference
1136
+ * nested creative data fields.
1137
+ */
353
1138
  value: string;
354
1139
  }
1140
+ /**
1141
+ * Visual style properties for the CreativeResponse button.
1142
+ * Contains the standard style categories: container layout, background colors,
1143
+ * border appearance, dimensions, flex child positioning, and spacing.
1144
+ */
355
1145
  export interface CreativeResponseStyles {
1146
+ /** Container layout styles (e.g. flex direction, alignment). */
356
1147
  container?: null | ContainerStylingProperties;
1148
+ /** Background color and gradient styles. */
357
1149
  background?: null | BackgroundStylingProperties;
1150
+ /** Border width, color, and radius styles. */
358
1151
  border?: null | BorderStylingProperties;
1152
+ /** Width and height dimension styles. */
359
1153
  dimension?: null | DimensionStylingProperties;
1154
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
360
1155
  flexChild?: null | FlexChildStylingProperties;
1156
+ /** Padding and margin spacing styles. */
361
1157
  spacing?: null | SpacingStylingProperties;
362
1158
  }
1159
+ /**
1160
+ * Styling elements for the CreativeResponse button.
1161
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
1162
+ * applied to the button itself.
1163
+ */
363
1164
  export interface CreativeResponseElements {
1165
+ /**
1166
+ * Array of state-dependent styling blocks for the button.
1167
+ * Each block targets a specific interaction state (default, pressed, disabled, etc.).
1168
+ */
364
1169
  own: BasicStateStylingBlock<CreativeResponseStyles>[];
365
1170
  }
366
- export type LinkOpenTarget = "internally" | "externally";
1171
+ /**
1172
+ * Controls how links are opened when clicked. MUST be one of the valid
1173
+ * kebab-case string values. Determines the navigation behavior when a
1174
+ * user activates a link action.
1175
+ */
1176
+ export type LinkOpenTarget =
1177
+ /**
1178
+ * Opens the link within the current context (in-app webview or same
1179
+ * window). Use for links that should keep the user in the application.
1180
+ */
1181
+ "internally"
1182
+ /**
1183
+ * Opens the link in the system browser. Use for external URLs that
1184
+ * should leave the application context.
1185
+ */
1186
+ | "externally";
1187
+ /**
1188
+ * A button that triggers a creative response (positive or negative).
1189
+ * This is the primary call-to-action node for offer interactions.
1190
+ * Children inside this node become the button content.
1191
+ *
1192
+ * MUST have a `responseKey` of either `"positive"` or `"negative"`.
1193
+ * Use `"positive"` for accept/CTA buttons and `"negative"` for decline/dismiss buttons.
1194
+ * Do NOT use this node for non-response actions like navigation; use StaticLink or ButtonStateTrigger instead.
1195
+ */
367
1196
  export interface CreativeResponseModel<Children, Predicates> {
1197
+ /**
1198
+ * The response type. Use `"positive"` for accept/CTA buttons, `"negative"` for decline/dismiss buttons.
1199
+ * Do NOT use arbitrary strings; only `"positive"` and `"negative"` are valid.
1200
+ */
368
1201
  responseKey: string;
1202
+ /** Visual styles for the button. Uses the LayoutStyle wrapper with conditional style transitions. */
369
1203
  styles?: null | LayoutStyle<CreativeResponseElements, ConditionalStyleTransition<CreativeResponseTransitions, Predicates>>;
1204
+ /**
1205
+ * Controls how the response URL is opened when clicked.
1206
+ * If omitted, the default link opening behaviour is used.
1207
+ */
370
1208
  openLinks?: null | LinkOpenTarget;
1209
+ /**
1210
+ * Child nodes that form the button's visible content.
1211
+ * Typically contains a BasicText node with the CTA label.
1212
+ * MUST contain at least one child to display button content.
1213
+ */
371
1214
  children: Children[];
372
1215
  }
1216
+ /**
1217
+ * Transition styles for animating CreativeResponse style changes.
1218
+ * Defines which style properties should animate when the button's conditional styles change.
1219
+ */
373
1220
  export interface CreativeResponseTransitions {
1221
+ /** Transition properties for the button's own styles. */
374
1222
  own?: null | CreativeResponseStyles;
375
1223
  }
1224
+ /**
1225
+ * Tests a custom state value. Custom states are set by state trigger nodes
1226
+ * such as ButtonStateTrigger, ToggleButtonStateTrigger, and similar components.
1227
+ * The value is an integer that represents the current state.
1228
+ */
376
1229
  export interface CustomStatePredicate {
1230
+ /**
1231
+ * The custom state key to check. MUST match the key used in the
1232
+ * corresponding state trigger node.
1233
+ */
377
1234
  key: string;
1235
+ /** The comparison operator. */
378
1236
  condition: OrderableWhenCondition;
1237
+ /** The integer value to compare the custom state against. */
379
1238
  value: number;
380
1239
  }
381
- export type EqualityWhenCondition = "is" | "is-not";
1240
+ /**
1241
+ * Condition operators for equality comparisons. Use these when you only need
1242
+ * to test if two values are equal or not equal.
1243
+ * Serialized as kebab-case strings: "is", "is-not".
1244
+ */
1245
+ export type EqualityWhenCondition =
1246
+ /** True when the value equals the specified value. */
1247
+ "is"
1248
+ /** True when the value does not equal the specified value. */
1249
+ | "is-not";
1250
+ /**
1251
+ * Tests whether dark mode is active. Use to provide different styling or
1252
+ * content for light and dark modes.
1253
+ */
382
1254
  export interface DarkModePredicate {
1255
+ /** Use "is" to check if dark mode matches the value, "is-not" for the inverse. */
383
1256
  condition: EqualityWhenCondition;
1257
+ /**
1258
+ * The boolean value to compare against. Set to true to test for dark mode,
1259
+ * false to test for light mode.
1260
+ */
384
1261
  value: boolean;
385
1262
  }
1263
+ /** Visual styles for the DataIcon node. */
386
1264
  export interface DataIconStyles {
1265
+ /** Typography properties. */
387
1266
  text?: null | TextStylingProperties;
1267
+ /** Width, height and rotation properties. */
388
1268
  dimension?: null | DimensionStylingProperties;
1269
+ /** Properties controlling behaviour as a flex child. */
389
1270
  flexChild?: null | FlexChildStylingProperties;
1271
+ /** Padding, margin and offset properties. */
390
1272
  spacing?: null | SpacingStylingProperties;
1273
+ /** Background color and image properties. */
391
1274
  background?: null | BackgroundStylingProperties;
1275
+ /** Border radius, color, width and style. */
392
1276
  border?: null | BorderStylingProperties;
393
1277
  }
1278
+ /** Style elements for the DataIcon node. */
394
1279
  export interface DataIconElements {
1280
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
395
1281
  own: BasicStateStylingBlock<DataIconStyles>[];
396
1282
  }
1283
+ /** Renders an icon from creative data. The icon is resolved from the creative object using the iconKey. */
397
1284
  export interface DataIconModel<Predicates> {
1285
+ /** Visual styles for the icon. */
398
1286
  styles?: null | LayoutStyle<DataIconElements, ConditionalStyleTransition<DataIconTransitions, Predicates>>;
1287
+ /** The key identifying which icon from the creative data to display. */
399
1288
  iconKey: string;
400
1289
  }
1290
+ /** Transition definitions for the DataIcon node. */
401
1291
  export interface DataIconTransitions {
1292
+ /** Transition properties for the primary element. */
402
1293
  own?: null | DataIconStyles;
403
1294
  }
1295
+ /** Visual styles for the DataImage node. */
404
1296
  export interface DataImageStyles {
1297
+ /** Background color and image properties. */
405
1298
  background?: null | BackgroundStylingProperties;
1299
+ /** Border radius, color, width and style. */
406
1300
  border?: null | BorderStylingProperties;
1301
+ /** Width, height and rotation properties. */
407
1302
  dimension?: null | DimensionStylingProperties;
1303
+ /** Properties controlling behaviour as a flex child. */
408
1304
  flexChild?: null | FlexChildStylingProperties;
1305
+ /** Padding, margin and offset properties. */
409
1306
  spacing?: null | SpacingStylingProperties;
410
1307
  }
1308
+ /** Style elements for the DataImage node. */
411
1309
  export interface DataImageElements {
1310
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
412
1311
  own: BasicStateStylingBlock<DataImageStyles>[];
413
1312
  }
1313
+ /** Renders an image from creative data. The image URL is resolved from the creative object using the imageKey. Use for offer-specific images. */
414
1314
  export interface DataImageModel<Predicates> {
1315
+ /** Visual styles for the image element. */
415
1316
  styles?: null | LayoutStyle<DataImageElements, ConditionalStyleTransition<DataImageTransitions, Predicates>>;
1317
+ /** The key identifying which image from the creative data to display. */
416
1318
  imageKey: string;
417
1319
  }
1320
+ /** Transition definitions for the DataImage node. */
418
1321
  export interface DataImageTransitions {
1322
+ /** Transition properties for the primary element. */
419
1323
  own?: null | DataImageStyles;
420
1324
  }
421
- export type DomainStateKey = "offerComplete";
1325
+ /**
1326
+ * Keys for accessing application domain state in the full layout schema
1327
+ * context. Domain state represents high-level application state managed by
1328
+ * the host application. Serialized as camelCase strings.
1329
+ */
1330
+ export type DomainStateKey =
1331
+ /**
1332
+ * Indicates whether the current offer has been completed by the user.
1333
+ * Use to show post-completion content or hide offer-specific elements.
1334
+ */
1335
+ "offerComplete";
1336
+ /**
1337
+ * Tests application domain state. Domain state is managed by the host
1338
+ * application and represents high-level application state such as whether
1339
+ * an offer is complete or checkout state.
1340
+ */
422
1341
  export interface DomainStatePredicate<DomainStateKey> {
1342
+ /** The domain state key to check. */
423
1343
  key: DomainStateKey;
1344
+ /** The comparison operator. */
424
1345
  condition: OrderableWhenCondition;
1346
+ /** The integer value to compare the domain state against. */
425
1347
  value: number;
426
1348
  }
1349
+ /**
1350
+ * An escape hatch node that allows passing raw data through the DCUI schema.
1351
+ * Use sparingly for edge cases not covered by standard nodes.
1352
+ *
1353
+ * Do NOT use this as a general-purpose data container. Prefer standard DCUI nodes
1354
+ * whenever possible. This node bypasses schema validation for its data content.
1355
+ */
427
1356
  export interface EscapeHatchModel {
1357
+ /**
1358
+ * Raw string data to pass through.
1359
+ * The content is opaque to the DCUI renderer and is passed directly to the client.
1360
+ * MUST be a valid string. The client is responsible for parsing and interpreting the data.
1361
+ */
428
1362
  data: string;
429
1363
  }
1364
+ /** Settings for a bidirectional fade-in/fade-out transition. */
430
1365
  export interface FadeInOutTransitionSettings {
1366
+ /**
1367
+ * The transition duration in milliseconds. MUST be a positive integer.
1368
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1369
+ */
431
1370
  duration: number;
432
1371
  }
1372
+ /** Settings for a fade-in (enter) transition. */
433
1373
  export interface FadeInTransitionSettings {
1374
+ /**
1375
+ * The transition duration in milliseconds. MUST be a positive integer.
1376
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1377
+ */
434
1378
  duration: number;
435
1379
  }
1380
+ /** Settings for a fade-out (exit) transition. */
436
1381
  export interface FadeOutTransitionSettings {
1382
+ /**
1383
+ * The transition duration in milliseconds. MUST be a positive integer.
1384
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1385
+ */
437
1386
  duration: number;
438
1387
  }
1388
+ /**
1389
+ * Available style categories for the FlowRow element. Each optional field enables a specific
1390
+ * category of visual styling. Omit a field to leave that category unstyled.
1391
+ */
439
1392
  export interface FlowRowStyle {
1393
+ /**
1394
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1395
+ * MUST be used to control how children are arranged and wrapped within the flow row.
1396
+ */
440
1397
  container?: null | ContainerStylingProperties;
1398
+ /**
1399
+ * Background color and image properties. Use to set a solid color, gradient, or image
1400
+ * behind the flow row content.
1401
+ */
441
1402
  background?: null | BackgroundStylingProperties;
1403
+ /**
1404
+ * Border radius, color, width and style properties. Use to add visible borders or
1405
+ * rounded corners to the flow row.
1406
+ */
442
1407
  border?: null | BorderStylingProperties;
1408
+ /**
1409
+ * Width, height and rotation properties. Use to explicitly size the flow row or apply
1410
+ * rotation transforms. Do NOT set width/height if the flow row should size to its content.
1411
+ */
443
1412
  dimension?: null | DimensionStylingProperties;
1413
+ /**
1414
+ * Properties controlling this element's behaviour as a child of a flex container.
1415
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1416
+ */
444
1417
  flexChild?: null | FlexChildStylingProperties;
1418
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the flow row. */
445
1419
  spacing?: null | SpacingStylingProperties;
446
1420
  }
1421
+ /**
1422
+ * Styleable elements of the FlowRow node. The FlowRow has a single styleable element: its
1423
+ * own container.
1424
+ */
447
1425
  export interface FlowRowElements {
1426
+ /**
1427
+ * Style blocks for the flow row container itself. The array represents breakpoint-specific
1428
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1429
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1430
+ */
448
1431
  own: BasicStateStylingBlock<FlowRowStyle>[];
449
1432
  }
1433
+ /**
1434
+ * A horizontal flex container that wraps children to the next line when they exceed the
1435
+ * container width. Like Row but with line wrapping. Use when you have a dynamic number of
1436
+ * items that should flow naturally across lines (e.g., tags, chips, badges). Do NOT use
1437
+ * FlowRow when you need a single non-wrapping horizontal row; use Row instead.
1438
+ */
450
1439
  export interface FlowRowModel<Children, Predicates> {
1440
+ /**
1441
+ * Accessibility label for screen readers. Omit if the flow row is purely decorative or
1442
+ * its children already provide sufficient accessible labels. MUST be set when the flow
1443
+ * row conveys meaning not available from its children alone.
1444
+ */
451
1445
  a11yLabel?: null | string;
1446
+ /**
1447
+ * Visual styles for this flow row. See styling documentation for the structure. Omit to
1448
+ * use default (unstyled) rendering.
1449
+ */
452
1450
  styles?: null | LayoutStyle<FlowRowElements, ConditionalStyleTransition<FlowRowTransitions, Predicates>>;
1451
+ /**
1452
+ * Child nodes rendered horizontally with wrapping within this flow row. MUST contain at
1453
+ * least one child. Children wrap to the next line when they exceed the container width.
1454
+ */
453
1455
  children: Children[];
454
1456
  }
1457
+ /** Transition styles for the FlowRow node. Use to animate style changes smoothly. */
455
1458
  export interface FlowRowTransitions {
1459
+ /**
1460
+ * Transition properties for the flow row container. Specifies which style properties
1461
+ * should animate and their duration/easing when values change.
1462
+ */
456
1463
  own?: null | FlowRowStyle;
457
1464
  }
1465
+ /**
1466
+ * Visual style properties for the GroupedDistribution container.
1467
+ * Contains the standard style categories: container layout, background colors,
1468
+ * border appearance, dimensions, flex child positioning, and spacing.
1469
+ */
458
1470
  export interface GroupedDistributionStyles {
1471
+ /** Container layout styles (e.g. flex direction, alignment). */
459
1472
  container?: null | ContainerStylingProperties;
1473
+ /** Background color and gradient styles. */
460
1474
  background?: null | BackgroundStylingProperties;
1475
+ /** Border width, color, and radius styles. */
461
1476
  border?: null | BorderStylingProperties;
1477
+ /** Width and height dimension styles. */
462
1478
  dimension?: null | DimensionStylingProperties;
1479
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
463
1480
  flexChild?: null | FlexChildStylingProperties;
1481
+ /** Padding and margin spacing styles. */
464
1482
  spacing?: null | SpacingStylingProperties;
465
1483
  }
1484
+ /**
1485
+ * Styling elements for the GroupedDistribution container.
1486
+ * The `own` array contains stateless styling blocks applied to the grouped container itself.
1487
+ */
466
1488
  export interface GroupedDistributionElements {
1489
+ /** Array of stateless styling blocks for the grouped container. */
467
1490
  own: StatelessStylingBlock<GroupedDistributionStyles>[];
468
1491
  }
469
- export type Transition = {
1492
+ /**
1493
+ * A bidirectional transition that applies both when showing and hiding an
1494
+ * element. MUST be an object with a "type" field and a "settings" field.
1495
+ * Currently only "FadeInOut" is supported.
1496
+ */
1497
+ export type Transition =
1498
+ /**
1499
+ * A fade-in/fade-out transition. The element fades in when shown and
1500
+ * fades out when hidden, using the specified duration.
1501
+ */
1502
+ {
470
1503
  type: "FadeInOut";
471
1504
  settings: FadeInOutTransitionSettings;
472
1505
  };
1506
+ /**
1507
+ * Presents offers in groups, progressing through groups sequentially.
1508
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
1509
+ * Each group shows a fixed number of offers at once, and the user advances through groups.
1510
+ *
1511
+ * Pair with ProgressControl nodes for group navigation.
1512
+ * Use `viewableItems` to control how many offers appear per group at each breakpoint.
1513
+ */
473
1514
  export interface GroupedDistributionModel<Predicates> {
1515
+ /**
1516
+ * Configuration for how many items per group.
1517
+ * Provided as an array of values for different breakpoints.
1518
+ */
474
1519
  viewableItems: number[];
1520
+ /**
1521
+ * The transition animation between groups.
1522
+ * Defines how the current group exits and the next group enters.
1523
+ */
475
1524
  transition: Transition;
1525
+ /**
1526
+ * Visual styles for the grouped container.
1527
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1528
+ */
476
1529
  styles?: null | LayoutStyle<GroupedDistributionElements, ConditionalStyleTransition<GroupedDistributionTransitions, Predicates>>;
477
1530
  }
1531
+ /** Transition styles for animating GroupedDistribution style changes. */
478
1532
  export interface GroupedDistributionTransitions {
1533
+ /** Transition properties for the grouped container's own styles. */
479
1534
  own?: null | GroupedDistributionStyles;
480
1535
  }
1536
+ /**
1537
+ * Typography styling for inline text elements. A subset of TextStylingProperties
1538
+ * without line-level controls (lineHeight, horizontalTextAlign, lineLimit).
1539
+ * All fields are optional. Only include the properties you want to override.
1540
+ */
481
1541
  export interface InlineTextStylingProperties {
1542
+ /** The text color. Uses themed values for light/dark mode support. */
482
1543
  textColor?: null | ThemeColor;
1544
+ /** Font size in platform units (px on Web, pt on iOS, dp on Android). */
483
1545
  fontSize?: null | number;
1546
+ /** The font family name. Use 'rokt-icons' for icon fonts. */
484
1547
  fontFamily?: null | string;
1548
+ /** The weight (boldness) of the font. */
485
1549
  fontWeight?: null | FontWeight;
1550
+ /** Vertical alignment of text relative to the baseline. */
486
1551
  baselineTextAlign?: null | FontBaselineAlignment;
1552
+ /** Normal or italic text rendering. */
487
1553
  fontStyle?: null | FontStyle;
1554
+ /** Controls automatic text capitalisation. */
488
1555
  textTransform?: null | TextTransform;
1556
+ /** Additional spacing between characters in platform units. */
489
1557
  letterSpacing?: null | number;
1558
+ /** Decorative line applied to text (underline, strikethrough). */
490
1559
  textDecoration?: null | TextDecoration;
491
1560
  }
1561
+ /** Inline text styling for elements like links within rich text. */
492
1562
  export interface InLineTextStyle {
1563
+ /** Typography properties for the inline text element. */
493
1564
  text: InlineTextStylingProperties;
494
1565
  }
1566
+ /**
1567
+ * Visual style properties for individual indicator items (dots, bars, etc.).
1568
+ * Includes text styling for number-based indicators.
1569
+ */
495
1570
  export interface IndicatorStyles {
1571
+ /** Container layout styles (e.g. flex direction, alignment). */
496
1572
  container?: null | ContainerStylingProperties;
1573
+ /** Background color and gradient styles. */
497
1574
  background?: null | BackgroundStylingProperties;
1575
+ /** Border width, color, and radius styles. */
498
1576
  border?: null | BorderStylingProperties;
1577
+ /** Width and height dimension styles. */
499
1578
  dimension?: null | DimensionStylingProperties;
1579
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
500
1580
  flexChild?: null | FlexChildStylingProperties;
1581
+ /** Padding and margin spacing styles. */
501
1582
  spacing?: null | SpacingStylingProperties;
1583
+ /** Text styling for number-based indicators. */
502
1584
  text?: null | TextStylingProperties;
503
1585
  }
1586
+ /**
1587
+ * Configuration for a required-field validation rule. When applied to an
1588
+ * input, the input MUST have a non-empty value to pass validation.
1589
+ */
504
1590
  export interface InputRequiredValidation {
1591
+ /**
1592
+ * The error message to display when validation fails (i.e., the input is
1593
+ * empty). MUST be a user-facing string. Do NOT leave this empty.
1594
+ */
505
1595
  message: string;
506
1596
  }
1597
+ /**
1598
+ * Tests application domain state in the full layout schema context. Domain
1599
+ * state is managed by the host application and represents high-level
1600
+ * application state.
1601
+ */
507
1602
  export interface LayoutSchemaDomainStatePredicate {
1603
+ /** The domain state key to check. */
508
1604
  key: DomainStateKey;
1605
+ /** The comparison operator. */
509
1606
  condition: OrderableWhenCondition;
1607
+ /** The integer value to compare the domain state against. */
510
1608
  value: number;
511
1609
  }
1610
+ /** Platform-specific settings for the layout behaviour. */
512
1611
  export interface LayoutSettings {
1612
+ /** Whether to automatically close the layout after the user completes the interaction flow. */
513
1613
  closeOnComplete?: null | boolean;
1614
+ /** Whether to enable partner-side validation before submitting responses. */
514
1615
  enablePartnerValidation?: null | boolean;
515
1616
  }
1617
+ /**
1618
+ * Visual style properties for the OneByOneDistribution container.
1619
+ * Contains the standard style categories: container layout, background colors,
1620
+ * border appearance, dimensions, flex child positioning, and spacing.
1621
+ */
516
1622
  export interface OneByOneDistributionStyles {
1623
+ /** Container layout styles (e.g. flex direction, alignment). */
517
1624
  container?: null | ContainerStylingProperties;
1625
+ /** Background color and gradient styles. */
518
1626
  background?: null | BackgroundStylingProperties;
1627
+ /** Border width, color, and radius styles. */
519
1628
  border?: null | BorderStylingProperties;
1629
+ /** Width and height dimension styles. */
520
1630
  dimension?: null | DimensionStylingProperties;
1631
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
521
1632
  flexChild?: null | FlexChildStylingProperties;
1633
+ /** Padding and margin spacing styles. */
522
1634
  spacing?: null | SpacingStylingProperties;
523
1635
  }
1636
+ /**
1637
+ * Styling elements for the OneByOneDistribution container.
1638
+ * The `own` array contains stateless styling blocks applied to the distribution container itself.
1639
+ */
524
1640
  export interface OneByOneDistributionElements {
1641
+ /** Array of stateless styling blocks for the distribution container. */
525
1642
  own: StatelessStylingBlock<OneByOneDistributionStyles>[];
526
1643
  }
1644
+ /**
1645
+ * Presents offers one at a time, allowing the user to progress through them sequentially.
1646
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
1647
+ *
1648
+ * Pair with ProgressControl nodes to enable forward/backward navigation between offers.
1649
+ * Pair with ProgressIndicator to show the user's current position.
1650
+ * Do NOT use this for displaying all offers at once; use StackedDistribution instead.
1651
+ */
527
1652
  export interface OneByOneDistributionModel<Predicates> {
1653
+ /**
1654
+ * Visual styles for the distribution container.
1655
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1656
+ */
528
1657
  styles?: null | LayoutStyle<OneByOneDistributionElements, ConditionalStyleTransition<OneByOneDistributionTransitions, Predicates>>;
1658
+ /**
1659
+ * The animation transition between offers.
1660
+ * Defines how the current offer exits and the next offer enters.
1661
+ */
529
1662
  transition: Transition;
530
1663
  }
1664
+ /** Transition styles for animating OneByOneDistribution style changes. */
531
1665
  export interface OneByOneDistributionTransitions {
1666
+ /** Transition properties for the distribution container's own styles. */
532
1667
  own?: null | OneByOneDistributionStyles;
533
1668
  }
1669
+ /**
1670
+ * Available style categories for the Overlay content element. Each optional field enables a
1671
+ * specific category of visual styling. Omit a field to leave that category unstyled.
1672
+ */
534
1673
  export interface OverlayStyles {
1674
+ /**
1675
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1676
+ * MUST be used to control how children are arranged within the overlay content area.
1677
+ */
535
1678
  container?: null | ContainerStylingProperties;
1679
+ /**
1680
+ * Background color and image properties. Use to set a solid color, gradient, or image
1681
+ * behind the overlay content.
1682
+ */
536
1683
  background?: null | BackgroundStylingProperties;
1684
+ /**
1685
+ * Border radius, color, width and style properties. Use to add visible borders or
1686
+ * rounded corners to the overlay content area.
1687
+ */
537
1688
  border?: null | BorderStylingProperties;
1689
+ /**
1690
+ * Width, height and rotation properties. Use to explicitly size the overlay content area.
1691
+ * Do NOT set width/height if the overlay should size to its content.
1692
+ */
538
1693
  dimension?: null | DimensionStylingProperties;
1694
+ /**
1695
+ * Properties controlling this element's behaviour as a child of a flex container.
1696
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1697
+ */
539
1698
  flexChild?: null | FlexChildStylingProperties;
1699
+ /**
1700
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
1701
+ * overlay content area.
1702
+ */
540
1703
  spacing?: null | SpacingStylingProperties;
541
1704
  }
1705
+ /**
1706
+ * Style categories for the Overlay wrapper (backdrop) element. Controls the appearance of
1707
+ * the area behind the overlay content.
1708
+ */
542
1709
  export interface OverlayWrapperStyles {
1710
+ /** Layout properties for the wrapper container that positions the overlay content. */
543
1711
  container?: null | ContainerStylingProperties;
1712
+ /**
1713
+ * Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
1714
+ * format, e.g. `#80000000`) to dim the content behind the overlay.
1715
+ */
544
1716
  background?: null | BackgroundStylingProperties;
545
1717
  }
1718
+ /**
1719
+ * Styleable elements of the Overlay node. The Overlay has two styleable elements: its own
1720
+ * content area and its wrapper (backdrop).
1721
+ */
546
1722
  export interface OverlayElements {
1723
+ /**
1724
+ * Style blocks for the overlay content area. The array represents breakpoint-specific
1725
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1726
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1727
+ */
547
1728
  own: BasicStateStylingBlock<OverlayStyles>[];
1729
+ /**
1730
+ * Style blocks for the overlay wrapper (backdrop). The array represents
1731
+ * breakpoint-specific styles: first item is the default, subsequent items correspond
1732
+ * to breakpoints in ascending order.
1733
+ */
548
1734
  wrapper: BasicStateStylingBlock<OverlayWrapperStyles>[];
549
1735
  }
1736
+ /**
1737
+ * A modal overlay that appears on top of the main content with a backdrop. Use for dialogs,
1738
+ * confirmations, and modal interactions that require user attention. The overlay blocks
1739
+ * interaction with the content behind it. Do NOT use Overlay for inline content layering;
1740
+ * use ZStack instead.
1741
+ */
550
1742
  export interface OverlayModel<Children, Predicates> {
1743
+ /**
1744
+ * If true, clicking the backdrop area closes the overlay. MUST be set to true when the
1745
+ * overlay is dismissible. Set to false when the user MUST interact with the overlay
1746
+ * content before proceeding (e.g., mandatory confirmations).
1747
+ */
551
1748
  allowBackdropToClose: boolean;
1749
+ /**
1750
+ * Accessibility label for screen readers. MUST be set to describe the purpose of the
1751
+ * overlay (e.g., "Confirmation dialog" or "Settings panel").
1752
+ */
552
1753
  a11yLabel?: null | string;
1754
+ /**
1755
+ * Visual styles for this overlay. See styling documentation for the structure. Omit to
1756
+ * use default (unstyled) rendering.
1757
+ */
553
1758
  styles?: null | LayoutStyle<OverlayElements, ConditionalStyleTransition<OverlayTransitions, Predicates>>;
1759
+ /** The content displayed within the overlay. */
554
1760
  children: Children[];
555
1761
  }
1762
+ /** Transition styles for the Overlay node. Use to animate style changes smoothly. */
556
1763
  export interface OverlayTransitions {
1764
+ /**
1765
+ * Transition properties for the overlay content area. Specifies which style properties
1766
+ * should animate and their duration/easing when values change.
1767
+ */
557
1768
  own?: null | OverlayStyles;
1769
+ /** Transition properties for the overlay wrapper (backdrop). */
558
1770
  wrapper?: null | OverlayWrapperStyles;
559
1771
  }
1772
+ /**
1773
+ * Tests the position index of the current item within a collection. Use to
1774
+ * style items differently based on their position (e.g. first item, last item).
1775
+ */
560
1776
  export interface PositionPredicate {
1777
+ /** The comparison operator. */
561
1778
  condition: OrderableWhenCondition;
1779
+ /**
1780
+ * The position index to compare against. MUST be a string representation
1781
+ * of a number, e.g. "0" for the first item.
1782
+ */
562
1783
  value: string;
563
1784
  }
1785
+ /**
1786
+ * Visual style properties for the ProgressControl button.
1787
+ * Contains the standard style categories: container layout, background colors,
1788
+ * border appearance, dimensions, flex child positioning, and spacing.
1789
+ */
564
1790
  export interface ProgressControlStyle {
1791
+ /** Container layout styles (e.g. flex direction, alignment). */
565
1792
  container?: null | ContainerStylingProperties;
1793
+ /** Background color and gradient styles. */
566
1794
  background?: null | BackgroundStylingProperties;
1795
+ /** Border width, color, and radius styles. */
567
1796
  border?: null | BorderStylingProperties;
1797
+ /** Width and height dimension styles. */
568
1798
  dimension?: null | DimensionStylingProperties;
1799
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
569
1800
  flexChild?: null | FlexChildStylingProperties;
1801
+ /** Padding and margin spacing styles. */
570
1802
  spacing?: null | SpacingStylingProperties;
571
1803
  }
1804
+ /**
1805
+ * Styling elements for the ProgressControl button.
1806
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
1807
+ * applied to the control button itself.
1808
+ */
572
1809
  export interface ProgressControlElements {
1810
+ /**
1811
+ * Array of state-dependent styling blocks for the control button.
1812
+ * Each block targets a specific interaction state (default, pressed, disabled, etc.).
1813
+ */
573
1814
  own: BasicStateStylingBlock<ProgressControlStyle>[];
574
1815
  }
575
- export type ProgressionDirection = "Forward" | "Backward";
1816
+ /** The direction in which the progress control advances offers. */
1817
+ export type ProgressionDirection =
1818
+ /** Advance to the next offer or group. */
1819
+ "Forward"
1820
+ /** Return to the previous offer or group. */
1821
+ | "Backward";
1822
+ /**
1823
+ * A button that advances or reverses offer progression.
1824
+ * Used with OneByOneDistribution or GroupedDistribution for navigation.
1825
+ *
1826
+ * MUST specify a `direction` (Forward or Backward).
1827
+ * Pair with a distribution node for the control to have an effect.
1828
+ * Typically contains an arrow icon as child content.
1829
+ */
576
1830
  export interface ProgressControlModel<Children, Predicates> {
1831
+ /** Visual styles for the control. Uses the LayoutStyle wrapper with conditional style transitions. */
577
1832
  styles?: null | LayoutStyle<ProgressControlElements, ConditionalStyleTransition<ProgressControlTransitions, Predicates>>;
1833
+ /** The direction to progress. MUST be either Forward or Backward. */
578
1834
  direction: ProgressionDirection;
1835
+ /**
1836
+ * Child nodes forming the button content (e.g. an arrow icon).
1837
+ * MUST contain at least one child for the control to have visible content.
1838
+ */
579
1839
  children: Children[];
580
1840
  }
1841
+ /** Transition styles for animating ProgressControl style changes. */
581
1842
  export interface ProgressControlTransitions {
1843
+ /** Transition properties for the control button's own styles. */
582
1844
  own?: null | ProgressControlStyle;
583
1845
  }
1846
+ /**
1847
+ * Visual style properties for the ProgressIndicator container.
1848
+ * Contains the standard style categories for the outer indicator wrapper.
1849
+ */
584
1850
  export interface ProgressIndicatorStyles {
1851
+ /** Container layout styles (e.g. flex direction, alignment). */
585
1852
  container?: null | ContainerStylingProperties;
1853
+ /** Background color and gradient styles. */
586
1854
  background?: null | BackgroundStylingProperties;
1855
+ /** Border width, color, and radius styles. */
587
1856
  border?: null | BorderStylingProperties;
1857
+ /** Width and height dimension styles. */
588
1858
  dimension?: null | DimensionStylingProperties;
1859
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
589
1860
  flexChild?: null | FlexChildStylingProperties;
1861
+ /** Padding and margin spacing styles. */
590
1862
  spacing?: null | SpacingStylingProperties;
591
1863
  }
1864
+ /**
1865
+ * Styling elements for the ProgressIndicator.
1866
+ * Contains styling blocks for the container, individual indicators, and special indicator states.
1867
+ */
592
1868
  export interface ProgressIndicatorElements {
1869
+ /** Array of state-dependent styling blocks for the indicator container. */
593
1870
  own: BasicStateStylingBlock<ProgressIndicatorStyles>[];
1871
+ /** Styling blocks for each individual indicator item (default state). */
594
1872
  indicator: BasicStateStylingBlock<IndicatorStyles>[];
1873
+ /**
1874
+ * Optional styling blocks for the currently active indicator.
1875
+ * If omitted, the default indicator styling is used.
1876
+ */
595
1877
  activeIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
1878
+ /**
1879
+ * Optional styling blocks for indicators that have been seen/visited.
1880
+ * If omitted, the default indicator styling is used.
1881
+ */
596
1882
  seenIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
597
1883
  }
1884
+ /**
1885
+ * Displays visual progress indicators (dots, bars) showing the user's position
1886
+ * within a series of offers.
1887
+ *
1888
+ * MUST be paired with a distribution node (OneByOneDistribution, GroupedDistribution, etc.)
1889
+ * to track position. The indicator automatically reflects the current offer position.
1890
+ * Use `indicator` to specify the type (e.g. "dot", "bar", "number").
1891
+ */
598
1892
  export interface ProgressIndicatorModel<Predicates> {
1893
+ /**
1894
+ * Visual styles for the progress indicators.
1895
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1896
+ */
599
1897
  styles?: null | LayoutStyle<ProgressIndicatorElements, ConditionalStyleTransition<ProgressIndicatorTransitions, Predicates>>;
1898
+ /**
1899
+ * The type of indicator to display (e.g. "dot", "bar", "number").
1900
+ * MUST be a valid indicator type string.
1901
+ */
600
1902
  indicator: string;
1903
+ /**
1904
+ * The initial position of the indicator (zero-indexed).
1905
+ * If omitted, defaults to position 0.
1906
+ */
601
1907
  startPosition?: null | number;
1908
+ /**
1909
+ * If true, the indicator is hidden from screen readers.
1910
+ * Set to true when the indicator is purely decorative.
1911
+ */
602
1912
  accessibilityHidden?: null | boolean;
603
1913
  }
1914
+ /**
1915
+ * Transition styles for animating ProgressIndicator style changes.
1916
+ * Defines transitions for the container and each indicator state.
1917
+ */
604
1918
  export interface ProgressIndicatorTransitions {
1919
+ /** Transition properties for the indicator container's own styles. */
605
1920
  own?: null | ProgressIndicatorStyles;
1921
+ /** Transition properties for the default indicator styles. */
606
1922
  indicator?: null | IndicatorStyles;
1923
+ /** Transition properties for the active indicator styles. */
607
1924
  activeIndicator?: null | IndicatorStyles;
1925
+ /** Transition properties for the seen indicator styles. */
608
1926
  seenIndicator?: null | IndicatorStyles;
609
1927
  }
1928
+ /**
1929
+ * Tests which offer index is currently visible in a carousel or progression.
1930
+ * Use 0 for the first offer, -1 for the last offer.
1931
+ */
610
1932
  export interface ProgressionPredicate {
1933
+ /** The comparison operator. */
611
1934
  condition: OrderableWhenCondition;
1935
+ /**
1936
+ * The progression index to compare against. MUST be a string representation
1937
+ * of a number. Use "0" for the first offer, "-1" for the last offer.
1938
+ */
612
1939
  value: string;
613
1940
  }
1941
+ /** Visual styles for the RichText node. */
614
1942
  export interface RichTextStyle {
1943
+ /** Width, height and rotation properties. */
615
1944
  dimension?: null | DimensionStylingProperties;
1945
+ /** Properties controlling behaviour as a flex child. */
616
1946
  flexChild?: null | FlexChildStylingProperties;
1947
+ /** Padding, margin and offset properties. */
617
1948
  spacing?: null | SpacingStylingProperties;
1949
+ /** Background color and image properties. */
618
1950
  background?: null | BackgroundStylingProperties;
1951
+ /** Typography properties. */
619
1952
  text?: null | TextStylingProperties;
620
1953
  }
1954
+ /** Style elements for the RichText node. */
621
1955
  export interface RichTextElements {
1956
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
622
1957
  own: BasicStateStylingBlock<RichTextStyle>[];
1958
+ /** Style blocks for link elements within the rich text content. */
623
1959
  link?: null | BasicStateStylingBlock<InLineTextStyle>[];
624
1960
  }
1961
+ /** Renders HTML-formatted text content. Supports `<a>`, `<strong>`, `<em>`, `<br>` and other inline HTML elements. Use BasicText for plain text without HTML. */
625
1962
  export interface RichTextModel<Predicates> {
1963
+ /** Visual styles for the text element. */
626
1964
  styles?: null | LayoutStyle<RichTextElements, ConditionalStyleTransition<RichTextTransitions, Predicates>>;
1965
+ /** Controls how links within the rich text are opened when clicked. */
627
1966
  openLinks?: null | LinkOpenTarget;
1967
+ /** The HTML text content to display. Supports inline HTML tags and data binding placeholders in the format %^DATA.key^% or %^ATTRIBUTE.key^%. */
628
1968
  value: string;
629
1969
  }
1970
+ /** Transition definitions for the RichText node. */
630
1971
  export interface RichTextTransitions {
1972
+ /** Transition properties for the primary element. */
631
1973
  own?: null | RichTextStyle;
1974
+ /** Transition properties for link elements. */
632
1975
  link?: null | InLineTextStyle;
633
1976
  }
1977
+ /**
1978
+ * The top-level schema structure for an outer layout. Contains the layout tree,
1979
+ * breakpoint definitions, settings and display configuration.
1980
+ */
634
1981
  export interface RootSchemaModel<Layout, Display, Settings> {
1982
+ /**
1983
+ * Map of breakpoint names to viewport width thresholds in platform units.
1984
+ * Defines responsive breakpoints for the layout.
1985
+ */
635
1986
  breakpoints: Record<string, number>;
1987
+ /** The root node of the layout tree. */
636
1988
  layout: Layout;
1989
+ /** Platform-specific layout settings. */
637
1990
  settings?: null | Settings;
1991
+ /** Controls how the layout is displayed (fullscreen, embedded, etc). */
638
1992
  display?: null | Display;
639
1993
  }
1994
+ /**
1995
+ * Available style categories for the Row element. Each optional field enables a specific
1996
+ * category of visual styling. Omit a field to leave that category unstyled.
1997
+ */
640
1998
  export interface RowStyle {
1999
+ /**
2000
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
2001
+ * MUST be used to control how children are arranged within the row.
2002
+ */
641
2003
  container?: null | ContainerStylingProperties;
2004
+ /**
2005
+ * Background color and image properties. Use to set a solid color, gradient, or image
2006
+ * behind the row content.
2007
+ */
642
2008
  background?: null | BackgroundStylingProperties;
2009
+ /**
2010
+ * Border radius, color, width and style properties. Use to add visible borders or
2011
+ * rounded corners to the row.
2012
+ */
643
2013
  border?: null | BorderStylingProperties;
2014
+ /**
2015
+ * Width, height and rotation properties. Use to explicitly size the row or apply rotation
2016
+ * transforms. Do NOT set width/height if the row should size to its content.
2017
+ */
644
2018
  dimension?: null | DimensionStylingProperties;
2019
+ /**
2020
+ * Properties controlling this element's behaviour as a child of a flex container.
2021
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
2022
+ */
645
2023
  flexChild?: null | FlexChildStylingProperties;
2024
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the row. */
646
2025
  spacing?: null | SpacingStylingProperties;
647
2026
  }
2027
+ /**
2028
+ * Styleable elements of the Row node. The Row has a single styleable element: its own
2029
+ * container.
2030
+ */
648
2031
  export interface RowElements {
2032
+ /**
2033
+ * Style blocks for the row container itself. The array represents breakpoint-specific
2034
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
2035
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
2036
+ */
649
2037
  own: BasicStateStylingBlock<RowStyle>[];
650
2038
  }
2039
+ /**
2040
+ * A horizontal flex container that arranges its children in a row (left to right). Use for
2041
+ * horizontal layouts. Children are laid out along the horizontal axis by default. To control
2042
+ * alignment and distribution, configure the container styles. Do NOT nest Rows unnecessarily
2043
+ * when a single Row with appropriate styling would suffice.
2044
+ */
651
2045
  export interface RowModel<Children, Predicates> {
2046
+ /**
2047
+ * Accessibility label for screen readers. Omit if the row is purely decorative or its
2048
+ * children already provide sufficient accessible labels. MUST be set when the row
2049
+ * conveys meaning not available from its children alone.
2050
+ */
652
2051
  a11yLabel?: null | string;
2052
+ /**
2053
+ * Visual styles for this row. See styling documentation for the structure. Omit to use
2054
+ * default (unstyled) rendering.
2055
+ */
653
2056
  styles?: null | LayoutStyle<RowElements, ConditionalStyleTransition<RowTransitions, Predicates>>;
2057
+ /**
2058
+ * Child nodes rendered horizontally within this row.
2059
+ * Children are laid out left to right in source order.
2060
+ */
654
2061
  children: Children[];
655
2062
  }
2063
+ /** Transition styles for the Row node. Use to animate style changes smoothly. */
656
2064
  export interface RowTransitions {
2065
+ /**
2066
+ * Transition properties for the row container. Specifies which style properties
2067
+ * should animate and their duration/easing when values change.
2068
+ */
657
2069
  own?: null | RowStyle;
658
2070
  }
2071
+ /**
2072
+ * Available style categories for the ScrollableColumn element. Each optional field enables a
2073
+ * specific category of visual styling. Omit a field to leave that category unstyled.
2074
+ */
659
2075
  export interface ScrollableColumnStyle {
2076
+ /**
2077
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
2078
+ * MUST be used to control how children are arranged within the scrollable column.
2079
+ */
660
2080
  container?: null | ContainerStylingProperties;
2081
+ /**
2082
+ * Background color and image properties. Use to set a solid color, gradient, or image
2083
+ * behind the scrollable column content.
2084
+ */
661
2085
  background?: null | BackgroundStylingProperties;
2086
+ /**
2087
+ * Border radius, color, width and style properties. Use to add visible borders or
2088
+ * rounded corners to the scrollable column.
2089
+ */
662
2090
  border?: null | BorderStylingProperties;
2091
+ /**
2092
+ * Width, height and rotation properties. MUST set a constrained height for scrolling to
2093
+ * work. Without a height constraint, the container will expand to fit all content and
2094
+ * scrolling will not occur.
2095
+ */
663
2096
  dimension?: null | DimensionStylingProperties;
2097
+ /**
2098
+ * Properties controlling this element's behaviour as a child of a flex container.
2099
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
2100
+ */
664
2101
  flexChild?: null | FlexChildStylingProperties;
2102
+ /**
2103
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
2104
+ * scrollable column.
2105
+ */
665
2106
  spacing?: null | SpacingStylingProperties;
666
2107
  }
2108
+ /**
2109
+ * Styleable elements of the ScrollableColumn node. The ScrollableColumn has a single
2110
+ * styleable element: its own container.
2111
+ */
667
2112
  export interface ScrollableColumnElements {
2113
+ /**
2114
+ * Style blocks for the scrollable column container itself. The array represents
2115
+ * breakpoint-specific styles: first item is the default (no breakpoint), subsequent
2116
+ * items correspond to breakpoints in ascending order. MUST contain at least one item
2117
+ * for the default style.
2118
+ */
668
2119
  own: BasicStateStylingBlock<ScrollableColumnStyle>[];
669
2120
  }
2121
+ /**
2122
+ * A vertical scrollable container. Children that exceed the container height can be scrolled
2123
+ * into view. Use when content may overflow vertically (e.g., long lists, content feeds).
2124
+ * MUST have a constrained height via dimension styles for scrolling to activate. Do NOT use
2125
+ * ScrollableColumn when a regular Column would suffice (i.e., when content fits without
2126
+ * scrolling).
2127
+ */
670
2128
  export interface ScrollableColumnModel<Children, Predicates> {
2129
+ /**
2130
+ * Accessibility label for screen readers. Omit if the scrollable column is purely
2131
+ * decorative or its children already provide sufficient accessible labels. MUST be set
2132
+ * when the scrollable column conveys meaning not available from its children alone.
2133
+ */
671
2134
  a11yLabel?: null | string;
2135
+ /**
2136
+ * Visual styles for this scrollable column. See styling documentation for the structure.
2137
+ * Omit to use default (unstyled) rendering.
2138
+ */
672
2139
  styles?: null | LayoutStyle<ScrollableColumnElements, ConditionalStyleTransition<ScrollableColumnTransitions, Predicates>>;
2140
+ /**
2141
+ * Child nodes rendered vertically within this scrollable column. MUST contain at least
2142
+ * one child. Children are laid out top to bottom in source order and scroll vertically
2143
+ * when they exceed the container height.
2144
+ */
673
2145
  children: Children[];
674
2146
  }
2147
+ /** Transition styles for the ScrollableColumn node. Use to animate style changes smoothly. */
675
2148
  export interface ScrollableColumnTransitions {
2149
+ /**
2150
+ * Transition properties for the scrollable column container. Specifies which style
2151
+ * properties should animate and their duration/easing when values change.
2152
+ */
676
2153
  own?: null | ScrollableColumnStyle;
677
2154
  }
2155
+ /**
2156
+ * Available style categories for the ScrollableRow element. Each optional field enables a
2157
+ * specific category of visual styling. Omit a field to leave that category unstyled.
2158
+ */
678
2159
  export interface ScrollableRowStyle {
2160
+ /**
2161
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
2162
+ * MUST be used to control how children are arranged within the scrollable row.
2163
+ */
679
2164
  container?: null | ContainerStylingProperties;
2165
+ /**
2166
+ * Background color and image properties. Use to set a solid color, gradient, or image
2167
+ * behind the scrollable row content.
2168
+ */
680
2169
  background?: null | BackgroundStylingProperties;
2170
+ /**
2171
+ * Border radius, color, width and style properties. Use to add visible borders or
2172
+ * rounded corners to the scrollable row.
2173
+ */
681
2174
  border?: null | BorderStylingProperties;
2175
+ /**
2176
+ * Width, height and rotation properties. MUST set a constrained width for scrolling to
2177
+ * work. Without a width constraint, the container will expand to fit all content and
2178
+ * scrolling will not occur.
2179
+ */
682
2180
  dimension?: null | DimensionStylingProperties;
2181
+ /**
2182
+ * Properties controlling this element's behaviour as a child of a flex container.
2183
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
2184
+ */
683
2185
  flexChild?: null | FlexChildStylingProperties;
2186
+ /**
2187
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
2188
+ * scrollable row.
2189
+ */
684
2190
  spacing?: null | SpacingStylingProperties;
685
2191
  }
2192
+ /**
2193
+ * Styleable elements of the ScrollableRow node. The ScrollableRow has a single styleable
2194
+ * element: its own container.
2195
+ */
686
2196
  export interface ScrollableRowElements {
2197
+ /**
2198
+ * Style blocks for the scrollable row container itself. The array represents
2199
+ * breakpoint-specific styles: first item is the default (no breakpoint), subsequent
2200
+ * items correspond to breakpoints in ascending order. MUST contain at least one item
2201
+ * for the default style.
2202
+ */
687
2203
  own: BasicStateStylingBlock<ScrollableRowStyle>[];
688
2204
  }
2205
+ /**
2206
+ * A horizontal scrollable container. Children that exceed the container width can be scrolled
2207
+ * into view. Use when content may overflow horizontally (e.g., carousels, horizontal lists).
2208
+ * MUST have a constrained width via dimension styles for scrolling to activate. Do NOT use
2209
+ * ScrollableRow when a regular Row would suffice (i.e., when content fits without scrolling).
2210
+ */
689
2211
  export interface ScrollableRowModel<Children, Predicates> {
2212
+ /**
2213
+ * Accessibility label for screen readers. Omit if the scrollable row is purely decorative
2214
+ * or its children already provide sufficient accessible labels. MUST be set when the
2215
+ * scrollable row conveys meaning not available from its children alone.
2216
+ */
690
2217
  a11yLabel?: null | string;
2218
+ /**
2219
+ * Visual styles for this scrollable row. See styling documentation for the structure.
2220
+ * Omit to use default (unstyled) rendering.
2221
+ */
691
2222
  styles?: null | LayoutStyle<ScrollableRowElements, ConditionalStyleTransition<ScrollableRowTransitions, Predicates>>;
2223
+ /**
2224
+ * Child nodes rendered horizontally within this scrollable row. MUST contain at least
2225
+ * one child. Children are laid out left to right in source order and scroll horizontally
2226
+ * when they exceed the container width.
2227
+ */
692
2228
  children: Children[];
693
2229
  }
2230
+ /** Transition styles for the ScrollableRow node. Use to animate style changes smoothly. */
694
2231
  export interface ScrollableRowTransitions {
2232
+ /**
2233
+ * Transition properties for the scrollable row container. Specifies which style
2234
+ * properties should animate and their duration/easing when values change.
2235
+ */
695
2236
  own?: null | ScrollableRowStyle;
696
2237
  }
2238
+ /**
2239
+ * Visual style properties for the SlideStateTrigger container.
2240
+ * Contains the standard style categories for the slider's outer container.
2241
+ */
697
2242
  export interface SlideStateTriggerOwnStyles {
2243
+ /** Container layout styles (e.g. flex direction, alignment). */
698
2244
  container?: null | ContainerStylingProperties;
2245
+ /** Background color and gradient styles. */
699
2246
  background?: null | BackgroundStylingProperties;
2247
+ /** Border width, color, and radius styles. */
700
2248
  border?: null | BorderStylingProperties;
2249
+ /** Width and height dimension styles. */
701
2250
  dimension?: null | DimensionStylingProperties;
2251
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
702
2252
  flexChild?: null | FlexChildStylingProperties;
2253
+ /** Padding and margin spacing styles. */
703
2254
  spacing?: null | SpacingStylingProperties;
704
2255
  }
2256
+ /** Visual style properties for the slider thumb (the draggable handle). */
705
2257
  export interface SlideStateTriggerThumbStyles {
2258
+ /** Text styling for the thumb label. */
706
2259
  text?: null | TextStylingProperties;
2260
+ /** Background color and gradient styles for the thumb. */
707
2261
  background?: null | BackgroundStylingProperties;
2262
+ /** Border width, color, and radius styles for the thumb. */
708
2263
  border?: null | BorderStylingProperties;
2264
+ /** Width and height dimension styles for the thumb. */
709
2265
  dimension?: null | DimensionStylingProperties;
2266
+ /** Flex child sizing and alignment styles for the thumb. */
710
2267
  flexChild?: null | FlexChildStylingProperties;
2268
+ /** Padding and margin spacing styles for the thumb. */
711
2269
  spacing?: null | SpacingStylingProperties;
712
2270
  }
2271
+ /** Visual style properties for the slider label. */
713
2272
  export interface SlideStateTriggerLabelStyles {
2273
+ /** Text styling for the label. */
714
2274
  text?: null | TextStylingProperties;
2275
+ /** Padding and margin spacing styles for the label. */
715
2276
  spacing?: null | SpacingStylingProperties;
716
2277
  }
2278
+ /** Visual style properties for the slider fill (the filled portion of the track). */
717
2279
  export interface SlideStateTriggerFillStyles {
2280
+ /** Background color and gradient styles for the fill. */
718
2281
  background?: null | BackgroundStylingProperties;
2282
+ /** Border width, color, and radius styles for the fill. */
719
2283
  border?: null | BorderStylingProperties;
720
2284
  }
2285
+ /**
2286
+ * Styling elements for the SlideStateTrigger.
2287
+ * Contains styling blocks for the container, thumb, label, and fill sub-elements.
2288
+ */
721
2289
  export interface SlideStateTriggerElements {
2290
+ /** Array of stateless styling blocks for the slider container. */
722
2291
  own: StatelessStylingBlock<SlideStateTriggerOwnStyles>[];
2292
+ /** Optional styling blocks for the slider thumb (draggable handle). */
723
2293
  thumb?: null | StatelessStylingBlock<SlideStateTriggerThumbStyles>[];
2294
+ /** Optional styling blocks for the slider label. */
724
2295
  label?: null | StatelessStylingBlock<SlideStateTriggerLabelStyles>[];
2296
+ /** Optional styling blocks for the slider fill (filled track portion). */
725
2297
  fill?: null | StatelessStylingBlock<SlideStateTriggerFillStyles>[];
726
2298
  }
2299
+ /** Configuration for the slider label. */
727
2300
  export interface SlideStateTriggerLabel {
2301
+ /** Optional text value to display as the slider label. */
728
2302
  value?: null | string;
729
2303
  }
2304
+ /** Configuration for the slider thumb (draggable handle). */
730
2305
  export interface SlideStateTriggerThumb {
2306
+ /** Optional icon name to display inside the thumb. */
731
2307
  icon?: null | string;
732
2308
  }
2309
+ /**
2310
+ * A slider control that updates a custom state value as the user drags.
2311
+ * The slider thumb can be dragged to set the state to a value proportional to the position.
2312
+ * Use with When nodes to conditionally show/hide content based on the slider state.
2313
+ *
2314
+ * MUST provide a `customStateKey` that matches the key in When predicates.
2315
+ * Optionally provide `customStateValue` to set the slider's initial position.
2316
+ */
733
2317
  export interface SlideStateTriggerModel<Predicates> {
2318
+ /** Visual styles for the slider. Uses the LayoutStyle wrapper with conditional style transitions. */
734
2319
  styles?: null | LayoutStyle<SlideStateTriggerElements, ConditionalStyleTransition<SlideStateTriggerTransitions, Predicates>>;
2320
+ /** Configuration for the slider thumb (draggable handle). */
735
2321
  thumb?: null | SlideStateTriggerThumb;
2322
+ /** Configuration for the slider label. */
736
2323
  label?: null | SlideStateTriggerLabel;
2324
+ /**
2325
+ * The custom state key to update as the slider is dragged.
2326
+ * MUST match the key referenced in When node predicates.
2327
+ */
737
2328
  customStateKey: string;
2329
+ /**
2330
+ * The initial value of the custom state (slider position).
2331
+ * If omitted, defaults to the minimum position.
2332
+ */
738
2333
  customStateValue?: null | number;
739
2334
  }
2335
+ /**
2336
+ * Transition styles for animating SlideStateTrigger style changes.
2337
+ * Defines transitions for all slider sub-elements.
2338
+ */
740
2339
  export interface SlideStateTriggerTransitions {
2340
+ /** Transition properties for the slider container's own styles. */
741
2341
  own?: null | SlideStateTriggerOwnStyles;
2342
+ /** Transition properties for the thumb styles. */
742
2343
  thumb?: null | SlideStateTriggerThumbStyles;
2344
+ /** Transition properties for the label styles. */
743
2345
  label?: null | SlideStateTriggerLabelStyles;
2346
+ /** Transition properties for the fill styles. */
744
2347
  fill?: null | SlideStateTriggerFillStyles;
745
2348
  }
2349
+ /**
2350
+ * Visual style properties for the StackedDistribution container.
2351
+ * Contains the standard style categories: container layout, background colors,
2352
+ * border appearance, dimensions, flex child positioning, and spacing.
2353
+ */
746
2354
  export interface StackedDistributionStyles {
2355
+ /** Container layout styles (e.g. flex direction, alignment). */
747
2356
  container?: null | ContainerStylingProperties;
2357
+ /** Background color and gradient styles. */
748
2358
  background?: null | BackgroundStylingProperties;
2359
+ /** Border width, color, and radius styles. */
749
2360
  border?: null | BorderStylingProperties;
2361
+ /** Width and height dimension styles. */
750
2362
  dimension?: null | DimensionStylingProperties;
2363
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
751
2364
  flexChild?: null | FlexChildStylingProperties;
2365
+ /** Padding and margin spacing styles. */
752
2366
  spacing?: null | SpacingStylingProperties;
753
2367
  }
2368
+ /**
2369
+ * Styling elements for the StackedDistribution container.
2370
+ * The `own` array contains stateless styling blocks applied to the stacked container itself.
2371
+ */
754
2372
  export interface StackedDistributionElements {
2373
+ /** Array of stateless styling blocks for the stacked container. */
755
2374
  own: StatelessStylingBlock<StackedDistributionStyles>[];
756
2375
  }
2376
+ /**
2377
+ * Presents multiple offers stacked vertically, all visible at once.
2378
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
2379
+ *
2380
+ * Use this when all offers should be visible simultaneously.
2381
+ * Do NOT use this for sequential one-at-a-time presentation; use OneByOneDistribution instead.
2382
+ */
757
2383
  export interface StackedDistributionModel<Predicates> {
2384
+ /**
2385
+ * Visual styles for the stacked container.
2386
+ * Uses the LayoutStyle wrapper with conditional style transitions.
2387
+ */
758
2388
  styles?: null | LayoutStyle<StackedDistributionElements, ConditionalStyleTransition<StackedDistributionTransitions, Predicates>>;
759
2389
  }
2390
+ /** Transition styles for animating StackedDistribution style changes. */
760
2391
  export interface StackedDistributionTransitions {
2392
+ /** Transition properties for the stacked container's own styles. */
761
2393
  own?: null | StackedDistributionStyles;
762
2394
  }
763
- export type BooleanWhenCondition = "is-true" | "is-false";
2395
+ /**
2396
+ * Condition operators for boolean values. Use these to test boolean flags.
2397
+ * Serialized as kebab-case strings: "is-true", "is-false".
2398
+ */
2399
+ export type BooleanWhenCondition =
2400
+ /** True when the value is true. */
2401
+ "is-true"
2402
+ /** True when the value is false. */
2403
+ | "is-false";
2404
+ /**
2405
+ * A predicate with a hardcoded boolean value. Useful for enabling or disabling
2406
+ * sections during development or for static feature flags.
2407
+ */
764
2408
  export interface StaticBooleanPredicate {
2409
+ /** The boolean condition. Use "is-true" or "is-false". */
765
2410
  condition: BooleanWhenCondition;
2411
+ /** The static boolean value to evaluate against the condition. */
766
2412
  value: boolean;
767
2413
  }
2414
+ /** Visual styles for the StaticIcon node. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
768
2415
  export interface StaticIconStyles {
2416
+ /** Typography properties. MUST include fontFamily set to 'rokt-icons' for the icon to render correctly. */
769
2417
  text?: null | TextStylingProperties;
2418
+ /** Width, height and rotation properties. */
770
2419
  dimension?: null | DimensionStylingProperties;
2420
+ /** Properties controlling behaviour as a flex child. */
771
2421
  flexChild?: null | FlexChildStylingProperties;
2422
+ /** Padding, margin and offset properties. */
772
2423
  spacing?: null | SpacingStylingProperties;
2424
+ /** Background color and image properties. */
773
2425
  background?: null | BackgroundStylingProperties;
2426
+ /** Border radius, color, width and style. */
774
2427
  border?: null | BorderStylingProperties;
775
2428
  }
2429
+ /** Style elements for the StaticIcon node. */
776
2430
  export interface StaticIconElements {
2431
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
777
2432
  own: BasicStateStylingBlock<StaticIconStyles>[];
778
2433
  }
2434
+ /** Renders an SVG icon from the Rokt icon font. The icon is selected by name from the available icon set. */
779
2435
  export interface StaticIconModel<Predicates> {
2436
+ /** Visual styles for the icon. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
780
2437
  styles?: null | LayoutStyle<StaticIconElements, ConditionalStyleTransition<StaticIconTransitions, Predicates>>;
2438
+ /** The icon name. Available icons include: Car, CreditCard, Ticket, Star, Mobile, Train, Utensils, Calculator, Couch, CheckApproved, Check, Lock, Shield, ThumbUp, ShoppingCart, TrendingUp, Wallet, Luggage, Close, ChevronLeft, ChevronRight, ExpandMore, ExpandLess, ArrowBack, ArrowForward, ArrowUpward, ArrowDownward, Add, Remove, ExternalLink, CircleCheck, Help, Info. */
781
2439
  name: string;
2440
+ /** Accessibility description of the icon for screen readers. */
782
2441
  description?: null | string;
783
2442
  }
2443
+ /** Transition definitions for the StaticIcon node. */
784
2444
  export interface StaticIconTransitions {
2445
+ /** Transition properties for the primary element. */
785
2446
  own?: null | StaticIconStyles;
786
2447
  }
2448
+ /** Visual styles for the StaticImage node. */
787
2449
  export interface StaticImageStyles {
2450
+ /** Background color and image properties. */
788
2451
  background?: null | BackgroundStylingProperties;
2452
+ /** Border radius, color, width and style. */
789
2453
  border?: null | BorderStylingProperties;
2454
+ /** Width, height and rotation properties. */
790
2455
  dimension?: null | DimensionStylingProperties;
2456
+ /** Properties controlling behaviour as a flex child. */
791
2457
  flexChild?: null | FlexChildStylingProperties;
2458
+ /** Padding, margin and offset properties. */
792
2459
  spacing?: null | SpacingStylingProperties;
793
2460
  }
2461
+ /** Style elements for the StaticImage node. */
794
2462
  export interface StaticImageElements {
2463
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
795
2464
  own: BasicStateStylingBlock<StaticImageStyles>[];
796
2465
  }
2466
+ /** URL configuration for a static image with themed light/dark mode support. */
797
2467
  export interface StaticImageUrl {
2468
+ /** The image URL for light mode. MUST be a valid URL. */
798
2469
  light: string;
2470
+ /** The image URL for dark mode. If not provided, the light URL is used for both modes. */
799
2471
  dark?: null | string;
800
2472
  }
2473
+ /** Renders a static image from a provided URL. Use for images with known URLs (logos, icons, decorative images). */
801
2474
  export interface StaticImageModel<Predicates> {
2475
+ /** Visual styles for the image element. */
802
2476
  styles?: null | LayoutStyle<StaticImageElements, ConditionalStyleTransition<StaticImageTransitions, Predicates>>;
2477
+ /** Alt text for accessibility. Describes the image for screen readers. */
803
2478
  alt?: null | string;
2479
+ /** Title text shown on hover. */
804
2480
  title?: null | string;
2481
+ /** The image URL with themed light/dark mode support. */
805
2482
  url: StaticImageUrl;
806
2483
  }
2484
+ /** Transition definitions for the StaticImage node. */
807
2485
  export interface StaticImageTransitions {
2486
+ /** Transition properties for the primary element. */
808
2487
  own?: null | StaticImageStyles;
809
2488
  }
2489
+ /**
2490
+ * Visual style properties for the StaticLink.
2491
+ * Contains the standard style categories: container layout, background colors,
2492
+ * border appearance, dimensions, flex child positioning, and spacing.
2493
+ */
810
2494
  export interface StaticLinkStyles {
2495
+ /** Container layout styles (e.g. flex direction, alignment). */
811
2496
  container?: null | ContainerStylingProperties;
2497
+ /** Background color and gradient styles. */
812
2498
  background?: null | BackgroundStylingProperties;
2499
+ /** Border width, color, and radius styles. */
813
2500
  border?: null | BorderStylingProperties;
2501
+ /** Width and height dimension styles. */
814
2502
  dimension?: null | DimensionStylingProperties;
2503
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
815
2504
  flexChild?: null | FlexChildStylingProperties;
2505
+ /** Padding and margin spacing styles. */
816
2506
  spacing?: null | SpacingStylingProperties;
817
2507
  }
2508
+ /**
2509
+ * Styling elements for the StaticLink.
2510
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed)
2511
+ * applied to the link itself.
2512
+ */
818
2513
  export interface StaticLinkElements {
2514
+ /**
2515
+ * Array of state-dependent styling blocks for the link.
2516
+ * Each block targets a specific interaction state (default, pressed, etc.).
2517
+ */
819
2518
  own: BasicStateStylingBlock<StaticLinkStyles>[];
820
2519
  }
2520
+ /**
2521
+ * A clickable link that wraps its children. Opens the specified URL when clicked.
2522
+ *
2523
+ * Use this node for navigation to external URLs. Do NOT use CreativeResponse for link navigation;
2524
+ * CreativeResponse is for offer accept/decline actions only.
2525
+ * The `src` field MUST be a valid URL string.
2526
+ */
821
2527
  export interface StaticLinkModel<Children, Predicates> {
2528
+ /**
2529
+ * The destination URL to open when the link is clicked.
2530
+ * MUST be a valid URL string (e.g. "https://example.com").
2531
+ */
822
2532
  src: string;
2533
+ /** Controls how the link URL is opened (e.g. in-app browser, external browser). */
823
2534
  open: LinkOpenTarget;
2535
+ /** Visual styles for the link. Uses the LayoutStyle wrapper with conditional style transitions. */
824
2536
  styles?: null | LayoutStyle<StaticLinkElements, ConditionalStyleTransition<StaticLinkTransitions, Predicates>>;
2537
+ /**
2538
+ * Child nodes that form the clickable link content.
2539
+ * MUST contain at least one child for the link to have visible, tappable content.
2540
+ */
825
2541
  children: Children[];
826
2542
  }
2543
+ /**
2544
+ * Transition styles for animating StaticLink style changes.
2545
+ * Defines which style properties should animate when the link's conditional styles change.
2546
+ */
827
2547
  export interface StaticLinkTransitions {
2548
+ /** Transition properties for the link's own styles. */
828
2549
  own?: null | StaticLinkStyles;
829
2550
  }
2551
+ /**
2552
+ * Compares a static string input against a value. Use when you need to
2553
+ * evaluate a known, fixed string against a condition.
2554
+ */
830
2555
  export interface StaticStringPredicate {
2556
+ /** The static string value to test. */
831
2557
  input: string;
2558
+ /** The comparison operator. Use "is" or "is-not". */
832
2559
  condition: EqualityWhenCondition;
2560
+ /** The string to compare against. */
833
2561
  value: string;
834
2562
  }
2563
+ /**
2564
+ * Visual style properties for the ToggleButtonStateTrigger.
2565
+ * Contains the standard style categories: container layout, background colors,
2566
+ * border appearance, dimensions, flex child positioning, and spacing.
2567
+ */
835
2568
  export interface ToggleButtonStateTriggerStyle {
2569
+ /** Container layout styles (e.g. flex direction, alignment). */
836
2570
  container?: null | ContainerStylingProperties;
2571
+ /** Background color and gradient styles. */
837
2572
  background?: null | BackgroundStylingProperties;
2573
+ /** Border width, color, and radius styles. */
838
2574
  border?: null | BorderStylingProperties;
2575
+ /** Width and height dimension styles. */
839
2576
  dimension?: null | DimensionStylingProperties;
2577
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
840
2578
  flexChild?: null | FlexChildStylingProperties;
2579
+ /** Padding and margin spacing styles. */
841
2580
  spacing?: null | SpacingStylingProperties;
842
2581
  }
2582
+ /**
2583
+ * Styling elements for the ToggleButtonStateTrigger.
2584
+ * The `own` array contains state-dependent styling blocks applied to the toggle button itself.
2585
+ */
843
2586
  export interface ToggleButtonStateTriggerElements {
2587
+ /** Array of state-dependent styling blocks for the toggle button. */
844
2588
  own: BasicStateStylingBlock<ToggleButtonStateTriggerStyle>[];
845
2589
  }
2590
+ /**
2591
+ * A toggle button that cycles a custom state between values when clicked.
2592
+ * Each click toggles the state value, typically between 0 and 1.
2593
+ * Use with When nodes to conditionally show/hide content based on the toggled state.
2594
+ *
2595
+ * MUST provide a `customStateKey` that matches the key in When predicates.
2596
+ * Unlike ButtonStateTrigger, this does NOT require a `value` field; it toggles automatically.
2597
+ */
846
2598
  export interface ToggleButtonStateTriggerModel<Children, Predicates> {
2599
+ /** Visual styles for the toggle button. */
847
2600
  styles?: null | LayoutStyle<ToggleButtonStateTriggerElements, ConditionalStyleTransition<ToggleButtonStateTriggerTransitions, Predicates>>;
2601
+ /** Child nodes forming the toggle button content. */
848
2602
  children: Children[];
2603
+ /**
2604
+ * The custom state key to toggle when the button is pressed.
2605
+ * MUST match the key referenced in When node predicates.
2606
+ */
849
2607
  customStateKey: string;
850
2608
  }
2609
+ /** Transition styles for animating ToggleButtonStateTrigger style changes. */
851
2610
  export interface ToggleButtonStateTriggerTransitions {
2611
+ /** Transition properties for the toggle button's own styles. */
852
2612
  own?: null | ToggleButtonStateTriggerStyle;
853
2613
  }
854
- export type InTransition = {
2614
+ /**
2615
+ * A transition that applies only when an element enters (becomes visible).
2616
+ * MUST be an object with a "type" field and a "settings" field.
2617
+ * Currently only "FadeIn" is supported.
2618
+ */
2619
+ export type InTransition =
2620
+ /**
2621
+ * A fade-in transition. The element gradually becomes visible over the
2622
+ * specified duration.
2623
+ */
2624
+ {
855
2625
  type: "FadeIn";
856
2626
  settings: FadeInTransitionSettings;
857
2627
  };
858
- export type OutTransition = {
2628
+ /**
2629
+ * A transition that applies only when an element exits (becomes hidden).
2630
+ * MUST be an object with a "type" field and a "settings" field.
2631
+ * Currently only "FadeOut" is supported.
2632
+ */
2633
+ export type OutTransition =
2634
+ /**
2635
+ * A fade-out transition. The element gradually becomes invisible over
2636
+ * the specified duration.
2637
+ */
2638
+ {
859
2639
  type: "FadeOut";
860
2640
  settings: FadeOutTransitionSettings;
861
2641
  };
2642
+ /**
2643
+ * Transition configuration for when visibility changes.
2644
+ * Defines enter and exit animations for the When node's children.
2645
+ */
862
2646
  export interface WhenTransition {
2647
+ /** Transition animations to play when children become visible (predicates become true). */
863
2648
  inTransition?: null | InTransition[];
2649
+ /** Transition animations to play when children become hidden (predicates become false). */
864
2650
  outTransition?: null | OutTransition[];
865
2651
  }
866
- export type WhenHidden = "visually" | "functionally";
2652
+ /**
2653
+ * Controls the hiding behaviour of When children.
2654
+ * Determines whether hidden children still occupy space in the layout.
2655
+ */
2656
+ export type WhenHidden =
2657
+ /**
2658
+ * Children are visually hidden but remain in the layout (take up space).
2659
+ * Use this when you need to preserve layout dimensions even when content is hidden.
2660
+ */
2661
+ "visually"
2662
+ /**
2663
+ * Children are fully removed from the layout.
2664
+ * They take up no space and do not affect sibling positioning.
2665
+ */
2666
+ | "functionally";
2667
+ /**
2668
+ * Conditional rendering node. Shows or hides its children based on predicate conditions.
2669
+ * All predicates MUST evaluate to true for children to be shown (AND logic).
2670
+ *
2671
+ * Use this node to conditionally display content based on custom state, offer count, or other
2672
+ * predicate conditions. Do NOT nest When nodes unnecessarily; combine predicates in a single
2673
+ * When node instead.
2674
+ */
867
2675
  export interface WhenModel<Children, Predicates> {
2676
+ /**
2677
+ * Array of conditions that MUST ALL be true for children to render.
2678
+ * Uses AND logic: if any predicate is false, children are hidden.
2679
+ * MUST contain at least one predicate.
2680
+ */
868
2681
  predicates: Predicates[];
2682
+ /** Child nodes to conditionally show or hide based on the predicates. */
869
2683
  children: Children[];
2684
+ /**
2685
+ * Optional transition animation configuration for when visibility changes.
2686
+ * Controls how children animate in and out when predicates change.
2687
+ */
870
2688
  transition?: null | WhenTransition;
2689
+ /**
2690
+ * Controls how hidden children are treated in the layout.
2691
+ * If omitted, defaults to functionally hiding (fully removed from layout).
2692
+ */
871
2693
  hide?: null | WhenHidden;
872
2694
  }
2695
+ /** Styling properties for ZStack container layout. ZStack layers children on top of each other. */
873
2696
  export interface ZStackContainerStylingProperties {
2697
+ /** Controls horizontal positioning of children within the ZStack. */
874
2698
  justifyContent?: null | FlexJustification;
2699
+ /** Controls vertical positioning of children within the ZStack. */
875
2700
  alignItems?: null | FlexAlignment;
2701
+ /** Applies a box shadow effect around the container. */
876
2702
  shadow?: null | Shadow;
2703
+ /** Controls whether content overflowing the container bounds is visible or hidden. */
877
2704
  overflow?: null | Overflow;
2705
+ /** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
878
2706
  blur?: null | number;
879
2707
  }
2708
+ /**
2709
+ * Available style categories for the ZStack element. Each optional field enables a specific
2710
+ * category of visual styling. Omit a field to leave that category unstyled.
2711
+ */
880
2712
  export interface ZStackStyle {
2713
+ /**
2714
+ * Layout properties for the ZStack container (alignment of stacked children).
2715
+ * MUST be used to control how children are positioned within the stack.
2716
+ */
881
2717
  container?: null | ZStackContainerStylingProperties;
2718
+ /**
2719
+ * Background color and image properties. Use to set a solid color, gradient, or image
2720
+ * behind the stacked content.
2721
+ */
882
2722
  background?: null | BackgroundStylingProperties;
2723
+ /**
2724
+ * Border radius, color, width and style properties. Use to add visible borders or
2725
+ * rounded corners to the ZStack.
2726
+ */
883
2727
  border?: null | BorderStylingProperties;
2728
+ /**
2729
+ * Width, height and rotation properties. Use to explicitly size the ZStack or apply
2730
+ * rotation transforms. Do NOT set width/height if the ZStack should size to its content.
2731
+ */
884
2732
  dimension?: null | DimensionStylingProperties;
2733
+ /**
2734
+ * Properties controlling this element's behaviour as a child of a flex container.
2735
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
2736
+ */
885
2737
  flexChild?: null | FlexChildStylingProperties;
2738
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the ZStack. */
886
2739
  spacing?: null | SpacingStylingProperties;
887
2740
  }
2741
+ /**
2742
+ * Styleable elements of the ZStack node. The ZStack has a single styleable element: its own
2743
+ * container.
2744
+ */
888
2745
  export interface ZStackElements {
2746
+ /**
2747
+ * Style blocks for the ZStack container itself. The array represents breakpoint-specific
2748
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
2749
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
2750
+ */
889
2751
  own: BasicStateStylingBlock<ZStackStyle>[];
890
2752
  }
2753
+ /**
2754
+ * A layered container that stacks children on top of each other along the z-axis. Later
2755
+ * children render on top of earlier ones. Use for overlapping content such as badges on
2756
+ * images, text overlays, or layered decorative elements. Do NOT use ZStack for simple
2757
+ * sequential layouts; use Row or Column instead.
2758
+ */
891
2759
  export interface ZStackModel<Children, Predicates> {
2760
+ /**
2761
+ * Accessibility label for screen readers. Omit if the ZStack is purely decorative or its
2762
+ * children already provide sufficient accessible labels. MUST be set when the ZStack
2763
+ * conveys meaning not available from its children alone.
2764
+ */
892
2765
  a11yLabel?: null | string;
2766
+ /**
2767
+ * Visual styles for this ZStack. See styling documentation for the structure. Omit to use
2768
+ * default (unstyled) rendering.
2769
+ */
893
2770
  styles?: null | LayoutStyle<ZStackElements, ConditionalStyleTransition<ZStackTransitions, Predicates>>;
2771
+ /**
2772
+ * Child nodes stacked on top of each other within this ZStack. MUST contain at least one
2773
+ * child. Children are rendered in source order, with later children appearing on top of
2774
+ * earlier ones.
2775
+ */
894
2776
  children: Children[];
895
2777
  }
2778
+ /** Transition styles for the ZStack node. Use to animate style changes smoothly. */
896
2779
  export interface ZStackTransitions {
2780
+ /**
2781
+ * Transition properties for the ZStack container. Specifies which style properties
2782
+ * should animate and their duration/easing when values change.
2783
+ */
897
2784
  own?: null | ZStackStyle;
898
2785
  }
2786
+ /**
2787
+ * Root node types for a catalog stacked collection item template. Must be a Row or Column
2788
+ * that contains CatalogStackedCollectionTemplateNodeChildren.
2789
+ */
899
2790
  export type CatalogStackedCollectionTemplateNode = {
900
2791
  type: "Row";
901
2792
  node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
@@ -903,6 +2794,11 @@ export type CatalogStackedCollectionTemplateNode = {
903
2794
  type: "Column";
904
2795
  node: ColumnModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
905
2796
  };
2797
+ /**
2798
+ * Child node types allowed inside a catalog stacked collection template row or column.
2799
+ * Includes layout containers, text, images, icons, data-bound content, interactive triggers,
2800
+ * catalog response buttons, radio groups, and quantity counters.
2801
+ */
906
2802
  export type CatalogStackedCollectionTemplateNodeChildren = {
907
2803
  type: "Row";
908
2804
  node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
@@ -955,9 +2851,36 @@ export type CatalogStackedCollectionTemplateNodeChildren = {
955
2851
  type: "EscapeHatch";
956
2852
  node: EscapeHatchModel;
957
2853
  };
958
- export type DimensionHeightFitValue = "wrap-content" | "fit-height";
959
- export type DimensionWidthFitValue = "wrap-content" | "fit-width";
960
- export type LayoutDisplayPreset = "FULLSCREEN" | "EMBEDDED" | "ATTACHED";
2854
+ /**
2855
+ * Fit behaviour options for height.
2856
+ * Used as the 'value' inside a {"type": "fit", "value": ...} height specification.
2857
+ */
2858
+ export type DimensionHeightFitValue =
2859
+ /** Shrinks to fit the content height. */
2860
+ "wrap-content"
2861
+ /** Expands to fill the available height. */
2862
+ | "fit-height";
2863
+ /**
2864
+ * Fit behaviour options for width.
2865
+ * Used as the 'value' inside a {"type": "fit", "value": ...} width specification.
2866
+ */
2867
+ export type DimensionWidthFitValue =
2868
+ /** Shrinks to fit the content width. */
2869
+ "wrap-content"
2870
+ /** Expands to fill the available width. */
2871
+ | "fit-width";
2872
+ /** Controls how the layout is displayed on the page. */
2873
+ export type LayoutDisplayPreset =
2874
+ /** Layout covers the full viewport. */
2875
+ "FULLSCREEN"
2876
+ /** Layout is embedded inline within the page content. */
2877
+ | "EMBEDDED"
2878
+ /** Layout is attached/anchored to a specific position. */
2879
+ | "ATTACHED";
2880
+ /**
2881
+ * All node types supported in the web platform schema. This is the union type used by SDKs.
2882
+ * Layouts are authored using OuterLayoutSchemaModel or LayoutVariantSchemaModel instead.
2883
+ */
961
2884
  export type LayoutSchemaModel = {
962
2885
  type: "Row";
963
2886
  node: RowModel<LayoutSchemaModel, WhenPredicate>;
@@ -1052,6 +2975,11 @@ export type LayoutSchemaModel = {
1052
2975
  type: "EscapeHatch";
1053
2976
  node: EscapeHatchModel;
1054
2977
  };
2978
+ /**
2979
+ * Recursive child node types allowed within layout variant containers. Includes all layout
2980
+ * variant nodes such as layout, text, images, data-bound content, interactive triggers,
2981
+ * catalog components, and escape hatches.
2982
+ */
1055
2983
  export type LayoutVariantChildren = {
1056
2984
  type: "Row";
1057
2985
  node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -1110,7 +3038,23 @@ export type LayoutVariantChildren = {
1110
3038
  type: "EscapeHatch";
1111
3039
  node: EscapeHatchModel;
1112
3040
  };
1113
- export type LayoutVariantDomainStateKey = "offerComplete";
3041
+ /**
3042
+ * Keys for accessing application domain state in the layout variant (offer
3043
+ * format) context. Serialized as camelCase strings. These are the domain
3044
+ * state keys available when defining conditional rendering within a layout
3045
+ * variant.
3046
+ */
3047
+ export type LayoutVariantDomainStateKey =
3048
+ /**
3049
+ * Indicates whether the current offer has been completed by the user.
3050
+ * Use to show post-completion content or hide offer-specific elements.
3051
+ */
3052
+ "offerComplete";
3053
+ /**
3054
+ * Non-interactive child node types within layout variants. Only allows structural containers,
3055
+ * static/data images, basic text, icons, conditional nodes, and escape hatches. Used as
3056
+ * children of interactive elements like buttons and links in layout variants.
3057
+ */
1114
3058
  export type LayoutVariantNonInteractableChildren = {
1115
3059
  type: "Row";
1116
3060
  node: RowModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
@@ -1145,6 +3089,10 @@ export type LayoutVariantNonInteractableChildren = {
1145
3089
  type: "EscapeHatch";
1146
3090
  node: EscapeHatchModel;
1147
3091
  };
3092
+ /**
3093
+ * Node types valid for use in layout variants (offer formats). Layout variants contain the
3094
+ * offer-specific creative content including images, text, response buttons, and catalog components.
3095
+ */
1148
3096
  export type LayoutVariantSchemaModel = {
1149
3097
  type: "Row";
1150
3098
  node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -1203,34 +3151,63 @@ export type LayoutVariantSchemaModel = {
1203
3151
  type: "EscapeHatch";
1204
3152
  node: EscapeHatchModel;
1205
3153
  };
1206
- export type LayoutVariantWhenPredicate = {
3154
+ /**
3155
+ * Predicate types available in the layout variant (offer format) context.
3156
+ * This is a subset of predicates that are valid when defining conditional
3157
+ * rendering within a layout variant. Each predicate MUST include a "type"
3158
+ * field and a "predicate" field.
3159
+ */
3160
+ export type LayoutVariantWhenPredicate =
3161
+ /** Tests the viewport width against a breakpoint value. */
3162
+ {
1207
3163
  type: "Breakpoint";
1208
3164
  predicate: BreakpointPredicate;
1209
- } | {
3165
+ }
3166
+ /** Tests the position index of the current item in a collection. */
3167
+ | {
1210
3168
  type: "Position";
1211
3169
  predicate: PositionPredicate;
1212
- } | {
3170
+ }
3171
+ /** Tests which offer index is currently visible. */
3172
+ | {
1213
3173
  type: "Progression";
1214
3174
  predicate: ProgressionPredicate;
1215
- } | {
3175
+ }
3176
+ /** Tests whether dark mode is active. */
3177
+ | {
1216
3178
  type: "DarkMode";
1217
3179
  predicate: DarkModePredicate;
1218
- } | {
3180
+ }
3181
+ /** Tests whether a creative data attribute exists. */
3182
+ | {
1219
3183
  type: "CreativeCopy";
1220
3184
  predicate: CreativeCopyPredicate;
1221
- } | {
3185
+ }
3186
+ /** Evaluates a hardcoded boolean value. */
3187
+ | {
1222
3188
  type: "StaticBoolean";
1223
3189
  predicate: StaticBooleanPredicate;
1224
- } | {
3190
+ }
3191
+ /** Tests a custom state value set by state trigger nodes. */
3192
+ | {
1225
3193
  type: "CustomState";
1226
3194
  predicate: CustomStatePredicate;
1227
- } | {
3195
+ }
3196
+ /** Tests application domain state in the layout variant context. */
3197
+ | {
1228
3198
  type: "DomainState";
1229
3199
  predicate: DomainStatePredicate<LayoutVariantDomainStateKey>;
1230
- } | {
3200
+ }
3201
+ /** Compares a static string input against a value. */
3202
+ | {
1231
3203
  type: "StaticString";
1232
3204
  predicate: StaticStringPredicate;
1233
3205
  };
3206
+ /**
3207
+ * Child node types allowed inside modal containers (Overlay, BottomSheet) in the combined
3208
+ * SDK schema. Includes structural, presentational, distribution, and interactive nodes
3209
+ * but excludes nested modals.
3210
+ */
1234
3211
  export type ModalChildren = {
1235
3212
  type: "Row";
1236
3213
  node: RowModel<ModalChildren, WhenPredicate>;
@@ -1298,6 +3275,11 @@ export type ModalChildren = {
1298
3275
  type: "EscapeHatch";
1299
3276
  node: EscapeHatchModel;
1300
3277
  };
3278
+ /**
3279
+ * Child node types allowed inside modal containers (Overlay, BottomSheet) within outer
3280
+ * layouts. Includes structural, presentational, distribution, and interactive nodes scoped
3281
+ * to outer layout predicates, but excludes nested modals.
3282
+ */
1301
3283
  export type ModalOuterChildren = {
1302
3284
  type: "Row";
1303
3285
  node: RowModel<ModalOuterChildren, OuterLayoutWhenPredicate>;
@@ -1365,6 +3347,11 @@ export type ModalOuterChildren = {
1365
3347
  type: "EscapeHatch";
1366
3348
  node: EscapeHatchModel;
1367
3349
  };
3350
+ /**
3351
+ * Non-interactive child node types in the combined SDK schema. Only allows structural
3352
+ * containers, static/data images, basic text, icons, conditional nodes, and escape hatches.
3353
+ * Used as children of interactive elements like buttons and links.
3354
+ */
1368
3355
  export type NonInteractableChildren = {
1369
3356
  type: "Row";
1370
3357
  node: RowModel<NonInteractableChildren, WhenPredicate>;
@@ -1399,6 +3386,10 @@ export type NonInteractableChildren = {
1399
3386
  type: "EscapeHatch";
1400
3387
  node: EscapeHatchModel;
1401
3388
  };
3389
+ /**
3390
+ * Recursive child node types allowed within outer layout containers. Includes structural,
3391
+ * distribution, navigation, and presentational nodes scoped to outer layout predicates.
3392
+ */
1402
3393
  export type OuterLayoutChildren = {
1403
3394
  type: "Row";
1404
3395
  node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1466,6 +3457,11 @@ export type OuterLayoutChildren = {
1466
3457
  type: "EscapeHatch";
1467
3458
  node: EscapeHatchModel;
1468
3459
  };
3460
+ /**
3461
+ * Non-interactive child node types within outer layouts. Only allows structural containers,
3462
+ * static images, basic text, icons, conditional nodes, and escape hatches. Used as children
3463
+ * of interactive elements like buttons and links in outer layouts.
3464
+ */
1469
3465
  export type OuterLayoutNonInteractableChildren = {
1470
3466
  type: "Row";
1471
3467
  node: RowModel<OuterLayoutNonInteractableChildren, OuterLayoutWhenPredicate>;
@@ -1494,6 +3490,11 @@ export type OuterLayoutNonInteractableChildren = {
1494
3490
  type: "EscapeHatch";
1495
3491
  node: EscapeHatchModel;
1496
3492
  };
3493
+ /**
3494
+ * Node types valid for use in outer layouts. Outer layouts define the frame and offer
3495
+ * distribution but do not contain offer-specific content. They include structural containers,
3496
+ * distribution nodes, navigation controls, and close buttons.
3497
+ */
1497
3498
  export type OuterLayoutSchemaModel = {
1498
3499
  type: "Row";
1499
3500
  node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1567,25 +3568,47 @@ export type OuterLayoutSchemaModel = {
1567
3568
  type: "EscapeHatch";
1568
3569
  node: EscapeHatchModel;
1569
3570
  };
1570
- export type OuterLayoutWhenPredicate = {
3571
+ /**
3572
+ * Predicate types available in the outer layout context. This is a more
3573
+ * restricted subset of predicates for use in the outer layout wrapper.
3574
+ * Does NOT include Position, CreativeCopy, or DomainState predicates.
3575
+ * Each predicate MUST include a "type" field and a "predicate" field.
3576
+ */
3577
+ export type OuterLayoutWhenPredicate =
3578
+ /** Tests the viewport width against a breakpoint value. */
3579
+ {
1571
3580
  type: "Breakpoint";
1572
3581
  predicate: BreakpointPredicate;
1573
- } | {
3582
+ }
3583
+ /** Tests which offer index is currently visible. */
3584
+ | {
1574
3585
  type: "Progression";
1575
3586
  predicate: ProgressionPredicate;
1576
- } | {
3587
+ }
3588
+ /** Tests whether dark mode is active. */
3589
+ | {
1577
3590
  type: "DarkMode";
1578
3591
  predicate: DarkModePredicate;
1579
- } | {
3592
+ }
3593
+ /** Evaluates a hardcoded boolean value. */
3594
+ | {
1580
3595
  type: "StaticBoolean";
1581
3596
  predicate: StaticBooleanPredicate;
1582
- } | {
3597
+ }
3598
+ /** Tests a custom state value set by state trigger nodes. */
3599
+ | {
1583
3600
  type: "CustomState";
1584
3601
  predicate: CustomStatePredicate;
1585
- } | {
3602
+ }
3603
+ /** Compares a static string input against a value. */
3604
+ | {
1586
3605
  type: "StaticString";
1587
3606
  predicate: StaticStringPredicate;
1588
3607
  };
3608
+ /**
3609
+ * Child node types allowed inside scrollable containers (ScrollableColumn, ScrollableRow)
3610
+ * in the combined SDK schema. Excludes overlay and bottom sheet nodes that cannot scroll.
3611
+ */
1589
3612
  export type ScrollableChildren = {
1590
3613
  type: "Row";
1591
3614
  node: RowModel<ScrollableChildren, WhenPredicate>;
@@ -1662,6 +3685,10 @@ export type ScrollableChildren = {
1662
3685
  type: "EscapeHatch";
1663
3686
  node: EscapeHatchModel;
1664
3687
  };
3688
+ /**
3689
+ * Child node types allowed inside scrollable containers within layout variants. Excludes
3690
+ * overlay and bottom sheet nodes, scoped to layout variant predicates. Includes catalog components.
3691
+ */
1665
3692
  export type ScrollableLayoutVariantChildren = {
1666
3693
  type: "Row";
1667
3694
  node: RowModel<ScrollableLayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -1714,6 +3741,10 @@ export type ScrollableLayoutVariantChildren = {
1714
3741
  type: "EscapeHatch";
1715
3742
  node: EscapeHatchModel;
1716
3743
  };
3744
+ /**
3745
+ * Child node types allowed inside scrollable containers within outer layouts. Excludes overlay
3746
+ * and bottom sheet nodes, scoped to outer layout predicates.
3747
+ */
1717
3748
  export type ScrollableOuterLayoutChildren = {
1718
3749
  type: "Row";
1719
3750
  node: RowModel<ScrollableOuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1775,31 +3806,55 @@ export type ScrollableOuterLayoutChildren = {
1775
3806
  type: "EscapeHatch";
1776
3807
  node: EscapeHatchModel;
1777
3808
  };
1778
- export type WhenPredicate = {
3809
+ /**
3810
+ * All available predicate types for conditional rendering in the full layout
3811
+ * schema. Used with the When node to conditionally show or hide children.
3812
+ * Each predicate MUST include a "type" field to identify the predicate kind
3813
+ * and a "predicate" field containing the predicate configuration.
3814
+ */
3815
+ export type WhenPredicate =
3816
+ /** Tests the viewport width against a breakpoint value. */
3817
+ {
1779
3818
  type: "Breakpoint";
1780
3819
  predicate: BreakpointPredicate;
1781
- } | {
3820
+ }
3821
+ /** Tests the position index of the current item in a collection. */
3822
+ | {
1782
3823
  type: "Position";
1783
3824
  predicate: PositionPredicate;
1784
- } | {
3825
+ }
3826
+ /** Tests which offer index is currently visible. */
3827
+ | {
1785
3828
  type: "Progression";
1786
3829
  predicate: ProgressionPredicate;
1787
- } | {
3830
+ }
3831
+ /** Tests whether dark mode is active. */
3832
+ | {
1788
3833
  type: "DarkMode";
1789
3834
  predicate: DarkModePredicate;
1790
- } | {
3835
+ }
3836
+ /** Tests whether a creative data attribute exists. */
3837
+ | {
1791
3838
  type: "CreativeCopy";
1792
3839
  predicate: CreativeCopyPredicate;
1793
- } | {
3840
+ }
3841
+ /** Evaluates a hardcoded boolean value. */
3842
+ | {
1794
3843
  type: "StaticBoolean";
1795
3844
  predicate: StaticBooleanPredicate;
1796
- } | {
3845
+ }
3846
+ /** Tests a custom state value set by state trigger nodes. */
3847
+ | {
1797
3848
  type: "CustomState";
1798
3849
  predicate: CustomStatePredicate;
1799
- } | {
3850
+ }
3851
+ /** Tests application domain state. */
3852
+ | {
1800
3853
  type: "DomainState";
1801
3854
  predicate: LayoutSchemaDomainStatePredicate;
1802
- } | {
3855
+ }
3856
+ /** Compares a static string input against a value. */
3857
+ | {
1803
3858
  type: "StaticString";
1804
3859
  predicate: StaticStringPredicate;
1805
3860
  };