@rokt/dcui-orchestrator 0.2.1-rc.9 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (557) 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/extensions/address-form/src/sagas/cart-service/sagas.d.ts +9 -0
  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/minimized-bottomsheet/src/components/bottom-sheet/bottom-sheet.d.ts +2 -0
  18. package/dist/extensions/minimized-bottomsheet/src/components/bottom-sheet/factory.d.ts +1 -0
  19. package/dist/extensions/minimized-bottomsheet/src/components/bottom-sheet/hooks.d.ts +2 -1
  20. package/dist/extensions/minimized-bottomsheet/src/components/bottomsheet-wrapper/overlay-wrapper.d.ts +2 -2
  21. package/dist/extensions/shimmer-background/src/index.d.ts +10 -0
  22. package/dist/extensions/shimmer-background/src/shimmer-background.d.ts +11 -0
  23. package/dist/index.cjs +97 -46
  24. package/dist/index.js +102 -51
  25. package/dist/libraries/dcui-components/src/components/action-button/action-button.d.ts +24 -0
  26. package/dist/libraries/dcui-components/src/components/action-button/factory.d.ts +2 -0
  27. package/dist/libraries/dcui-components/src/components/action-button/index.d.ts +2 -0
  28. package/dist/libraries/dcui-components/src/components/catalog-carousel-collection/hooks.d.ts +7 -0
  29. package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/factory.d.ts +1 -1
  30. package/dist/libraries/dcui-components/src/components/data-image-carousel/carousel-indicators.d.ts +20 -0
  31. package/dist/libraries/dcui-components/src/components/data-image-carousel/data-image-carousel.d.ts +100 -0
  32. package/dist/libraries/dcui-components/src/components/data-image-carousel/factory.d.ts +2 -0
  33. package/dist/libraries/dcui-components/src/components/data-image-carousel/index.d.ts +2 -0
  34. package/dist/libraries/dcui-components/src/components/data-mapper/form-state-projection.d.ts +31 -0
  35. package/dist/libraries/dcui-components/src/components/data-mapper/index.d.ts +1 -0
  36. package/dist/libraries/dcui-components/src/components/extension/context.d.ts +2 -1
  37. package/dist/libraries/dcui-components/src/components/extension/models.d.ts +2 -1
  38. package/dist/libraries/dcui-components/src/components/form/factory.d.ts +2 -0
  39. package/dist/libraries/dcui-components/src/components/form/form.d.ts +24 -0
  40. package/dist/libraries/dcui-components/src/components/form/index.d.ts +2 -0
  41. package/dist/libraries/dcui-components/src/components/icon-group/factory.d.ts +2 -0
  42. package/dist/libraries/dcui-components/src/components/icon-group/icon-group.d.ts +36 -0
  43. package/dist/libraries/dcui-components/src/components/icon-group/index.d.ts +2 -0
  44. package/dist/libraries/dcui-components/src/components/index.d.ts +5 -0
  45. package/dist/libraries/dcui-components/src/components/layout-timer/index.d.ts +5 -0
  46. package/dist/libraries/dcui-components/src/components/layout-timer/layout-timer.d.ts +7 -0
  47. package/dist/libraries/dcui-components/src/components/layout-timer/timer-countdown-provider.d.ts +8 -0
  48. package/dist/libraries/dcui-components/src/components/layout-timer/use-layout-timer.d.ts +11 -0
  49. package/dist/libraries/dcui-components/src/components/layout-timer/use-timer-action-dispatch.d.ts +9 -0
  50. package/dist/libraries/dcui-components/src/components/rich-text/rich-text.d.ts +2 -0
  51. package/dist/libraries/dcui-components/src/components/scrollable-column/scrollable-column.d.ts +1 -1
  52. package/dist/libraries/dcui-components/src/components/scrollable-row/scrollable-row.d.ts +1 -1
  53. package/dist/libraries/dcui-components/src/components/style-mapper/get-css-writer.d.ts +1 -0
  54. package/dist/libraries/dcui-components/src/components/style-mapper/transformers/index.d.ts +1 -0
  55. package/dist/libraries/dcui-components/src/components/style-mapper/transformers/scroll-mask-transformer.d.ts +8 -0
  56. package/dist/libraries/dcui-components/src/components/style-mapper/types.d.ts +2 -2
  57. package/dist/libraries/dcui-components/src/components/text-input/factory.d.ts +2 -0
  58. package/dist/libraries/dcui-components/src/components/text-input/index.d.ts +2 -0
  59. package/dist/libraries/dcui-components/src/components/text-input/text-input.d.ts +23 -0
  60. package/dist/libraries/dcui-components/src/components/when/form-state.d.ts +9 -0
  61. package/dist/libraries/dcui-components/src/contexts/form-context.d.ts +15 -0
  62. package/dist/libraries/dcui-components/src/contexts/index.d.ts +2 -0
  63. package/dist/libraries/dcui-components/src/contexts/minimizable-context.d.ts +2 -0
  64. package/dist/libraries/dcui-components/src/contexts/offer-data-context.d.ts +1 -0
  65. package/dist/libraries/dcui-components/src/failure-codes.d.ts +1 -0
  66. package/dist/libraries/dcui-components/src/utils/get-scroll-mask-config.d.ts +20 -0
  67. package/dist/libraries/dcui-components/src/utils/index.d.ts +2 -0
  68. package/dist/libraries/dcui-components/src/utils/use-scroll-mask-visibility.d.ts +22 -0
  69. package/dist/libraries/dcui-schema/src/models/nodes/close-button.d.ts +3 -1
  70. package/dist/libraries/domain/src/behaviors/cart-item-event.d.ts +44 -0
  71. package/dist/libraries/domain/src/behaviors/dismiss-overlay.d.ts +9 -0
  72. package/dist/libraries/domain/src/behaviors/domain-states.d.ts +2 -2
  73. package/dist/libraries/domain/src/behaviors/form-state.d.ts +66 -0
  74. package/dist/libraries/domain/src/behaviors/global-actions.d.ts +17 -1
  75. package/dist/libraries/domain/src/behaviors/index.d.ts +6 -0
  76. package/dist/libraries/domain/src/behaviors/layout-events.d.ts +17 -0
  77. package/dist/libraries/domain/src/behaviors/offer-engagement.d.ts +3 -1
  78. package/dist/libraries/domain/src/behaviors/report-error.d.ts +26 -0
  79. package/dist/libraries/domain/src/behaviors/send-partner.d.ts +40 -3
  80. package/dist/libraries/domain/src/behaviors/trigger-action.d.ts +19 -0
  81. package/dist/libraries/domain/src/models/domain-state-keys.d.ts +5 -0
  82. package/dist/libraries/domain/src/models/form-state.d.ts +85 -0
  83. package/dist/libraries/domain/src/models/global-state.d.ts +4 -1
  84. package/dist/libraries/domain/src/models/index.d.ts +3 -0
  85. package/dist/libraries/domain/src/models/layout/index.d.ts +1 -0
  86. package/dist/libraries/domain/src/models/layout/layout-catalog-item.d.ts +2 -0
  87. package/dist/libraries/domain/src/models/layout/layout-child-config.d.ts +2 -0
  88. package/dist/libraries/domain/src/models/layout/layout-config.d.ts +2 -2
  89. package/dist/libraries/domain/src/models/layout/layout-offer.d.ts +2 -0
  90. package/dist/libraries/domain/src/models/layout/layout-signal-type.d.ts +3 -1
  91. package/dist/libraries/domain/src/models/layout/layout-transaction-data.d.ts +31 -0
  92. package/dist/libraries/domain/src/models/partner-event.d.ts +2 -2
  93. package/dist/libraries/domain/src/models/plugin/index.d.ts +2 -0
  94. package/dist/libraries/domain/src/models/plugin/plugin-catalog-item-group.d.ts +17 -0
  95. package/dist/libraries/domain/src/models/plugin/plugin-catalog-item.d.ts +8 -0
  96. package/dist/libraries/domain/src/models/plugin/plugin-child-layout-model.d.ts +2 -0
  97. package/dist/libraries/domain/src/models/plugin/plugin-model.d.ts +3 -3
  98. package/dist/libraries/domain/src/models/plugin/plugin-offer.d.ts +4 -0
  99. package/dist/libraries/domain/src/models/plugin/plugin-signal-type.d.ts +4 -1
  100. package/dist/libraries/domain/src/models/plugin/plugin-transaction-data.d.ts +31 -0
  101. package/dist/libraries/domain/src/models/purchase.d.ts +54 -0
  102. package/dist/libraries/domain/src/models/shipping.d.ts +25 -0
  103. package/dist/libraries/domain/src/models/signals.d.ts +19 -5
  104. package/dist/libraries/layout-renderer-utils/src/actions/domain-states.d.ts +14 -0
  105. package/dist/libraries/layout-renderer-utils/src/actions/form-states.d.ts +37 -0
  106. package/dist/libraries/layout-renderer-utils/src/actions/index.d.ts +15 -3
  107. package/dist/libraries/layout-renderer-utils/src/actions/overlay.d.ts +15 -8
  108. package/dist/libraries/layout-renderer-utils/src/actions/settings.d.ts +10 -3
  109. package/dist/libraries/layout-renderer-utils/src/components/index.d.ts +4 -1
  110. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/connector.d.ts +2 -0
  111. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/drag-handle.d.ts +7 -0
  112. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/extract-border-styles.d.ts +25 -0
  113. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/factory.d.ts +13 -0
  114. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/hooks.d.ts +23 -0
  115. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/index.d.ts +2 -0
  116. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet-wrapper.d.ts +12 -0
  117. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet.d.ts +27 -0
  118. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/sheet-gesture.d.ts +18 -0
  119. package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/types.d.ts +63 -0
  120. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/factory.d.ts +2 -0
  121. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/index.d.ts +2 -0
  122. package/dist/libraries/layout-renderer-utils/src/components/minimize-button/minimize-button.d.ts +12 -0
  123. package/dist/libraries/layout-renderer-utils/src/components/overlay/overlay.d.ts +1 -0
  124. package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/attached-overlay-wrapper.d.ts +19 -0
  125. package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/index.d.ts +1 -0
  126. package/dist/libraries/layout-renderer-utils/src/components/utils.d.ts +1 -0
  127. package/dist/libraries/layout-renderer-utils/src/constant.d.ts +1 -1
  128. package/dist/libraries/layout-renderer-utils/src/hooks/useEscToClose.d.ts +1 -0
  129. package/dist/libraries/layout-renderer-utils/src/models/state/fired-events.d.ts +17 -0
  130. package/dist/libraries/layout-renderer-utils/src/models/state/form-states.d.ts +11 -0
  131. package/dist/libraries/layout-renderer-utils/src/models/state/index.d.ts +9 -2
  132. package/dist/libraries/layout-renderer-utils/src/models/state/layout.d.ts +2 -1
  133. package/dist/libraries/layout-renderer-utils/src/models/state/settings.d.ts +6 -0
  134. package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/index.d.ts +1 -0
  135. package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/reducer.d.ts +5 -0
  136. package/dist/libraries/layout-renderer-utils/src/reducers/form-states/index.d.ts +1 -0
  137. package/dist/libraries/layout-renderer-utils/src/reducers/form-states/reducer.d.ts +4 -0
  138. package/dist/libraries/layout-renderer-utils/src/reducers/index.d.ts +6 -0
  139. package/dist/libraries/layout-renderer-utils/src/reducers/settings/reducer.d.ts +3 -3
  140. package/dist/libraries/layout-renderer-utils/src/sagas/error/error-codes.d.ts +2 -0
  141. package/dist/libraries/layout-renderer-utils/src/sagas/form-states/index.d.ts +1 -0
  142. package/dist/libraries/layout-renderer-utils/src/sagas/form-states/sagas.d.ts +16 -0
  143. package/dist/libraries/layout-renderer-utils/src/sagas/index.d.ts +2 -0
  144. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/attached-bottomsheet.d.ts +18 -0
  145. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/display.d.ts +7 -13
  146. package/dist/libraries/layout-renderer-utils/src/sagas/plugin/sagas.d.ts +1 -1
  147. package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/index.d.ts +1 -0
  148. package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/sagas.d.ts +12 -0
  149. package/dist/libraries/layout-renderer-utils/src/selectors/fired-events/selectors.d.ts +7 -0
  150. package/dist/libraries/layout-renderer-utils/src/selectors/form-state/index.d.ts +1 -0
  151. package/dist/libraries/layout-renderer-utils/src/selectors/form-state/selectors.d.ts +8 -0
  152. package/dist/libraries/layout-renderer-utils/src/selectors/index.d.ts +2 -0
  153. package/dist/libraries/layout-renderer-utils/src/utils/signals.d.ts +2 -2
  154. package/dist/libraries/module-connector/src/main.d.ts +1 -1
  155. package/dist/libraries/module-connector/src/models/gateway.d.ts +4 -3
  156. package/dist/libraries/module-connector/src/models/module-connector-builder.d.ts +4 -1
  157. package/dist/libraries/module-utils/src/actions/child-layouts.d.ts +11 -0
  158. package/dist/libraries/module-utils/src/actions/dynamic-data.d.ts +7 -0
  159. package/dist/libraries/module-utils/src/actions/index.d.ts +2 -0
  160. package/dist/libraries/module-utils/src/index.d.ts +5 -0
  161. package/dist/libraries/module-utils/src/models/index.d.ts +1 -0
  162. package/dist/libraries/module-utils/src/models/state/child-layouts.d.ts +4 -0
  163. package/dist/libraries/module-utils/src/models/state/dynamic-data.d.ts +3 -0
  164. package/dist/libraries/module-utils/src/models/state/index.d.ts +3 -0
  165. package/dist/libraries/module-utils/src/models/state/static-data.d.ts +6 -0
  166. package/dist/libraries/module-utils/src/reducers/child-layouts/index.d.ts +1 -0
  167. package/dist/libraries/module-utils/src/reducers/child-layouts/reducer.d.ts +5 -0
  168. package/dist/libraries/module-utils/src/reducers/dynamic-data/index.d.ts +1 -0
  169. package/dist/libraries/module-utils/src/reducers/dynamic-data/reducer.d.ts +4 -0
  170. package/dist/libraries/module-utils/src/reducers/index.d.ts +3 -0
  171. package/dist/libraries/module-utils/src/reducers/static-data/index.d.ts +1 -0
  172. package/dist/libraries/module-utils/src/reducers/static-data/reducer.d.ts +4 -0
  173. package/dist/libraries/module-utils/src/sagas/child-layouts/index.d.ts +1 -0
  174. package/dist/libraries/module-utils/src/sagas/child-layouts/sagas.d.ts +5 -0
  175. package/dist/libraries/module-utils/src/sagas/error-codes.d.ts +1 -0
  176. package/dist/libraries/module-utils/src/sagas/index.d.ts +1 -0
  177. package/dist/libraries/module-utils/src/selectors/child-layouts/index.d.ts +1 -0
  178. package/dist/libraries/module-utils/src/selectors/child-layouts/selectors.d.ts +4 -0
  179. package/dist/libraries/module-utils/src/selectors/dynamic-data/index.d.ts +1 -0
  180. package/dist/libraries/module-utils/src/selectors/dynamic-data/selectors.d.ts +4 -0
  181. package/dist/libraries/module-utils/src/selectors/index.d.ts +3 -0
  182. package/dist/libraries/module-utils/src/selectors/static-data/index.d.ts +1 -0
  183. package/dist/libraries/module-utils/src/selectors/static-data/selectors.d.ts +7 -0
  184. package/dist/libraries/orchestrator/src/actions/domain-states.d.ts +2 -2
  185. package/dist/libraries/orchestrator/src/actions/index.d.ts +14 -4
  186. package/dist/libraries/orchestrator/src/actions/trigger-action.d.ts +2 -0
  187. package/dist/libraries/orchestrator/src/global-store-proxy.d.ts +2 -0
  188. package/dist/libraries/orchestrator/src/models/index.d.ts +1 -1
  189. package/dist/libraries/orchestrator/src/models/state/domain-states.d.ts +2 -2
  190. package/dist/libraries/orchestrator/src/models/state/index.d.ts +0 -2
  191. package/dist/libraries/orchestrator/src/reducers/domain-states/reducer.d.ts +2 -1
  192. package/dist/libraries/orchestrator/src/reducers/index.d.ts +3 -1
  193. package/dist/libraries/orchestrator/src/sagas/plugin/config-transformer.d.ts +2 -2
  194. package/dist/libraries/orchestrator/src/sagas/plugin/migrate-schema.d.ts +2 -2
  195. package/dist/libraries/orchestrator/src/sagas/plugin/migrations/migration-mapper.d.ts +3 -3
  196. package/dist/libraries/orchestrator/src/sagas/plugin/migrations/v1.0.d.ts +2 -2
  197. package/dist/libraries/orchestrator/src/sagas/plugin/sagas.d.ts +2 -2
  198. package/dist/libraries/orchestrator/src/sagas/progression/sagas.d.ts +2 -1
  199. package/dist/libraries/orchestrator/src/sagas/trigger-action/index.d.ts +1 -0
  200. package/dist/libraries/orchestrator/src/sagas/trigger-action/sagas.d.ts +3 -0
  201. package/dist/libraries/orchestrator/src/selectors/domain-state/selectors.d.ts +2 -2
  202. package/dist/libraries/orchestrator/src/selectors/index.d.ts +1 -1
  203. package/dist/libraries/plugin-utils/src/translate-config.d.ts +5 -1
  204. package/dist/libraries/saga-utils/src/sagas/handle-variant-action.d.ts +12 -0
  205. package/dist/libraries/saga-utils/src/sagas/index.d.ts +1 -0
  206. package/dist/libraries/saga-utils/src/utils/catalog-translator.d.ts +1 -0
  207. package/dist/modules/add-to-cart/src/components/escape-hatch/factory.d.ts +1 -1
  208. package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry-data.d.ts +10 -0
  209. package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry.d.ts +9 -0
  210. package/dist/modules/add-to-cart/src/components/mapped-icons/mapped-icon.d.ts +15 -0
  211. package/dist/modules/add-to-cart/src/components/read-more-text/read-more-text.d.ts +29 -0
  212. package/dist/modules/add-to-cart/src/components/read-more-text-container/read-more-text-container.d.ts +34 -0
  213. package/dist/modules/add-to-cart/src/components/scroll-to-target/scroll-to-target.d.ts +56 -0
  214. package/dist/modules/add-to-cart/src/components/tooltip/tooltip.d.ts +42 -0
  215. package/dist/modules/add-to-cart/src/components/when-catalog-quantity/when-catalog-quantity.d.ts +22 -0
  216. package/dist/modules/add-to-cart/src/reducers/index.d.ts +1 -1
  217. package/dist/modules/add-to-cart/src/sagas/cart-service-response/index.d.ts +1 -0
  218. package/dist/modules/add-to-cart/src/sagas/cart-service-response/sagas.d.ts +11 -0
  219. package/dist/modules/add-to-cart/src/sagas/index.d.ts +11 -0
  220. package/dist/modules/add-to-cart/src/selectors/catalogItems/selectors.d.ts +2 -0
  221. package/dist/modules/add-to-cart/src/selectors/creative/index.d.ts +1 -0
  222. package/dist/modules/add-to-cart/src/selectors/creative/selectors.d.ts +3 -0
  223. package/dist/modules/add-to-cart/src/selectors/index.d.ts +2 -1
  224. package/dist/modules/add-to-cart/src/selectors/offerDataState/index.d.ts +1 -0
  225. package/dist/modules/add-to-cart/src/selectors/{globalOfferDataState → offerDataState}/selectors.d.ts +1 -1
  226. package/dist/modules/instant-purchase/src/actions/device-pay.d.ts +60 -0
  227. package/dist/modules/instant-purchase/src/actions/index.d.ts +2 -0
  228. package/dist/modules/instant-purchase/src/actions/instant-purchase.d.ts +52 -2
  229. package/dist/modules/instant-purchase/src/actions/paypal.d.ts +35 -0
  230. package/dist/modules/instant-purchase/src/channels/channel.d.ts +5 -1
  231. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/apple-pay-button.d.ts +36 -0
  232. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/catalog-device-pay-button.d.ts +59 -0
  233. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/factory.d.ts +2 -0
  234. package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/retryable-device-pay-error.d.ts +1 -0
  235. package/dist/modules/instant-purchase/src/components/catalog-discount-callout-tag/catalog-discount-callout-tag.d.ts +90 -0
  236. package/dist/modules/instant-purchase/src/components/catalog-dropdown/catalog-dropdown.d.ts +6 -0
  237. package/dist/modules/instant-purchase/src/components/catalog-dropdown/dropdown-options-context.d.ts +17 -0
  238. package/dist/modules/instant-purchase/src/components/catalog-dropdown/factory.d.ts +2 -0
  239. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-gallery-index.d.ts +1 -0
  240. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-image-gallery.d.ts +6 -0
  241. package/dist/modules/instant-purchase/src/components/catalog-imagegallery/factory.d.ts +2 -0
  242. package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/catalog-selectors-stacked.d.ts +6 -0
  243. package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/factory.d.ts +2 -0
  244. package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/catalog-thumbnail-gallery.d.ts +6 -0
  245. package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/factory.d.ts +2 -0
  246. package/dist/modules/instant-purchase/src/components/checkbox/checkbox.d.ts +1 -0
  247. package/dist/modules/instant-purchase/src/components/checkout-state-button-trigger/checkout-state-button-trigger.d.ts +2 -0
  248. package/dist/modules/instant-purchase/src/components/custom-state-validation-trigger-button/custom-state-validation-trigger-button.d.ts +28 -0
  249. package/dist/modules/instant-purchase/src/components/dismiss-instant-purchase-button/dismiss-instant-purchase-button.d.ts +1 -0
  250. package/dist/modules/instant-purchase/src/components/escape-hatch/factory.d.ts +1 -1
  251. package/dist/modules/instant-purchase/src/components/escape-hatch/index.d.ts +1 -0
  252. package/dist/modules/instant-purchase/src/components/{catalog-drop-down → escapehatch-catalog-drop-down}/catalog-drop-down.d.ts +2 -0
  253. package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/catalog-image-gallery.d.ts +15 -4
  254. package/dist/modules/instant-purchase/src/components/escapehatch-catalog-image-gallery/constants.d.ts +9 -0
  255. package/dist/modules/instant-purchase/src/components/inline-container/factory.d.ts +2 -0
  256. package/dist/modules/instant-purchase/src/components/inline-container/inline-container.d.ts +55 -0
  257. package/dist/modules/instant-purchase/src/components/loading-spinner/loading-spinner.d.ts +2 -1
  258. package/dist/modules/instant-purchase/src/components/offer-lifecycle-timer/offer-lifecycle-timer.d.ts +2 -0
  259. package/dist/modules/instant-purchase/src/components/read-more-text-container/read-more-text-container.d.ts +1 -0
  260. package/dist/modules/instant-purchase/src/components/rich-text/factory.d.ts +2 -0
  261. package/dist/modules/instant-purchase/src/components/rich-text/rich-text.d.ts +64 -0
  262. package/dist/modules/instant-purchase/src/components/snackbar/snackbar.d.ts +25 -0
  263. package/dist/modules/instant-purchase/src/constants/device-pay-error.d.ts +4 -0
  264. package/dist/modules/instant-purchase/src/constants/device-pay-providers.d.ts +26 -0
  265. package/dist/modules/instant-purchase/src/constants/index.d.ts +2 -0
  266. package/dist/modules/instant-purchase/src/models/state/device-pay-availability.d.ts +5 -0
  267. package/dist/modules/instant-purchase/src/models/state/index.d.ts +1 -0
  268. package/dist/modules/instant-purchase/src/models/state/instant-purchase.d.ts +70 -2
  269. package/dist/modules/instant-purchase/src/reducers/device-pay-availability/index.d.ts +1 -0
  270. package/dist/modules/instant-purchase/src/reducers/device-pay-availability/reducer.d.ts +4 -0
  271. package/dist/modules/instant-purchase/src/reducers/index.d.ts +17 -2
  272. package/dist/modules/instant-purchase/src/reducers/instant-purchase/index.d.ts +3 -0
  273. package/dist/modules/instant-purchase/src/reducers/instant-purchase/offer-lifecycle-event/index.d.ts +1 -0
  274. package/dist/modules/instant-purchase/src/reducers/instant-purchase/offer-lifecycle-event/reducer.d.ts +4 -0
  275. package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/index.d.ts +1 -0
  276. package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/reducer.d.ts +4 -0
  277. package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/index.d.ts +1 -0
  278. package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/reducer.d.ts +4 -0
  279. package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/index.d.ts +2 -0
  280. package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/reducer.d.ts +5 -0
  281. package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/index.d.ts +2 -0
  282. package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/reducer.d.ts +5 -0
  283. package/dist/modules/instant-purchase/src/sagas/checkout-lifecycle/sagas.d.ts +1 -1
  284. package/dist/modules/instant-purchase/src/sagas/device-pay/index.d.ts +1 -0
  285. package/dist/modules/instant-purchase/src/sagas/device-pay/sagas.d.ts +116 -0
  286. package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/index.d.ts +1 -0
  287. package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/sagas.d.ts +7 -0
  288. package/dist/modules/instant-purchase/src/sagas/error-codes.d.ts +14 -0
  289. package/dist/modules/instant-purchase/src/sagas/index.d.ts +16 -1
  290. package/dist/modules/instant-purchase/src/sagas/instant-purchase/sagas.d.ts +20 -72
  291. package/dist/modules/instant-purchase/src/sagas/instant-purchase-signals.d.ts +4 -0
  292. package/dist/modules/instant-purchase/src/sagas/layout-events.d.ts +9 -0
  293. package/dist/modules/instant-purchase/src/sagas/offer-engagement.d.ts +3 -0
  294. package/dist/modules/instant-purchase/src/sagas/paypal/index.d.ts +1 -0
  295. package/dist/modules/instant-purchase/src/sagas/paypal/sagas.d.ts +83 -0
  296. package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/index.d.ts +1 -0
  297. package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/sagas.d.ts +50 -0
  298. package/dist/modules/instant-purchase/src/sagas/variant-action-overrides.d.ts +11 -0
  299. package/dist/modules/instant-purchase/src/selectors/creative/index.d.ts +1 -0
  300. package/dist/modules/instant-purchase/src/selectors/creative/selectors.d.ts +5 -0
  301. package/dist/modules/instant-purchase/src/selectors/device-pay-availability/index.d.ts +1 -0
  302. package/dist/modules/instant-purchase/src/selectors/device-pay-availability/selectors.d.ts +13 -0
  303. package/dist/modules/instant-purchase/src/selectors/index.d.ts +4 -0
  304. package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/index.d.ts +1 -0
  305. package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/selectors.d.ts +3 -0
  306. package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/index.d.ts +1 -0
  307. package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/selectors.d.ts +3 -0
  308. package/dist/modules/instant-purchase/src/utils/create-tax-and-shipping-cache-key.d.ts +4 -0
  309. package/dist/modules/layouts-xp-sandbox/src/reducers/index.d.ts +1 -1
  310. package/dist/modules/layouts-xp-sandbox/src/sagas/index.d.ts +11 -0
  311. package/dist/modules/layouts-xp-sandbox/src/sagas/offer-engagement/sagas.d.ts +1 -1
  312. package/dist/modules/standard-marketing/src/components/escape-hatch/factory.d.ts +2 -0
  313. package/dist/modules/standard-marketing/src/components/escape-hatch-checkbox/escape-hatch-checkbox.d.ts +28 -0
  314. package/dist/modules/standard-marketing/src/reducers/index.d.ts +1 -1
  315. package/dist/modules/standard-marketing/src/sagas/index.d.ts +11 -0
  316. package/dist/modules/standard-marketing/src/sagas/offer-engagement/channels.d.ts +4 -1
  317. package/dist/modules/standard-marketing/src/sagas/offer-engagement/sagas.d.ts +3 -3
  318. package/node_modules/@rokt/dcui-layout-schema/dist/schema.d.ts +4694 -117
  319. package/node_modules/@rokt/dcui-layout-schema/dist/schema.js +1 -1
  320. package/node_modules/@rokt/dcui-layout-schema/dist/tsconfig.tsbuildinfo +1 -1
  321. package/node_modules/@rokt/dcui-layout-schema/package.json +1 -1
  322. package/node_modules/@rokt/dcui-layout-schema/v0.1/index.d.ts +953 -29
  323. package/node_modules/@rokt/dcui-layout-schema/v0.1/index.js +1 -1
  324. package/node_modules/@rokt/dcui-layout-schema/v0.10/index.d.ts +1087 -35
  325. package/node_modules/@rokt/dcui-layout-schema/v0.10/index.js +1 -1
  326. package/node_modules/@rokt/dcui-layout-schema/v0.11/index.d.ts +1143 -35
  327. package/node_modules/@rokt/dcui-layout-schema/v0.11/index.js +1 -1
  328. package/node_modules/@rokt/dcui-layout-schema/v0.12/index.d.ts +1147 -35
  329. package/node_modules/@rokt/dcui-layout-schema/v0.12/index.js +1 -1
  330. package/node_modules/@rokt/dcui-layout-schema/v0.13/index.d.ts +1218 -35
  331. package/node_modules/@rokt/dcui-layout-schema/v0.13/index.js +1 -1
  332. package/node_modules/@rokt/dcui-layout-schema/v0.14/index.d.ts +1258 -37
  333. package/node_modules/@rokt/dcui-layout-schema/v0.14/index.js +1 -1
  334. package/node_modules/@rokt/dcui-layout-schema/v0.15/index.d.ts +1272 -38
  335. package/node_modules/@rokt/dcui-layout-schema/v0.15/index.js +1 -1
  336. package/node_modules/@rokt/dcui-layout-schema/v0.16/index.d.ts +1334 -38
  337. package/node_modules/@rokt/dcui-layout-schema/v0.16/index.js +1 -1
  338. package/node_modules/@rokt/dcui-layout-schema/v0.17/index.d.ts +1353 -39
  339. package/node_modules/@rokt/dcui-layout-schema/v0.17/index.js +1 -1
  340. package/node_modules/@rokt/dcui-layout-schema/v0.18/index.d.ts +1406 -39
  341. package/node_modules/@rokt/dcui-layout-schema/v0.18/index.js +1 -1
  342. package/node_modules/@rokt/dcui-layout-schema/v0.19/index.d.ts +1407 -39
  343. package/node_modules/@rokt/dcui-layout-schema/v0.19/index.js +1 -1
  344. package/node_modules/@rokt/dcui-layout-schema/v0.2/index.d.ts +1013 -33
  345. package/node_modules/@rokt/dcui-layout-schema/v0.2/index.js +1 -1
  346. package/node_modules/@rokt/dcui-layout-schema/v0.20/index.d.ts +1439 -39
  347. package/node_modules/@rokt/dcui-layout-schema/v0.20/index.js +1 -1
  348. package/node_modules/@rokt/dcui-layout-schema/v0.21/index.d.ts +1482 -39
  349. package/node_modules/@rokt/dcui-layout-schema/v0.21/index.js +1 -1
  350. package/node_modules/@rokt/dcui-layout-schema/v0.22/index.d.ts +1512 -39
  351. package/node_modules/@rokt/dcui-layout-schema/v0.22/index.js +1 -1
  352. package/node_modules/@rokt/dcui-layout-schema/v0.23/index.d.ts +1522 -40
  353. package/node_modules/@rokt/dcui-layout-schema/v0.23/index.js +1 -1
  354. package/node_modules/@rokt/dcui-layout-schema/v0.3/index.d.ts +1013 -33
  355. package/node_modules/@rokt/dcui-layout-schema/v0.3/index.js +1 -1
  356. package/node_modules/@rokt/dcui-layout-schema/v0.4/index.d.ts +1041 -33
  357. package/node_modules/@rokt/dcui-layout-schema/v0.4/index.js +1 -1
  358. package/node_modules/@rokt/dcui-layout-schema/v0.5/index.d.ts +1065 -33
  359. package/node_modules/@rokt/dcui-layout-schema/v0.5/index.js +1 -1
  360. package/node_modules/@rokt/dcui-layout-schema/v0.6/index.d.ts +1065 -33
  361. package/node_modules/@rokt/dcui-layout-schema/v0.6/index.js +1 -1
  362. package/node_modules/@rokt/dcui-layout-schema/v0.7/index.d.ts +1066 -33
  363. package/node_modules/@rokt/dcui-layout-schema/v0.7/index.js +1 -1
  364. package/node_modules/@rokt/dcui-layout-schema/v0.8/index.d.ts +1069 -33
  365. package/node_modules/@rokt/dcui-layout-schema/v0.8/index.js +1 -1
  366. package/node_modules/@rokt/dcui-layout-schema/v0.9/index.d.ts +1070 -33
  367. package/node_modules/@rokt/dcui-layout-schema/v0.9/index.js +1 -1
  368. package/node_modules/@rokt/dcui-layout-schema/v1.0/index.d.ts +1827 -59
  369. package/node_modules/@rokt/dcui-layout-schema/v1.0/index.js +1 -1
  370. package/node_modules/@rokt/dcui-layout-schema/v1.1/index.d.ts +1851 -59
  371. package/node_modules/@rokt/dcui-layout-schema/v1.1/index.js +1 -1
  372. package/node_modules/@rokt/dcui-layout-schema/v1.10/index.d.ts +5322 -0
  373. package/node_modules/@rokt/dcui-layout-schema/v1.10/index.js +4 -0
  374. package/node_modules/@rokt/dcui-layout-schema/v1.11/index.d.ts +5486 -0
  375. package/node_modules/@rokt/dcui-layout-schema/v1.11/index.js +4 -0
  376. package/node_modules/@rokt/dcui-layout-schema/v1.12/index.d.ts +5496 -0
  377. package/node_modules/@rokt/dcui-layout-schema/v1.12/index.js +4 -0
  378. package/node_modules/@rokt/dcui-layout-schema/v1.13/index.d.ts +5498 -0
  379. package/node_modules/@rokt/dcui-layout-schema/v1.13/index.js +4 -0
  380. package/node_modules/@rokt/dcui-layout-schema/v1.14/index.d.ts +5828 -0
  381. package/node_modules/@rokt/dcui-layout-schema/v1.14/index.js +4 -0
  382. package/node_modules/@rokt/dcui-layout-schema/v1.15/index.d.ts +6085 -0
  383. package/node_modules/@rokt/dcui-layout-schema/v1.15/index.js +4 -0
  384. package/node_modules/@rokt/dcui-layout-schema/v1.16/index.d.ts +6324 -0
  385. package/node_modules/@rokt/dcui-layout-schema/v1.16/index.js +4 -0
  386. package/node_modules/@rokt/dcui-layout-schema/v1.17/index.d.ts +6439 -0
  387. package/node_modules/@rokt/dcui-layout-schema/v1.17/index.js +4 -0
  388. package/node_modules/@rokt/dcui-layout-schema/v1.18/index.d.ts +6439 -0
  389. package/node_modules/@rokt/dcui-layout-schema/v1.18/index.js +4 -0
  390. package/node_modules/@rokt/dcui-layout-schema/v1.19/index.d.ts +6439 -0
  391. package/node_modules/@rokt/dcui-layout-schema/v1.19/index.js +4 -0
  392. package/node_modules/@rokt/dcui-layout-schema/v1.2/index.d.ts +1861 -59
  393. package/node_modules/@rokt/dcui-layout-schema/v1.2/index.js +1 -1
  394. package/node_modules/@rokt/dcui-layout-schema/v1.20/index.d.ts +6558 -0
  395. package/node_modules/@rokt/dcui-layout-schema/v1.20/index.js +4 -0
  396. package/node_modules/@rokt/dcui-layout-schema/v1.3/index.d.ts +1948 -59
  397. package/node_modules/@rokt/dcui-layout-schema/v1.3/index.js +1 -1
  398. package/node_modules/@rokt/dcui-layout-schema/v1.4/index.d.ts +2115 -60
  399. package/node_modules/@rokt/dcui-layout-schema/v1.4/index.js +1 -1
  400. package/node_modules/@rokt/dcui-layout-schema/v1.5/index.d.ts +2137 -60
  401. package/node_modules/@rokt/dcui-layout-schema/v1.5/index.js +1 -1
  402. package/node_modules/@rokt/dcui-layout-schema/v1.6/index.d.ts +2308 -60
  403. package/node_modules/@rokt/dcui-layout-schema/v1.6/index.js +1 -1
  404. package/node_modules/@rokt/dcui-layout-schema/v1.7/index.d.ts +2578 -68
  405. package/node_modules/@rokt/dcui-layout-schema/v1.7/index.js +1 -1
  406. package/node_modules/@rokt/dcui-layout-schema/v1.8/index.d.ts +2680 -68
  407. package/node_modules/@rokt/dcui-layout-schema/v1.8/index.js +1 -1
  408. package/node_modules/@rokt/dcui-layout-schema/v1.9/index.d.ts +5222 -0
  409. package/node_modules/@rokt/dcui-layout-schema/v1.9/index.js +4 -0
  410. package/node_modules/@rokt/partner-integration/README.md +85 -0
  411. package/node_modules/@rokt/partner-integration/dist/cart/index.barrel.d.ts +2 -0
  412. package/node_modules/@rokt/partner-integration/dist/cart/index.d.ts +3 -0
  413. package/node_modules/@rokt/partner-integration/dist/cart/v1/delete-alert-partner-message-body.d.ts +7 -0
  414. package/node_modules/@rokt/partner-integration/dist/cart/v1/events.d.ts +23 -0
  415. package/node_modules/@rokt/partner-integration/dist/cart/v1/index.d.ts +5 -0
  416. package/node_modules/@rokt/partner-integration/dist/cart/v1/update-cart-item.d.ts +48 -0
  417. package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-alert-partner-message-body.d.ts +15 -0
  418. package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-delivery-details-message-body.d.ts +12 -0
  419. package/node_modules/@rokt/partner-integration/dist/cart/v2/cart-item-updated-placement-message-body.d.ts +48 -0
  420. package/node_modules/@rokt/partner-integration/dist/cart/v2/index.d.ts +4 -0
  421. package/node_modules/@rokt/partner-integration/dist/cart/v2/partner-message.d.ts +8 -0
  422. package/node_modules/@rokt/partner-integration/dist/cart/v2/placement-message.d.ts +10 -0
  423. package/node_modules/@rokt/partner-integration/dist/cart/v2/update-cart-item-partner-message-body.d.ts +4 -0
  424. package/node_modules/@rokt/partner-integration/dist/core/events.d.ts +45 -0
  425. package/node_modules/@rokt/partner-integration/dist/core/index.d.ts +1 -0
  426. package/node_modules/@rokt/partner-integration/dist/delivery-details/delivery-details.d.ts +20 -0
  427. package/node_modules/@rokt/partner-integration/dist/delivery-details/index.barrel.d.ts +2 -0
  428. package/node_modules/@rokt/partner-integration/dist/delivery-details/index.d.ts +2 -0
  429. package/node_modules/@rokt/partner-integration/dist/delivery-details/placement-message.d.ts +10 -0
  430. package/node_modules/@rokt/partner-integration/dist/extensions/extension-mapping.d.ts +9 -0
  431. package/node_modules/@rokt/partner-integration/dist/extensions/extension.d.ts +6 -0
  432. package/node_modules/@rokt/partner-integration/dist/extensions/index.barrel.d.ts +2 -0
  433. package/node_modules/@rokt/partner-integration/dist/extensions/index.d.ts +2 -0
  434. package/node_modules/@rokt/partner-integration/dist/index.d.ts +11 -0
  435. package/node_modules/@rokt/partner-integration/dist/index.js +1 -0
  436. package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-message-body.d.ts +6 -0
  437. package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-response-message-body.d.ts +11 -0
  438. package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.barrel.d.ts +5 -0
  439. package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.d.ts +2 -0
  440. package/node_modules/@rokt/partner-integration/dist/instant-purchase/partner-message.d.ts +8 -0
  441. package/node_modules/@rokt/partner-integration/dist/instant-purchase/placement-message.d.ts +9 -0
  442. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.barrel.d.ts +5 -0
  443. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.d.ts +1 -0
  444. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/partner-message.d.ts +8 -0
  445. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/placement-message.d.ts +9 -0
  446. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-message-body.d.ts +8 -0
  447. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-response-message-body.d.ts +11 -0
  448. package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item.d.ts +26 -0
  449. package/node_modules/@rokt/partner-integration/dist/journey/index.barrel.d.ts +1 -0
  450. package/node_modules/@rokt/partner-integration/dist/journey/index.d.ts +2 -0
  451. package/node_modules/@rokt/partner-integration/dist/journey/journey-extension.d.ts +39 -0
  452. package/node_modules/@rokt/partner-integration/dist/link-navigation/index.d.ts +2 -0
  453. package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-message.d.ts +9 -0
  454. package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-request-body.d.ts +3 -0
  455. package/node_modules/@rokt/partner-integration/dist/partner-validation/events.d.ts +17 -0
  456. package/node_modules/@rokt/partner-integration/dist/partner-validation/index.barrel.d.ts +4 -0
  457. package/node_modules/@rokt/partner-integration/dist/partner-validation/index.d.ts +2 -0
  458. package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-extension.d.ts +7 -0
  459. package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-status.d.ts +10 -0
  460. package/node_modules/@rokt/partner-integration/dist/partner-validation/set-partner-validation-status.d.ts +12 -0
  461. package/node_modules/@rokt/partner-integration/dist/promotions-extension/index.d.ts +2 -0
  462. package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-events.d.ts +6 -0
  463. package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-payload.d.ts +1 -0
  464. package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.barrel.d.ts +1 -0
  465. package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.d.ts +2 -0
  466. package/node_modules/@rokt/partner-integration/dist/thank-you-page/thank-you-page-extension.d.ts +22 -0
  467. package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.barrel.d.ts +5 -0
  468. package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.d.ts +2 -0
  469. package/node_modules/@rokt/partner-integration/dist/upsells-offers/partner-message.d.ts +9 -0
  470. package/node_modules/@rokt/partner-integration/dist/upsells-offers/placement-message.d.ts +21 -0
  471. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsell-creative-sent-message-body.d.ts +14 -0
  472. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offer.d.ts +35 -0
  473. package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offers-sent-body.d.ts +11 -0
  474. package/node_modules/@rokt/partner-integration/dist/user-action/index.barrel.d.ts +2 -0
  475. package/node_modules/@rokt/partner-integration/dist/user-action/index.d.ts +2 -0
  476. package/node_modules/@rokt/partner-integration/dist/user-action/user-action-event.d.ts +11 -0
  477. package/node_modules/@rokt/partner-integration/dist/user-action/user-action-extension.d.ts +4 -0
  478. package/node_modules/@rokt/partner-integration/package.json +34 -0
  479. package/node_modules/@rokt/plugin/bootstrap/bootstrap.d.ts +1 -2
  480. package/node_modules/@rokt/plugin/bootstrap/bootstrap.js +5 -30
  481. package/node_modules/@rokt/plugin/interface/context.d.ts +1 -0
  482. package/node_modules/@rokt/plugin/interface/display.d.ts +1 -0
  483. package/node_modules/@rokt/plugin/lib/index.barrel.d.ts +1 -14
  484. package/node_modules/@rokt/plugin/lib/index.barrel.js +1 -14
  485. package/node_modules/@rokt/plugin/lib/is-preload-frame.d.ts +1 -1
  486. package/node_modules/@rokt/plugin/lib/is-preload-frame.js +3 -1
  487. package/node_modules/@rokt/plugin/lib/plugin-instance.d.ts +13 -27
  488. package/node_modules/@rokt/plugin/lib/plugin-instance.js +1 -99
  489. package/node_modules/@rokt/plugin/package.json +15 -16
  490. package/node_modules/@rokt/plugin/standalone/standalone.d.ts +14 -2
  491. package/node_modules/@rokt/plugin/standalone/standalone.js +1 -0
  492. package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.d.ts +1 -1
  493. package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.js +2 -1
  494. package/node_modules/@rokt/plugin/testing/mock-child-plugin.d.ts +5 -5
  495. package/node_modules/@rokt/plugin/testing/mock-child-plugin.js +6 -5
  496. package/node_modules/@rokt/plugin/testing/mock-context.d.ts +18 -17
  497. package/node_modules/@rokt/plugin/testing/mock-context.js +19 -17
  498. package/node_modules/@rokt/plugin/testing/mock-display.d.ts +1 -1
  499. package/node_modules/@rokt/plugin/testing/mock-display.js +2 -1
  500. package/node_modules/@rokt/plugin/testing/mock-engine.d.ts +1 -2
  501. package/node_modules/@rokt/plugin/testing/mock-error.d.ts +1 -1
  502. package/node_modules/@rokt/plugin/testing/mock-error.js +2 -1
  503. package/node_modules/@rokt/plugin/testing/mock-function.d.ts +1 -0
  504. package/node_modules/@rokt/plugin/testing/mock-function.js +31 -0
  505. package/node_modules/@rokt/plugin/testing/mock-metrics.d.ts +4 -4
  506. package/node_modules/@rokt/plugin/testing/mock-metrics.js +5 -4
  507. package/node_modules/@rokt/plugin/testing/mock-parent-interaction.d.ts +2 -2
  508. package/node_modules/@rokt/plugin/testing/mock-parent-interaction.js +3 -2
  509. package/node_modules/@rokt/plugin/testing/mock-partner-interaction.d.ts +2 -2
  510. package/node_modules/@rokt/plugin/testing/mock-partner-interaction.js +3 -2
  511. package/node_modules/@rokt/plugin/testing/mock-rdn.d.ts +3 -3
  512. package/node_modules/@rokt/plugin/testing/mock-rdn.js +4 -3
  513. package/node_modules/@rokt/plugin/types/library-loaded.d.ts +0 -2
  514. package/node_modules/@rokt/plugin/types/library-loaded.js +0 -2
  515. package/package.json +8 -7
  516. package/dist/modules/instant-purchase/src/components/catalog-variation-selection-button/catalog-variation-selection-button.d.ts +0 -28
  517. package/node_modules/@rokt/plugin/lib/bootstrap-v1.d.ts +0 -3
  518. package/node_modules/@rokt/plugin/lib/bootstrap-v1.js +0 -9
  519. package/node_modules/@rokt/plugin/lib/child-plugin-factory.d.ts +0 -14
  520. package/node_modules/@rokt/plugin/lib/child-plugin-factory.js +0 -12
  521. package/node_modules/@rokt/plugin/lib/child-plugin.d.ts +0 -26
  522. package/node_modules/@rokt/plugin/lib/child-plugin.js +0 -81
  523. package/node_modules/@rokt/plugin/lib/context.d.ts +0 -23
  524. package/node_modules/@rokt/plugin/lib/context.js +0 -95
  525. package/node_modules/@rokt/plugin/lib/debug.d.ts +0 -19
  526. package/node_modules/@rokt/plugin/lib/debug.js +0 -36
  527. package/node_modules/@rokt/plugin/lib/display.d.ts +0 -13
  528. package/node_modules/@rokt/plugin/lib/display.js +0 -81
  529. package/node_modules/@rokt/plugin/lib/error.d.ts +0 -9
  530. package/node_modules/@rokt/plugin/lib/error.js +0 -35
  531. package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.d.ts +0 -8
  532. package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.js +0 -6
  533. package/node_modules/@rokt/plugin/lib/metrics.d.ts +0 -13
  534. package/node_modules/@rokt/plugin/lib/metrics.js +0 -55
  535. package/node_modules/@rokt/plugin/lib/parent-interaction.d.ts +0 -13
  536. package/node_modules/@rokt/plugin/lib/parent-interaction.js +0 -46
  537. package/node_modules/@rokt/plugin/lib/partner-interaction.d.ts +0 -11
  538. package/node_modules/@rokt/plugin/lib/partner-interaction.js +0 -35
  539. package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.d.ts +0 -6
  540. package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.js +0 -35
  541. package/node_modules/@rokt/plugin/lib/private-context.d.ts +0 -39
  542. package/node_modules/@rokt/plugin/lib/private-context.js +0 -76
  543. package/node_modules/@rokt/plugin/lib/rdn.d.ts +0 -15
  544. package/node_modules/@rokt/plugin/lib/rdn.js +0 -58
  545. package/node_modules/@rokt/plugin/lib/sender-receiver.d.ts +0 -5
  546. package/node_modules/@rokt/plugin/lib/sender-receiver.js +0 -1
  547. package/node_modules/@rokt/plugin/lib/theme.d.ts +0 -8
  548. package/node_modules/@rokt/plugin/lib/theme.js +0 -8
  549. package/node_modules/@rokt/plugin/lib/to-observable.d.ts +0 -4
  550. package/node_modules/@rokt/plugin/lib/to-observable.js +0 -12
  551. package/node_modules/@rokt/plugin/lib/unsafe.d.ts +0 -3
  552. package/node_modules/@rokt/plugin/lib/unsafe.js +0 -2
  553. package/node_modules/@rokt/plugin/lib/with-error-reporting.d.ts +0 -2
  554. package/node_modules/@rokt/plugin/lib/with-error-reporting.js +0 -22
  555. /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/close-button.d.ts +0 -0
  556. /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/index.d.ts +0 -0
  557. /package/dist/{modules/add-to-cart/src/selectors/globalOfferDataState → libraries/layout-renderer-utils/src/selectors/fired-events}/index.d.ts +0 -0
@@ -1,792 +1,2435 @@
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 OrderableWhenCondition = "is" | "is-not" | "is-below" | "is-above";
385
+ /**
386
+ * Condition operators for numeric/orderable comparisons. Use these to compare
387
+ * values that have a natural ordering (numbers, positions, breakpoints).
388
+ * Serialized as kebab-case strings: "is", "is-not", "is-below", "is-above".
389
+ */
390
+ export type OrderableWhenCondition =
391
+ /** True when the value equals the specified value. */
392
+ "is"
393
+ /** True when the value does not equal the specified value. */
394
+ | "is-not"
395
+ /** True when the value is less than the specified value. */
396
+ | "is-below"
397
+ /** True when the value is greater than the specified value. */
398
+ | "is-above";
399
+ /**
400
+ * Tests the viewport width against a breakpoint value. Use for
401
+ * responsive layouts that adapt to different screen sizes. The value MUST
402
+ * be a string representation of a number in platform units.
403
+ */
121
404
  export interface BreakpointPredicate {
405
+ /** The comparison operator. Use "is-above" or "is-below" for responsive breakpoints. */
122
406
  condition: OrderableWhenCondition;
407
+ /**
408
+ * The breakpoint width in platform units to compare against. MUST be a string
409
+ * representation of a number, e.g. "768".
410
+ */
123
411
  value: string;
124
412
  }
413
+ /** A styling block with only a default state. Used for non-interactive elements. */
125
414
  export interface StatelessStylingBlock<StyleProperties> {
415
+ /** The styles to apply. Always required. */
126
416
  default: StyleProperties;
127
417
  }
128
- export type FlexJustification = "center" | "flex-start" | "flex-end";
418
+ /** Main-axis justification options for flex containers. */
419
+ export type FlexJustification =
420
+ /** Centers items along the main axis. */
421
+ "center"
422
+ /** Packs items toward the start of the main axis. */
423
+ | "flex-start"
424
+ /** Packs items toward the end of the main axis. */
425
+ | "flex-end";
426
+ /** Defines a box shadow effect. All offset and radius values are in platform units (px on Web, pt on iOS, dp on Android). */
129
427
  export interface Shadow {
428
+ /** Horizontal offset of the shadow. Positive values move the shadow right. */
130
429
  offsetX?: null | number;
430
+ /** Vertical offset of the shadow. Positive values move the shadow down. */
131
431
  offsetY?: null | number;
432
+ /** The blur radius. Higher values create a more diffuse shadow. */
132
433
  blurRadius?: null | number;
434
+ /** The spread radius. Positive values expand the shadow, negative values shrink it. */
133
435
  spreadRadius?: null | number;
436
+ /** The shadow color. */
134
437
  color: ThemeColor;
135
438
  }
136
- export type Overflow = "hidden" | "visible";
439
+ /** Controls visibility of content that overflows the container bounds. */
440
+ export type Overflow =
441
+ /** Content that overflows is clipped and not visible. */
442
+ "hidden"
443
+ /** Content that overflows remains visible outside the container bounds. */
444
+ | "visible";
445
+ /** Styling properties for container layout behaviour. Only applicable to nodes that contain children. */
137
446
  export interface ContainerStylingProperties {
447
+ /** Controls how children are distributed along the main axis. For a Row this is horizontal, for a Column this is vertical. */
138
448
  justifyContent?: null | FlexJustification;
449
+ /** Controls how children are aligned along the cross axis. For a Row this is vertical, for a Column this is horizontal. */
139
450
  alignItems?: null | FlexAlignment;
451
+ /** Applies a box shadow effect around the container. */
140
452
  shadow?: null | Shadow;
453
+ /** Controls whether content overflowing the container bounds is visible or hidden. */
141
454
  overflow?: null | Overflow;
455
+ /** The gap in platform units between children in the container. */
142
456
  gap?: null | number;
457
+ /** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
143
458
  blur?: null | number;
144
459
  }
460
+ /**
461
+ * Visual style properties for the CarouselDistribution container.
462
+ * Contains the standard style categories: container layout, background colors,
463
+ * border appearance, dimensions, flex child positioning, and spacing.
464
+ */
145
465
  export interface CarouselDistributionStyles {
466
+ /** Container layout styles (e.g. flex direction, alignment). */
146
467
  container?: null | ContainerStylingProperties;
468
+ /** Background color and gradient styles. */
147
469
  background?: null | BackgroundStylingProperties;
470
+ /** Border width, color, and radius styles. */
148
471
  border?: null | BorderStylingProperties;
472
+ /** Width and height dimension styles. */
149
473
  dimension?: null | DimensionStylingProperties;
474
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
150
475
  flexChild?: null | FlexChildStylingProperties;
476
+ /** Padding and margin spacing styles. */
151
477
  spacing?: null | SpacingStylingProperties;
152
478
  }
479
+ /**
480
+ * Styling elements for the CarouselDistribution container.
481
+ * The `own` array contains stateless styling blocks applied to the carousel container itself.
482
+ */
153
483
  export interface CarouselDistributionElements {
484
+ /** Array of stateless styling blocks for the carousel container. */
154
485
  own: StatelessStylingBlock<CarouselDistributionStyles>[];
155
486
  }
156
- export type PeekThroughSize = {
487
+ /**
488
+ * The size of the peek-through area showing adjacent carousel items.
489
+ * Controls how much of the next/previous items are visible at the edges.
490
+ */
491
+ export type PeekThroughSize =
492
+ /** A fixed size in platform units (px on Web, pt on iOS, dp on Android) for the peek-through area. */
493
+ {
157
494
  type: "Fixed";
158
495
  value: number;
159
- } | {
496
+ }
497
+ /** A percentage-based size for the peek-through area, relative to the carousel width. */
498
+ | {
160
499
  type: "Percentage";
161
500
  value: number;
162
501
  };
502
+ /**
503
+ * Presents offers in a horizontally scrollable carousel.
504
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
505
+ * Users can swipe left/right to browse offers.
506
+ *
507
+ * Use `viewableItems` to control how many items are visible at once per breakpoint.
508
+ * Use `peekThroughSize` to hint that more items exist by showing partial adjacent items.
509
+ */
163
510
  export interface CarouselDistributionModel<Predicates> {
511
+ /**
512
+ * Configuration for how many items are visible at once.
513
+ * Provided as an array of values for different breakpoints.
514
+ */
164
515
  viewableItems: number[];
516
+ /**
517
+ * How much of the next/previous items peek into view.
518
+ * Provided as an array of PeekThroughSize values for different breakpoints.
519
+ * Use Fixed for absolute values in platform units or Percentage for relative values.
520
+ */
165
521
  peekThroughSize: PeekThroughSize[];
522
+ /**
523
+ * Visual styles for the carousel container.
524
+ * Uses the LayoutStyle wrapper with conditional style transitions.
525
+ */
166
526
  styles?: null | LayoutStyle<CarouselDistributionElements, ConditionalStyleTransition<CarouselDistributionTransitions, Predicates>>;
167
527
  }
528
+ /** Transition styles for animating CarouselDistribution style changes. */
168
529
  export interface CarouselDistributionTransitions {
530
+ /** Transition properties for the carousel container's own styles. */
169
531
  own?: null | CarouselDistributionStyles;
170
532
  }
533
+ /**
534
+ * Visual style properties for a catalog response button.
535
+ * Controls the button's layout, appearance, and sizing.
536
+ */
171
537
  export interface CatalogResponseButtonStyles {
538
+ /** Layout properties for the flex container. */
172
539
  container?: null | ContainerStylingProperties;
540
+ /** Background color and image properties. */
173
541
  background?: null | BackgroundStylingProperties;
542
+ /** Border radius, color, width and style. */
174
543
  border?: null | BorderStylingProperties;
544
+ /** Width, height and rotation properties. */
175
545
  dimension?: null | DimensionStylingProperties;
546
+ /** Properties controlling behaviour as a flex child. */
176
547
  flexChild?: null | FlexChildStylingProperties;
548
+ /** Padding, margin and offset properties. */
177
549
  spacing?: null | SpacingStylingProperties;
178
550
  }
551
+ /**
552
+ * Breakpoint-specific style elements for a catalog response button.
553
+ * Allows different visual treatments at different screen sizes and interaction states.
554
+ */
179
555
  export interface CatalogResponseButtonElements {
556
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
180
557
  own: BasicStateStylingBlock<CatalogResponseButtonStyles>[];
181
558
  }
559
+ /**
560
+ * A response button for catalog/add-to-cart interactions. Similar to CreativeResponse but
561
+ * designed for product catalog flows. When tapped, it sends a response keyed by `responseKey`
562
+ * back to the server to advance the catalog interaction.
563
+ */
182
564
  export interface CatalogResponseButtonModel<Children, Predicates> {
565
+ /**
566
+ * Responsive and conditional styling for this button, including breakpoint-specific
567
+ * element styles and animated transitions.
568
+ */
183
569
  styles?: null | LayoutStyle<CatalogResponseButtonElements, ConditionalStyleTransition<CatalogResponseButtonTransitions, Predicates>>;
570
+ /**
571
+ * Child nodes rendered inside this button. Typically contains text labels or icons
572
+ * describing the action (e.g., "Add to Cart", product name).
573
+ */
184
574
  children: Children[];
185
575
  }
576
+ /** Transition properties for animating style changes on a catalog response button. */
186
577
  export interface CatalogResponseButtonTransitions {
578
+ /** Transition properties for the primary element. */
187
579
  own?: null | CatalogResponseButtonStyles;
188
580
  }
581
+ /**
582
+ * Visual style properties for the stacked collection container.
583
+ * Controls the layout and appearance of the outer wrapper that holds
584
+ * the stacked catalog item cards.
585
+ */
189
586
  export interface CatalogStackedCollectionStyles {
587
+ /** Layout properties for the flex container. */
190
588
  container?: null | ContainerStylingProperties;
589
+ /** Background color and image properties. */
191
590
  background?: null | BackgroundStylingProperties;
591
+ /** Border radius, color, width and style. */
192
592
  border?: null | BorderStylingProperties;
593
+ /** Width, height and rotation properties. */
193
594
  dimension?: null | DimensionStylingProperties;
595
+ /** Properties controlling behaviour as a flex child. */
194
596
  flexChild?: null | FlexChildStylingProperties;
597
+ /** Padding, margin and offset properties. */
195
598
  spacing?: null | SpacingStylingProperties;
196
599
  }
600
+ /**
601
+ * Breakpoint-specific style elements for a catalog stacked collection.
602
+ * Uses stateless styling blocks since this is a static container without
603
+ * interactive states.
604
+ */
197
605
  export interface CatalogStackedCollectionElements {
606
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
198
607
  own: StatelessStylingBlock<CatalogStackedCollectionStyles>[];
199
608
  }
609
+ /**
610
+ * A vertically stacked collection of catalog items for add-to-cart flows.
611
+ * Renders each catalog product as a card in a vertical stack layout, where items
612
+ * are presented one below another. The visual content of each item is defined by
613
+ * a reusable template node that is instantiated per product in the collection.
614
+ */
200
615
  export interface CatalogStackedCollectionModel<NodeTemplate, Predicates> {
616
+ /**
617
+ * Responsive and conditional styling for this collection container, including
618
+ * breakpoint-specific element styles and animated transitions.
619
+ */
201
620
  styles?: null | LayoutStyle<CatalogStackedCollectionElements, ConditionalStyleTransition<CatalogStackedCollectionTransitions, Predicates>>;
621
+ /**
622
+ * Template node used to render each catalog item in the stacked collection.
623
+ * This template is instantiated once per product, with product-specific data
624
+ * bound at runtime.
625
+ */
202
626
  template: NodeTemplate;
203
627
  }
628
+ /** Transition properties for animating style changes on a catalog stacked collection. */
204
629
  export interface CatalogStackedCollectionTransitions {
630
+ /** Transition properties for the primary element. */
205
631
  own?: null | CatalogStackedCollectionStyles;
206
632
  }
633
+ /**
634
+ * Visual style properties for the CloseButton.
635
+ * Contains the standard style categories: container layout, background colors,
636
+ * border appearance, dimensions, flex child positioning, and spacing.
637
+ */
207
638
  export interface CloseButtonStyles {
639
+ /** Container layout styles (e.g. flex direction, alignment). */
208
640
  container?: null | ContainerStylingProperties;
641
+ /** Background color and gradient styles. */
209
642
  background?: null | BackgroundStylingProperties;
643
+ /** Border width, color, and radius styles. */
210
644
  border?: null | BorderStylingProperties;
645
+ /** Width and height dimension styles. */
211
646
  dimension?: null | DimensionStylingProperties;
647
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
212
648
  flexChild?: null | FlexChildStylingProperties;
649
+ /** Padding and margin spacing styles. */
213
650
  spacing?: null | SpacingStylingProperties;
214
651
  }
652
+ /**
653
+ * Styling elements for the CloseButton.
654
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed)
655
+ * applied to the close button itself.
656
+ */
215
657
  export interface CloseButtonElements {
658
+ /**
659
+ * Array of state-dependent styling blocks for the close button.
660
+ * Each block targets a specific interaction state (default, pressed, etc.).
661
+ */
216
662
  own: BasicStateStylingBlock<CloseButtonStyles>[];
217
663
  }
664
+ /**
665
+ * A button that closes/dismisses the layout when clicked.
666
+ * Typically contains a StaticIcon with the 'Close' icon.
667
+ *
668
+ * MUST include child content (usually a StaticIcon with name `"Close"`).
669
+ * Do NOT use CreativeResponse for dismissal; use CloseButton instead so that
670
+ * the dismiss action is correctly tracked.
671
+ */
218
672
  export interface CloseButtonModel<Children, Predicates> {
673
+ /** Visual styles for the close button. Uses the LayoutStyle wrapper with conditional style transitions. */
219
674
  styles?: null | LayoutStyle<CloseButtonElements, ConditionalStyleTransition<CloseButtonTransitions, Predicates>>;
675
+ /**
676
+ * Child nodes forming the button content. Typically a StaticIcon with name `"Close"`.
677
+ * MUST contain at least one child to display the close icon or label.
678
+ */
220
679
  children: Children[];
680
+ /**
681
+ * Optional dismissal method configuration.
682
+ * Controls how the dismissal is reported for analytics purposes.
683
+ */
221
684
  dismissalMethod?: null | string;
222
685
  }
686
+ /**
687
+ * Transition styles for animating CloseButton style changes.
688
+ * Defines which style properties should animate when the button's conditional styles change.
689
+ */
223
690
  export interface CloseButtonTransitions {
691
+ /** Transition properties for the close button's own styles. */
224
692
  own?: null | CloseButtonStyles;
225
693
  }
694
+ /**
695
+ * Available style categories for the Column element. Each optional field enables a specific
696
+ * category of visual styling. Omit a field to leave that category unstyled.
697
+ */
226
698
  export interface ColumnStyle {
699
+ /**
700
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
701
+ * MUST be used to control how children are arranged within the column.
702
+ */
227
703
  container?: null | ContainerStylingProperties;
704
+ /**
705
+ * Background color and image properties. Use to set a solid color, gradient, or image
706
+ * behind the column content.
707
+ */
228
708
  background?: null | BackgroundStylingProperties;
709
+ /**
710
+ * Border radius, color, width and style properties. Use to add visible borders or
711
+ * rounded corners to the column.
712
+ */
229
713
  border?: null | BorderStylingProperties;
714
+ /**
715
+ * Width, height and rotation properties. Use to explicitly size the column or apply
716
+ * rotation transforms. Do NOT set width/height if the column should size to its content.
717
+ */
230
718
  dimension?: null | DimensionStylingProperties;
719
+ /**
720
+ * Properties controlling this element's behaviour as a child of a flex container.
721
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
722
+ */
231
723
  flexChild?: null | FlexChildStylingProperties;
724
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the column. */
232
725
  spacing?: null | SpacingStylingProperties;
233
726
  }
727
+ /**
728
+ * Styleable elements of the Column node. The Column has a single styleable element: its own
729
+ * container.
730
+ */
234
731
  export interface ColumnElements {
732
+ /**
733
+ * Style blocks for the column container itself. The array represents breakpoint-specific
734
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
735
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
736
+ */
235
737
  own: BasicStateStylingBlock<ColumnStyle>[];
236
738
  }
739
+ /**
740
+ * A vertical flex container that arranges its children in a column (top to bottom). Use for
741
+ * vertical layouts. Children are laid out along the vertical axis by default. To control
742
+ * alignment and distribution, configure the container styles. Do NOT nest Columns
743
+ * unnecessarily when a single Column with appropriate styling would suffice.
744
+ */
237
745
  export interface ColumnModel<Children, Predicates> {
746
+ /**
747
+ * Accessibility label for screen readers. Omit if the column is purely decorative or its
748
+ * children already provide sufficient accessible labels. MUST be set when the column
749
+ * conveys meaning not available from its children alone.
750
+ */
238
751
  a11yLabel?: null | string;
752
+ /**
753
+ * Visual styles for this column. See styling documentation for the structure. Omit to use
754
+ * default (unstyled) rendering.
755
+ */
239
756
  styles?: null | LayoutStyle<ColumnElements, ConditionalStyleTransition<ColumnTransitions, Predicates>>;
757
+ /**
758
+ * Child nodes rendered vertically within this column.
759
+ * Children are laid out top to bottom in source order.
760
+ */
240
761
  children: Children[];
241
762
  }
763
+ /** Transition styles for the Column node. Use to animate style changes smoothly. */
242
764
  export interface ColumnTransitions {
765
+ /**
766
+ * Transition properties for the column container. Specifies which style properties
767
+ * should animate and their duration/easing when values change.
768
+ */
243
769
  own?: null | ColumnStyle;
244
770
  }
245
- export type ExistenceWhenCondition = "exists" | "not-exists";
771
+ /**
772
+ * Condition operators for checking whether a value exists. Use these to
773
+ * conditionally render content based on whether data is present.
774
+ * Serialized as kebab-case strings: "exists", "not-exists".
775
+ */
776
+ export type ExistenceWhenCondition =
777
+ /** True when the value is present and non-empty. */
778
+ "exists"
779
+ /** True when the value is absent or empty. */
780
+ | "not-exists";
781
+ /**
782
+ * Tests whether a creative data attribute exists. Use to conditionally show
783
+ * content only when specific creative data is available. Do NOT use this for
784
+ * non-creative data checks.
785
+ */
246
786
  export interface CreativeCopyPredicate {
787
+ /** Whether to check for existence or non-existence of the creative attribute. */
247
788
  condition: ExistenceWhenCondition;
789
+ /**
790
+ * The dot-notation path to the creative attribute, e.g.
791
+ * "creative.socialProof.number". MUST use dot notation to reference
792
+ * nested creative data fields.
793
+ */
248
794
  value: string;
249
795
  }
796
+ /**
797
+ * Visual style properties for the CreativeResponse button.
798
+ * Contains the standard style categories: container layout, background colors,
799
+ * border appearance, dimensions, flex child positioning, and spacing.
800
+ */
250
801
  export interface CreativeResponseStyles {
802
+ /** Container layout styles (e.g. flex direction, alignment). */
251
803
  container?: null | ContainerStylingProperties;
804
+ /** Background color and gradient styles. */
252
805
  background?: null | BackgroundStylingProperties;
806
+ /** Border width, color, and radius styles. */
253
807
  border?: null | BorderStylingProperties;
808
+ /** Width and height dimension styles. */
254
809
  dimension?: null | DimensionStylingProperties;
810
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
255
811
  flexChild?: null | FlexChildStylingProperties;
812
+ /** Padding and margin spacing styles. */
256
813
  spacing?: null | SpacingStylingProperties;
257
814
  }
815
+ /**
816
+ * Styling elements for the CreativeResponse button.
817
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
818
+ * applied to the button itself.
819
+ */
258
820
  export interface CreativeResponseElements {
821
+ /**
822
+ * Array of state-dependent styling blocks for the button.
823
+ * Each block targets a specific interaction state (default, pressed, disabled, etc.).
824
+ */
259
825
  own: BasicStateStylingBlock<CreativeResponseStyles>[];
260
826
  }
261
- export type LinkOpenTarget = "internally" | "externally";
827
+ /**
828
+ * Controls how links are opened when clicked. MUST be one of the valid
829
+ * kebab-case string values. Determines the navigation behavior when a
830
+ * user activates a link action.
831
+ */
832
+ export type LinkOpenTarget =
833
+ /**
834
+ * Opens the link within the current context (in-app webview or same
835
+ * window). Use for links that should keep the user in the application.
836
+ */
837
+ "internally"
838
+ /**
839
+ * Opens the link in the system browser. Use for external URLs that
840
+ * should leave the application context.
841
+ */
842
+ | "externally";
843
+ /**
844
+ * A button that triggers a creative response (positive or negative).
845
+ * This is the primary call-to-action node for offer interactions.
846
+ * Children inside this node become the button content.
847
+ *
848
+ * MUST have a `responseKey` of either `"positive"` or `"negative"`.
849
+ * Use `"positive"` for accept/CTA buttons and `"negative"` for decline/dismiss buttons.
850
+ * Do NOT use this node for non-response actions like navigation; use StaticLink or ButtonStateTrigger instead.
851
+ */
262
852
  export interface CreativeResponseModel<Children, Predicates> {
853
+ /**
854
+ * The response type. Use `"positive"` for accept/CTA buttons, `"negative"` for decline/dismiss buttons.
855
+ * Do NOT use arbitrary strings; only `"positive"` and `"negative"` are valid.
856
+ */
263
857
  responseKey: string;
858
+ /** Visual styles for the button. Uses the LayoutStyle wrapper with conditional style transitions. */
264
859
  styles?: null | LayoutStyle<CreativeResponseElements, ConditionalStyleTransition<CreativeResponseTransitions, Predicates>>;
860
+ /**
861
+ * Controls how the response URL is opened when clicked.
862
+ * If omitted, the default link opening behaviour is used.
863
+ */
265
864
  openLinks?: null | LinkOpenTarget;
865
+ /**
866
+ * Child nodes that form the button's visible content.
867
+ * Typically contains a BasicText node with the CTA label.
868
+ * MUST contain at least one child to display button content.
869
+ */
266
870
  children: Children[];
267
871
  }
872
+ /**
873
+ * Transition styles for animating CreativeResponse style changes.
874
+ * Defines which style properties should animate when the button's conditional styles change.
875
+ */
268
876
  export interface CreativeResponseTransitions {
877
+ /** Transition properties for the button's own styles. */
269
878
  own?: null | CreativeResponseStyles;
270
879
  }
880
+ /**
881
+ * Tests a custom state value. Custom states are set by state trigger nodes
882
+ * such as ButtonStateTrigger, ToggleButtonStateTrigger, and similar components.
883
+ * The value is an integer that represents the current state.
884
+ */
271
885
  export interface CustomStatePredicate {
886
+ /**
887
+ * The custom state key to check. MUST match the key used in the
888
+ * corresponding state trigger node.
889
+ */
272
890
  key: string;
891
+ /** The comparison operator. */
273
892
  condition: OrderableWhenCondition;
893
+ /** The integer value to compare the custom state against. */
274
894
  value: number;
275
895
  }
276
- export type EqualityWhenCondition = "is" | "is-not";
896
+ /**
897
+ * Condition operators for equality comparisons. Use these when you only need
898
+ * to test if two values are equal or not equal.
899
+ * Serialized as kebab-case strings: "is", "is-not".
900
+ */
901
+ export type EqualityWhenCondition =
902
+ /** True when the value equals the specified value. */
903
+ "is"
904
+ /** True when the value does not equal the specified value. */
905
+ | "is-not";
906
+ /**
907
+ * Tests whether dark mode is active. Use to provide different styling or
908
+ * content for light and dark modes.
909
+ */
277
910
  export interface DarkModePredicate {
911
+ /** Use "is" to check if dark mode matches the value, "is-not" for the inverse. */
278
912
  condition: EqualityWhenCondition;
913
+ /**
914
+ * The boolean value to compare against. Set to true to test for dark mode,
915
+ * false to test for light mode.
916
+ */
279
917
  value: boolean;
280
918
  }
919
+ /** Visual styles for the DataIcon node. */
281
920
  export interface DataIconStyles {
921
+ /** Typography properties. */
282
922
  text?: null | TextStylingProperties;
923
+ /** Width, height and rotation properties. */
283
924
  dimension?: null | DimensionStylingProperties;
925
+ /** Properties controlling behaviour as a flex child. */
284
926
  flexChild?: null | FlexChildStylingProperties;
927
+ /** Padding, margin and offset properties. */
285
928
  spacing?: null | SpacingStylingProperties;
929
+ /** Background color and image properties. */
286
930
  background?: null | BackgroundStylingProperties;
931
+ /** Border radius, color, width and style. */
287
932
  border?: null | BorderStylingProperties;
288
933
  }
934
+ /** Style elements for the DataIcon node. */
289
935
  export interface DataIconElements {
936
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
290
937
  own: BasicStateStylingBlock<DataIconStyles>[];
291
938
  }
939
+ /** Renders an icon from creative data. The icon is resolved from the creative object using the iconKey. */
292
940
  export interface DataIconModel<Predicates> {
941
+ /** Visual styles for the icon. */
293
942
  styles?: null | LayoutStyle<DataIconElements, ConditionalStyleTransition<DataIconTransitions, Predicates>>;
943
+ /** The key identifying which icon from the creative data to display. */
294
944
  iconKey: string;
295
945
  }
946
+ /** Transition definitions for the DataIcon node. */
296
947
  export interface DataIconTransitions {
948
+ /** Transition properties for the primary element. */
297
949
  own?: null | DataIconStyles;
298
950
  }
951
+ /** Visual styles for the DataImage node. */
299
952
  export interface DataImageStyles {
953
+ /** Background color and image properties. */
300
954
  background?: null | BackgroundStylingProperties;
955
+ /** Border radius, color, width and style. */
301
956
  border?: null | BorderStylingProperties;
957
+ /** Width, height and rotation properties. */
302
958
  dimension?: null | DimensionStylingProperties;
959
+ /** Properties controlling behaviour as a flex child. */
303
960
  flexChild?: null | FlexChildStylingProperties;
961
+ /** Padding, margin and offset properties. */
304
962
  spacing?: null | SpacingStylingProperties;
305
963
  }
964
+ /** Style elements for the DataImage node. */
306
965
  export interface DataImageElements {
966
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
307
967
  own: BasicStateStylingBlock<DataImageStyles>[];
308
968
  }
969
+ /** Renders an image from creative data. The image URL is resolved from the creative object using the imageKey. Use for offer-specific images. */
309
970
  export interface DataImageModel<Predicates> {
971
+ /** Visual styles for the image element. */
310
972
  styles?: null | LayoutStyle<DataImageElements, ConditionalStyleTransition<DataImageTransitions, Predicates>>;
973
+ /** The key identifying which image from the creative data to display. */
311
974
  imageKey: string;
312
975
  }
976
+ /** Transition definitions for the DataImage node. */
313
977
  export interface DataImageTransitions {
978
+ /** Transition properties for the primary element. */
314
979
  own?: null | DataImageStyles;
315
980
  }
316
- export type DomainStateKey = "offerComplete";
981
+ /**
982
+ * Keys for accessing application domain state in the full layout schema
983
+ * context. Domain state represents high-level application state managed by
984
+ * the host application. Serialized as camelCase strings.
985
+ */
986
+ export type DomainStateKey =
987
+ /**
988
+ * Indicates whether the current offer has been completed by the user.
989
+ * Use to show post-completion content or hide offer-specific elements.
990
+ */
991
+ "offerComplete";
992
+ /**
993
+ * Tests application domain state. Domain state is managed by the host
994
+ * application and represents high-level application state such as whether
995
+ * an offer is complete or checkout state.
996
+ */
317
997
  export interface DomainStatePredicate<DomainStateKey> {
998
+ /** The domain state key to check. */
318
999
  key: DomainStateKey;
1000
+ /** The comparison operator. */
319
1001
  condition: OrderableWhenCondition;
1002
+ /** The integer value to compare the domain state against. */
320
1003
  value: number;
321
1004
  }
1005
+ /**
1006
+ * An escape hatch node that allows passing raw data through the DCUI schema.
1007
+ * Use sparingly for edge cases not covered by standard nodes.
1008
+ *
1009
+ * Do NOT use this as a general-purpose data container. Prefer standard DCUI nodes
1010
+ * whenever possible. This node bypasses schema validation for its data content.
1011
+ */
322
1012
  export interface EscapeHatchModel {
1013
+ /**
1014
+ * Raw string data to pass through.
1015
+ * The content is opaque to the DCUI renderer and is passed directly to the client.
1016
+ * MUST be a valid string. The client is responsible for parsing and interpreting the data.
1017
+ */
323
1018
  data: string;
324
1019
  }
1020
+ /** Settings for a bidirectional fade-in/fade-out transition. */
325
1021
  export interface FadeInOutTransitionSettings {
1022
+ /**
1023
+ * The transition duration in milliseconds. MUST be a positive integer.
1024
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1025
+ */
326
1026
  duration: number;
327
1027
  }
1028
+ /** Settings for a fade-in (enter) transition. */
328
1029
  export interface FadeInTransitionSettings {
1030
+ /**
1031
+ * The transition duration in milliseconds. MUST be a positive integer.
1032
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1033
+ */
329
1034
  duration: number;
330
1035
  }
1036
+ /** Settings for a fade-out (exit) transition. */
331
1037
  export interface FadeOutTransitionSettings {
1038
+ /**
1039
+ * The transition duration in milliseconds. MUST be a positive integer.
1040
+ * Common values: 200 for fast, 400 for medium, 1000 for slow.
1041
+ */
332
1042
  duration: number;
333
1043
  }
1044
+ /**
1045
+ * Available style categories for the FlowRow element. Each optional field enables a specific
1046
+ * category of visual styling. Omit a field to leave that category unstyled.
1047
+ */
334
1048
  export interface FlowRowStyle {
1049
+ /**
1050
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1051
+ * MUST be used to control how children are arranged and wrapped within the flow row.
1052
+ */
335
1053
  container?: null | ContainerStylingProperties;
1054
+ /**
1055
+ * Background color and image properties. Use to set a solid color, gradient, or image
1056
+ * behind the flow row content.
1057
+ */
336
1058
  background?: null | BackgroundStylingProperties;
1059
+ /**
1060
+ * Border radius, color, width and style properties. Use to add visible borders or
1061
+ * rounded corners to the flow row.
1062
+ */
337
1063
  border?: null | BorderStylingProperties;
1064
+ /**
1065
+ * Width, height and rotation properties. Use to explicitly size the flow row or apply
1066
+ * rotation transforms. Do NOT set width/height if the flow row should size to its content.
1067
+ */
338
1068
  dimension?: null | DimensionStylingProperties;
1069
+ /**
1070
+ * Properties controlling this element's behaviour as a child of a flex container.
1071
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1072
+ */
339
1073
  flexChild?: null | FlexChildStylingProperties;
1074
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the flow row. */
340
1075
  spacing?: null | SpacingStylingProperties;
341
1076
  }
1077
+ /**
1078
+ * Styleable elements of the FlowRow node. The FlowRow has a single styleable element: its
1079
+ * own container.
1080
+ */
342
1081
  export interface FlowRowElements {
1082
+ /**
1083
+ * Style blocks for the flow row container itself. The array represents breakpoint-specific
1084
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1085
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1086
+ */
343
1087
  own: BasicStateStylingBlock<FlowRowStyle>[];
344
1088
  }
1089
+ /**
1090
+ * A horizontal flex container that wraps children to the next line when they exceed the
1091
+ * container width. Like Row but with line wrapping. Use when you have a dynamic number of
1092
+ * items that should flow naturally across lines (e.g., tags, chips, badges). Do NOT use
1093
+ * FlowRow when you need a single non-wrapping horizontal row; use Row instead.
1094
+ */
345
1095
  export interface FlowRowModel<Children, Predicates> {
1096
+ /**
1097
+ * Accessibility label for screen readers. Omit if the flow row is purely decorative or
1098
+ * its children already provide sufficient accessible labels. MUST be set when the flow
1099
+ * row conveys meaning not available from its children alone.
1100
+ */
346
1101
  a11yLabel?: null | string;
1102
+ /**
1103
+ * Visual styles for this flow row. See styling documentation for the structure. Omit to
1104
+ * use default (unstyled) rendering.
1105
+ */
347
1106
  styles?: null | LayoutStyle<FlowRowElements, ConditionalStyleTransition<FlowRowTransitions, Predicates>>;
1107
+ /**
1108
+ * Child nodes rendered horizontally with wrapping within this flow row. MUST contain at
1109
+ * least one child. Children wrap to the next line when they exceed the container width.
1110
+ */
348
1111
  children: Children[];
349
1112
  }
1113
+ /** Transition styles for the FlowRow node. Use to animate style changes smoothly. */
350
1114
  export interface FlowRowTransitions {
1115
+ /**
1116
+ * Transition properties for the flow row container. Specifies which style properties
1117
+ * should animate and their duration/easing when values change.
1118
+ */
351
1119
  own?: null | FlowRowStyle;
352
1120
  }
1121
+ /**
1122
+ * Visual style properties for the GroupedDistribution container.
1123
+ * Contains the standard style categories: container layout, background colors,
1124
+ * border appearance, dimensions, flex child positioning, and spacing.
1125
+ */
353
1126
  export interface GroupedDistributionStyles {
1127
+ /** Container layout styles (e.g. flex direction, alignment). */
354
1128
  container?: null | ContainerStylingProperties;
1129
+ /** Background color and gradient styles. */
355
1130
  background?: null | BackgroundStylingProperties;
1131
+ /** Border width, color, and radius styles. */
356
1132
  border?: null | BorderStylingProperties;
1133
+ /** Width and height dimension styles. */
357
1134
  dimension?: null | DimensionStylingProperties;
1135
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
358
1136
  flexChild?: null | FlexChildStylingProperties;
1137
+ /** Padding and margin spacing styles. */
359
1138
  spacing?: null | SpacingStylingProperties;
360
1139
  }
1140
+ /**
1141
+ * Styling elements for the GroupedDistribution container.
1142
+ * The `own` array contains stateless styling blocks applied to the grouped container itself.
1143
+ */
361
1144
  export interface GroupedDistributionElements {
1145
+ /** Array of stateless styling blocks for the grouped container. */
362
1146
  own: StatelessStylingBlock<GroupedDistributionStyles>[];
363
1147
  }
364
- export type Transition = {
1148
+ /**
1149
+ * A bidirectional transition that applies both when showing and hiding an
1150
+ * element. MUST be an object with a "type" field and a "settings" field.
1151
+ * Currently only "FadeInOut" is supported.
1152
+ */
1153
+ export type Transition =
1154
+ /**
1155
+ * A fade-in/fade-out transition. The element fades in when shown and
1156
+ * fades out when hidden, using the specified duration.
1157
+ */
1158
+ {
365
1159
  type: "FadeInOut";
366
1160
  settings: FadeInOutTransitionSettings;
367
1161
  };
1162
+ /**
1163
+ * Presents offers in groups, progressing through groups sequentially.
1164
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
1165
+ * Each group shows a fixed number of offers at once, and the user advances through groups.
1166
+ *
1167
+ * Pair with ProgressControl nodes for group navigation.
1168
+ * Use `viewableItems` to control how many offers appear per group at each breakpoint.
1169
+ */
368
1170
  export interface GroupedDistributionModel<Predicates> {
1171
+ /**
1172
+ * Configuration for how many items per group.
1173
+ * Provided as an array of values for different breakpoints.
1174
+ */
369
1175
  viewableItems: number[];
1176
+ /**
1177
+ * The transition animation between groups.
1178
+ * Defines how the current group exits and the next group enters.
1179
+ */
370
1180
  transition: Transition;
1181
+ /**
1182
+ * Visual styles for the grouped container.
1183
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1184
+ */
371
1185
  styles?: null | LayoutStyle<GroupedDistributionElements, ConditionalStyleTransition<GroupedDistributionTransitions, Predicates>>;
372
1186
  }
1187
+ /** Transition styles for animating GroupedDistribution style changes. */
373
1188
  export interface GroupedDistributionTransitions {
1189
+ /** Transition properties for the grouped container's own styles. */
374
1190
  own?: null | GroupedDistributionStyles;
375
1191
  }
1192
+ /**
1193
+ * Typography styling for inline text elements. A subset of TextStylingProperties
1194
+ * without line-level controls (lineHeight, horizontalTextAlign, lineLimit).
1195
+ * All fields are optional. Only include the properties you want to override.
1196
+ */
376
1197
  export interface InlineTextStylingProperties {
1198
+ /** The text color. Uses themed values for light/dark mode support. */
377
1199
  textColor?: null | ThemeColor;
1200
+ /** Font size in platform units (px on Web, pt on iOS, dp on Android). */
378
1201
  fontSize?: null | number;
1202
+ /** The font family name. Use 'rokt-icons' for icon fonts. */
379
1203
  fontFamily?: null | string;
1204
+ /** The weight (boldness) of the font. */
380
1205
  fontWeight?: null | FontWeight;
1206
+ /** Vertical alignment of text relative to the baseline. */
381
1207
  baselineTextAlign?: null | FontBaselineAlignment;
1208
+ /** Normal or italic text rendering. */
382
1209
  fontStyle?: null | FontStyle;
1210
+ /** Controls automatic text capitalisation. */
383
1211
  textTransform?: null | TextTransform;
1212
+ /** Additional spacing between characters in platform units. */
384
1213
  letterSpacing?: null | number;
1214
+ /** Decorative line applied to text (underline, strikethrough). */
385
1215
  textDecoration?: null | TextDecoration;
386
1216
  }
1217
+ /** Inline text styling for elements like links within rich text. */
387
1218
  export interface InLineTextStyle {
1219
+ /** Typography properties for the inline text element. */
388
1220
  text: InlineTextStylingProperties;
389
1221
  }
1222
+ /**
1223
+ * Visual style properties for individual indicator items (dots, bars, etc.).
1224
+ * Includes text styling for number-based indicators.
1225
+ */
390
1226
  export interface IndicatorStyles {
1227
+ /** Container layout styles (e.g. flex direction, alignment). */
391
1228
  container?: null | ContainerStylingProperties;
1229
+ /** Background color and gradient styles. */
392
1230
  background?: null | BackgroundStylingProperties;
1231
+ /** Border width, color, and radius styles. */
393
1232
  border?: null | BorderStylingProperties;
1233
+ /** Width and height dimension styles. */
394
1234
  dimension?: null | DimensionStylingProperties;
1235
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
395
1236
  flexChild?: null | FlexChildStylingProperties;
1237
+ /** Padding and margin spacing styles. */
396
1238
  spacing?: null | SpacingStylingProperties;
1239
+ /** Text styling for number-based indicators. */
397
1240
  text?: null | TextStylingProperties;
398
1241
  }
1242
+ /**
1243
+ * Tests application domain state in the full layout schema context. Domain
1244
+ * state is managed by the host application and represents high-level
1245
+ * application state.
1246
+ */
399
1247
  export interface LayoutSchemaDomainStatePredicate {
1248
+ /** The domain state key to check. */
400
1249
  key: DomainStateKey;
1250
+ /** The comparison operator. */
401
1251
  condition: OrderableWhenCondition;
1252
+ /** The integer value to compare the domain state against. */
402
1253
  value: number;
403
1254
  }
1255
+ /** Platform-specific settings for the layout behaviour. */
404
1256
  export interface LayoutSettings {
1257
+ /** Whether to automatically close the layout after the user completes the interaction flow. */
405
1258
  closeOnComplete?: null | boolean;
406
1259
  }
1260
+ /**
1261
+ * Visual style properties for the OneByOneDistribution container.
1262
+ * Contains the standard style categories: container layout, background colors,
1263
+ * border appearance, dimensions, flex child positioning, and spacing.
1264
+ */
407
1265
  export interface OneByOneDistributionStyles {
1266
+ /** Container layout styles (e.g. flex direction, alignment). */
408
1267
  container?: null | ContainerStylingProperties;
1268
+ /** Background color and gradient styles. */
409
1269
  background?: null | BackgroundStylingProperties;
1270
+ /** Border width, color, and radius styles. */
410
1271
  border?: null | BorderStylingProperties;
1272
+ /** Width and height dimension styles. */
411
1273
  dimension?: null | DimensionStylingProperties;
1274
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
412
1275
  flexChild?: null | FlexChildStylingProperties;
1276
+ /** Padding and margin spacing styles. */
413
1277
  spacing?: null | SpacingStylingProperties;
414
1278
  }
1279
+ /**
1280
+ * Styling elements for the OneByOneDistribution container.
1281
+ * The `own` array contains stateless styling blocks applied to the distribution container itself.
1282
+ */
415
1283
  export interface OneByOneDistributionElements {
1284
+ /** Array of stateless styling blocks for the distribution container. */
416
1285
  own: StatelessStylingBlock<OneByOneDistributionStyles>[];
417
1286
  }
1287
+ /**
1288
+ * Presents offers one at a time, allowing the user to progress through them sequentially.
1289
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
1290
+ *
1291
+ * Pair with ProgressControl nodes to enable forward/backward navigation between offers.
1292
+ * Pair with ProgressIndicator to show the user's current position.
1293
+ * Do NOT use this for displaying all offers at once; use StackedDistribution instead.
1294
+ */
418
1295
  export interface OneByOneDistributionModel<Predicates> {
1296
+ /**
1297
+ * Visual styles for the distribution container.
1298
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1299
+ */
419
1300
  styles?: null | LayoutStyle<OneByOneDistributionElements, ConditionalStyleTransition<OneByOneDistributionTransitions, Predicates>>;
1301
+ /**
1302
+ * The animation transition between offers.
1303
+ * Defines how the current offer exits and the next offer enters.
1304
+ */
420
1305
  transition: Transition;
421
1306
  }
1307
+ /** Transition styles for animating OneByOneDistribution style changes. */
422
1308
  export interface OneByOneDistributionTransitions {
1309
+ /** Transition properties for the distribution container's own styles. */
423
1310
  own?: null | OneByOneDistributionStyles;
424
1311
  }
1312
+ /**
1313
+ * Available style categories for the Overlay content element. Each optional field enables a
1314
+ * specific category of visual styling. Omit a field to leave that category unstyled.
1315
+ */
425
1316
  export interface OverlayStyles {
1317
+ /**
1318
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1319
+ * MUST be used to control how children are arranged within the overlay content area.
1320
+ */
426
1321
  container?: null | ContainerStylingProperties;
1322
+ /**
1323
+ * Background color and image properties. Use to set a solid color, gradient, or image
1324
+ * behind the overlay content.
1325
+ */
427
1326
  background?: null | BackgroundStylingProperties;
1327
+ /**
1328
+ * Border radius, color, width and style properties. Use to add visible borders or
1329
+ * rounded corners to the overlay content area.
1330
+ */
428
1331
  border?: null | BorderStylingProperties;
1332
+ /**
1333
+ * Width, height and rotation properties. Use to explicitly size the overlay content area.
1334
+ * Do NOT set width/height if the overlay should size to its content.
1335
+ */
429
1336
  dimension?: null | DimensionStylingProperties;
1337
+ /**
1338
+ * Properties controlling this element's behaviour as a child of a flex container.
1339
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1340
+ */
430
1341
  flexChild?: null | FlexChildStylingProperties;
1342
+ /**
1343
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
1344
+ * overlay content area.
1345
+ */
431
1346
  spacing?: null | SpacingStylingProperties;
432
1347
  }
1348
+ /**
1349
+ * Style categories for the Overlay wrapper (backdrop) element. Controls the appearance of
1350
+ * the area behind the overlay content.
1351
+ */
433
1352
  export interface OverlayWrapperStyles {
1353
+ /** Layout properties for the wrapper container that positions the overlay content. */
434
1354
  container?: null | ContainerStylingProperties;
1355
+ /**
1356
+ * Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
1357
+ * format, e.g. `#80000000`) to dim the content behind the overlay.
1358
+ */
435
1359
  background?: null | BackgroundStylingProperties;
436
1360
  }
1361
+ /**
1362
+ * Styleable elements of the Overlay node. The Overlay has two styleable elements: its own
1363
+ * content area and its wrapper (backdrop).
1364
+ */
437
1365
  export interface OverlayElements {
1366
+ /**
1367
+ * Style blocks for the overlay content area. The array represents breakpoint-specific
1368
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1369
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1370
+ */
438
1371
  own: BasicStateStylingBlock<OverlayStyles>[];
1372
+ /**
1373
+ * Style blocks for the overlay wrapper (backdrop). The array represents
1374
+ * breakpoint-specific styles: first item is the default, subsequent items correspond
1375
+ * to breakpoints in ascending order.
1376
+ */
439
1377
  wrapper: BasicStateStylingBlock<OverlayWrapperStyles>[];
440
1378
  }
1379
+ /**
1380
+ * A modal overlay that appears on top of the main content with a backdrop. Use for dialogs,
1381
+ * confirmations, and modal interactions that require user attention. The overlay blocks
1382
+ * interaction with the content behind it. Do NOT use Overlay for inline content layering;
1383
+ * use ZStack instead.
1384
+ */
441
1385
  export interface OverlayModel<Children, Predicates> {
1386
+ /**
1387
+ * If true, clicking the backdrop area closes the overlay. MUST be set to true when the
1388
+ * overlay is dismissible. Set to false when the user MUST interact with the overlay
1389
+ * content before proceeding (e.g., mandatory confirmations).
1390
+ */
442
1391
  allowBackdropToClose: boolean;
1392
+ /**
1393
+ * Accessibility label for screen readers. MUST be set to describe the purpose of the
1394
+ * overlay (e.g., "Confirmation dialog" or "Settings panel").
1395
+ */
443
1396
  a11yLabel?: null | string;
1397
+ /**
1398
+ * Visual styles for this overlay. See styling documentation for the structure. Omit to
1399
+ * use default (unstyled) rendering.
1400
+ */
444
1401
  styles?: null | LayoutStyle<OverlayElements, ConditionalStyleTransition<OverlayTransitions, Predicates>>;
1402
+ /** The content displayed within the overlay. */
445
1403
  children: Children[];
446
1404
  }
1405
+ /** Transition styles for the Overlay node. Use to animate style changes smoothly. */
447
1406
  export interface OverlayTransitions {
1407
+ /**
1408
+ * Transition properties for the overlay content area. Specifies which style properties
1409
+ * should animate and their duration/easing when values change.
1410
+ */
448
1411
  own?: null | OverlayStyles;
1412
+ /** Transition properties for the overlay wrapper (backdrop). */
449
1413
  wrapper?: null | OverlayWrapperStyles;
450
1414
  }
1415
+ /**
1416
+ * Tests the position index of the current item within a collection. Use to
1417
+ * style items differently based on their position (e.g. first item, last item).
1418
+ */
451
1419
  export interface PositionPredicate {
1420
+ /** The comparison operator. */
452
1421
  condition: OrderableWhenCondition;
1422
+ /**
1423
+ * The position index to compare against. MUST be a string representation
1424
+ * of a number, e.g. "0" for the first item.
1425
+ */
453
1426
  value: string;
454
1427
  }
1428
+ /**
1429
+ * Visual style properties for the ProgressControl button.
1430
+ * Contains the standard style categories: container layout, background colors,
1431
+ * border appearance, dimensions, flex child positioning, and spacing.
1432
+ */
455
1433
  export interface ProgressControlStyle {
1434
+ /** Container layout styles (e.g. flex direction, alignment). */
456
1435
  container?: null | ContainerStylingProperties;
1436
+ /** Background color and gradient styles. */
457
1437
  background?: null | BackgroundStylingProperties;
1438
+ /** Border width, color, and radius styles. */
458
1439
  border?: null | BorderStylingProperties;
1440
+ /** Width and height dimension styles. */
459
1441
  dimension?: null | DimensionStylingProperties;
1442
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
460
1443
  flexChild?: null | FlexChildStylingProperties;
1444
+ /** Padding and margin spacing styles. */
461
1445
  spacing?: null | SpacingStylingProperties;
462
1446
  }
1447
+ /**
1448
+ * Styling elements for the ProgressControl button.
1449
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
1450
+ * applied to the control button itself.
1451
+ */
463
1452
  export interface ProgressControlElements {
1453
+ /**
1454
+ * Array of state-dependent styling blocks for the control button.
1455
+ * Each block targets a specific interaction state (default, pressed, disabled, etc.).
1456
+ */
464
1457
  own: BasicStateStylingBlock<ProgressControlStyle>[];
465
1458
  }
466
- export type ProgressionDirection = "Forward" | "Backward";
1459
+ /** The direction in which the progress control advances offers. */
1460
+ export type ProgressionDirection =
1461
+ /** Advance to the next offer or group. */
1462
+ "Forward"
1463
+ /** Return to the previous offer or group. */
1464
+ | "Backward";
1465
+ /**
1466
+ * A button that advances or reverses offer progression.
1467
+ * Used with OneByOneDistribution or GroupedDistribution for navigation.
1468
+ *
1469
+ * MUST specify a `direction` (Forward or Backward).
1470
+ * Pair with a distribution node for the control to have an effect.
1471
+ * Typically contains an arrow icon as child content.
1472
+ */
467
1473
  export interface ProgressControlModel<Children, Predicates> {
1474
+ /** Visual styles for the control. Uses the LayoutStyle wrapper with conditional style transitions. */
468
1475
  styles?: null | LayoutStyle<ProgressControlElements, ConditionalStyleTransition<ProgressControlTransitions, Predicates>>;
1476
+ /** The direction to progress. MUST be either Forward or Backward. */
469
1477
  direction: ProgressionDirection;
1478
+ /**
1479
+ * Child nodes forming the button content (e.g. an arrow icon).
1480
+ * MUST contain at least one child for the control to have visible content.
1481
+ */
470
1482
  children: Children[];
471
1483
  }
1484
+ /** Transition styles for animating ProgressControl style changes. */
472
1485
  export interface ProgressControlTransitions {
1486
+ /** Transition properties for the control button's own styles. */
473
1487
  own?: null | ProgressControlStyle;
474
1488
  }
1489
+ /**
1490
+ * Visual style properties for the ProgressIndicator container.
1491
+ * Contains the standard style categories for the outer indicator wrapper.
1492
+ */
475
1493
  export interface ProgressIndicatorStyles {
1494
+ /** Container layout styles (e.g. flex direction, alignment). */
476
1495
  container?: null | ContainerStylingProperties;
1496
+ /** Background color and gradient styles. */
477
1497
  background?: null | BackgroundStylingProperties;
1498
+ /** Border width, color, and radius styles. */
478
1499
  border?: null | BorderStylingProperties;
1500
+ /** Width and height dimension styles. */
479
1501
  dimension?: null | DimensionStylingProperties;
1502
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
480
1503
  flexChild?: null | FlexChildStylingProperties;
1504
+ /** Padding and margin spacing styles. */
481
1505
  spacing?: null | SpacingStylingProperties;
482
1506
  }
1507
+ /**
1508
+ * Styling elements for the ProgressIndicator.
1509
+ * Contains styling blocks for the container, individual indicators, and special indicator states.
1510
+ */
483
1511
  export interface ProgressIndicatorElements {
1512
+ /** Array of state-dependent styling blocks for the indicator container. */
484
1513
  own: BasicStateStylingBlock<ProgressIndicatorStyles>[];
1514
+ /** Styling blocks for each individual indicator item (default state). */
485
1515
  indicator: BasicStateStylingBlock<IndicatorStyles>[];
1516
+ /**
1517
+ * Optional styling blocks for the currently active indicator.
1518
+ * If omitted, the default indicator styling is used.
1519
+ */
486
1520
  activeIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
1521
+ /**
1522
+ * Optional styling blocks for indicators that have been seen/visited.
1523
+ * If omitted, the default indicator styling is used.
1524
+ */
487
1525
  seenIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
488
1526
  }
1527
+ /**
1528
+ * Displays visual progress indicators (dots, bars) showing the user's position
1529
+ * within a series of offers.
1530
+ *
1531
+ * MUST be paired with a distribution node (OneByOneDistribution, GroupedDistribution, etc.)
1532
+ * to track position. The indicator automatically reflects the current offer position.
1533
+ * Use `indicator` to specify the type (e.g. "dot", "bar", "number").
1534
+ */
489
1535
  export interface ProgressIndicatorModel<Predicates> {
1536
+ /**
1537
+ * Visual styles for the progress indicators.
1538
+ * Uses the LayoutStyle wrapper with conditional style transitions.
1539
+ */
490
1540
  styles?: null | LayoutStyle<ProgressIndicatorElements, ConditionalStyleTransition<ProgressIndicatorTransitions, Predicates>>;
1541
+ /**
1542
+ * The type of indicator to display (e.g. "dot", "bar", "number").
1543
+ * MUST be a valid indicator type string.
1544
+ */
491
1545
  indicator: string;
1546
+ /**
1547
+ * The initial position of the indicator (zero-indexed).
1548
+ * If omitted, defaults to position 0.
1549
+ */
492
1550
  startPosition?: null | number;
1551
+ /**
1552
+ * If true, the indicator is hidden from screen readers.
1553
+ * Set to true when the indicator is purely decorative.
1554
+ */
493
1555
  accessibilityHidden?: null | boolean;
494
1556
  }
1557
+ /**
1558
+ * Transition styles for animating ProgressIndicator style changes.
1559
+ * Defines transitions for the container and each indicator state.
1560
+ */
495
1561
  export interface ProgressIndicatorTransitions {
1562
+ /** Transition properties for the indicator container's own styles. */
496
1563
  own?: null | ProgressIndicatorStyles;
1564
+ /** Transition properties for the default indicator styles. */
497
1565
  indicator?: null | IndicatorStyles;
1566
+ /** Transition properties for the active indicator styles. */
498
1567
  activeIndicator?: null | IndicatorStyles;
1568
+ /** Transition properties for the seen indicator styles. */
499
1569
  seenIndicator?: null | IndicatorStyles;
500
1570
  }
1571
+ /**
1572
+ * Tests which offer index is currently visible in a carousel or progression.
1573
+ * Use 0 for the first offer, -1 for the last offer.
1574
+ */
501
1575
  export interface ProgressionPredicate {
1576
+ /** The comparison operator. */
502
1577
  condition: OrderableWhenCondition;
1578
+ /**
1579
+ * The progression index to compare against. MUST be a string representation
1580
+ * of a number. Use "0" for the first offer, "-1" for the last offer.
1581
+ */
503
1582
  value: string;
504
1583
  }
1584
+ /** Visual styles for the RichText node. */
505
1585
  export interface RichTextStyle {
1586
+ /** Width, height and rotation properties. */
506
1587
  dimension?: null | DimensionStylingProperties;
1588
+ /** Properties controlling behaviour as a flex child. */
507
1589
  flexChild?: null | FlexChildStylingProperties;
1590
+ /** Padding, margin and offset properties. */
508
1591
  spacing?: null | SpacingStylingProperties;
1592
+ /** Background color and image properties. */
509
1593
  background?: null | BackgroundStylingProperties;
1594
+ /** Typography properties. */
510
1595
  text?: null | TextStylingProperties;
511
1596
  }
1597
+ /** Style elements for the RichText node. */
512
1598
  export interface RichTextElements {
1599
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
513
1600
  own: BasicStateStylingBlock<RichTextStyle>[];
1601
+ /** Style blocks for link elements within the rich text content. */
514
1602
  link?: null | BasicStateStylingBlock<InLineTextStyle>[];
515
1603
  }
1604
+ /** Renders HTML-formatted text content. Supports `<a>`, `<strong>`, `<em>`, `<br>` and other inline HTML elements. Use BasicText for plain text without HTML. */
516
1605
  export interface RichTextModel<Predicates> {
1606
+ /** Visual styles for the text element. */
517
1607
  styles?: null | LayoutStyle<RichTextElements, ConditionalStyleTransition<RichTextTransitions, Predicates>>;
1608
+ /** Controls how links within the rich text are opened when clicked. */
518
1609
  openLinks?: null | LinkOpenTarget;
1610
+ /** The HTML text content to display. Supports inline HTML tags and data binding placeholders in the format %^DATA.key^% or %^ATTRIBUTE.key^%. */
519
1611
  value: string;
520
1612
  }
1613
+ /** Transition definitions for the RichText node. */
521
1614
  export interface RichTextTransitions {
1615
+ /** Transition properties for the primary element. */
522
1616
  own?: null | RichTextStyle;
1617
+ /** Transition properties for link elements. */
523
1618
  link?: null | InLineTextStyle;
524
1619
  }
1620
+ /**
1621
+ * The top-level schema structure for an outer layout. Contains the layout tree,
1622
+ * breakpoint definitions, settings and display configuration.
1623
+ */
525
1624
  export interface RootSchemaModel<Layout, Display, Settings> {
1625
+ /**
1626
+ * Map of breakpoint names to viewport width thresholds in platform units.
1627
+ * Defines responsive breakpoints for the layout.
1628
+ */
526
1629
  breakpoints: Record<string, number>;
1630
+ /** The root node of the layout tree. */
527
1631
  layout: Layout;
1632
+ /** Platform-specific layout settings. */
528
1633
  settings?: null | Settings;
1634
+ /** Controls how the layout is displayed (fullscreen, embedded, etc). */
529
1635
  display?: null | Display;
530
1636
  }
1637
+ /**
1638
+ * Available style categories for the Row element. Each optional field enables a specific
1639
+ * category of visual styling. Omit a field to leave that category unstyled.
1640
+ */
531
1641
  export interface RowStyle {
1642
+ /**
1643
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1644
+ * MUST be used to control how children are arranged within the row.
1645
+ */
532
1646
  container?: null | ContainerStylingProperties;
1647
+ /**
1648
+ * Background color and image properties. Use to set a solid color, gradient, or image
1649
+ * behind the row content.
1650
+ */
533
1651
  background?: null | BackgroundStylingProperties;
1652
+ /**
1653
+ * Border radius, color, width and style properties. Use to add visible borders or
1654
+ * rounded corners to the row.
1655
+ */
534
1656
  border?: null | BorderStylingProperties;
1657
+ /**
1658
+ * Width, height and rotation properties. Use to explicitly size the row or apply rotation
1659
+ * transforms. Do NOT set width/height if the row should size to its content.
1660
+ */
535
1661
  dimension?: null | DimensionStylingProperties;
1662
+ /**
1663
+ * Properties controlling this element's behaviour as a child of a flex container.
1664
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1665
+ */
536
1666
  flexChild?: null | FlexChildStylingProperties;
1667
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the row. */
537
1668
  spacing?: null | SpacingStylingProperties;
538
1669
  }
1670
+ /**
1671
+ * Styleable elements of the Row node. The Row has a single styleable element: its own
1672
+ * container.
1673
+ */
539
1674
  export interface RowElements {
1675
+ /**
1676
+ * Style blocks for the row container itself. The array represents breakpoint-specific
1677
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
1678
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
1679
+ */
540
1680
  own: BasicStateStylingBlock<RowStyle>[];
541
1681
  }
1682
+ /**
1683
+ * A horizontal flex container that arranges its children in a row (left to right). Use for
1684
+ * horizontal layouts. Children are laid out along the horizontal axis by default. To control
1685
+ * alignment and distribution, configure the container styles. Do NOT nest Rows unnecessarily
1686
+ * when a single Row with appropriate styling would suffice.
1687
+ */
542
1688
  export interface RowModel<Children, Predicates> {
1689
+ /**
1690
+ * Accessibility label for screen readers. Omit if the row is purely decorative or its
1691
+ * children already provide sufficient accessible labels. MUST be set when the row
1692
+ * conveys meaning not available from its children alone.
1693
+ */
543
1694
  a11yLabel?: null | string;
1695
+ /**
1696
+ * Visual styles for this row. See styling documentation for the structure. Omit to use
1697
+ * default (unstyled) rendering.
1698
+ */
544
1699
  styles?: null | LayoutStyle<RowElements, ConditionalStyleTransition<RowTransitions, Predicates>>;
1700
+ /**
1701
+ * Child nodes rendered horizontally within this row.
1702
+ * Children are laid out left to right in source order.
1703
+ */
545
1704
  children: Children[];
546
1705
  }
1706
+ /** Transition styles for the Row node. Use to animate style changes smoothly. */
547
1707
  export interface RowTransitions {
1708
+ /**
1709
+ * Transition properties for the row container. Specifies which style properties
1710
+ * should animate and their duration/easing when values change.
1711
+ */
548
1712
  own?: null | RowStyle;
549
1713
  }
1714
+ /**
1715
+ * Available style categories for the ScrollableColumn element. Each optional field enables a
1716
+ * specific category of visual styling. Omit a field to leave that category unstyled.
1717
+ */
550
1718
  export interface ScrollableColumnStyle {
1719
+ /**
1720
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1721
+ * MUST be used to control how children are arranged within the scrollable column.
1722
+ */
551
1723
  container?: null | ContainerStylingProperties;
1724
+ /**
1725
+ * Background color and image properties. Use to set a solid color, gradient, or image
1726
+ * behind the scrollable column content.
1727
+ */
552
1728
  background?: null | BackgroundStylingProperties;
1729
+ /**
1730
+ * Border radius, color, width and style properties. Use to add visible borders or
1731
+ * rounded corners to the scrollable column.
1732
+ */
553
1733
  border?: null | BorderStylingProperties;
1734
+ /**
1735
+ * Width, height and rotation properties. MUST set a constrained height for scrolling to
1736
+ * work. Without a height constraint, the container will expand to fit all content and
1737
+ * scrolling will not occur.
1738
+ */
554
1739
  dimension?: null | DimensionStylingProperties;
1740
+ /**
1741
+ * Properties controlling this element's behaviour as a child of a flex container.
1742
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1743
+ */
555
1744
  flexChild?: null | FlexChildStylingProperties;
1745
+ /**
1746
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
1747
+ * scrollable column.
1748
+ */
556
1749
  spacing?: null | SpacingStylingProperties;
557
1750
  }
1751
+ /**
1752
+ * Styleable elements of the ScrollableColumn node. The ScrollableColumn has a single
1753
+ * styleable element: its own container.
1754
+ */
558
1755
  export interface ScrollableColumnElements {
1756
+ /**
1757
+ * Style blocks for the scrollable column container itself. The array represents
1758
+ * breakpoint-specific styles: first item is the default (no breakpoint), subsequent
1759
+ * items correspond to breakpoints in ascending order. MUST contain at least one item
1760
+ * for the default style.
1761
+ */
559
1762
  own: BasicStateStylingBlock<ScrollableColumnStyle>[];
560
1763
  }
1764
+ /**
1765
+ * A vertical scrollable container. Children that exceed the container height can be scrolled
1766
+ * into view. Use when content may overflow vertically (e.g., long lists, content feeds).
1767
+ * MUST have a constrained height via dimension styles for scrolling to activate. Do NOT use
1768
+ * ScrollableColumn when a regular Column would suffice (i.e., when content fits without
1769
+ * scrolling).
1770
+ */
561
1771
  export interface ScrollableColumnModel<Children, Predicates> {
1772
+ /**
1773
+ * Accessibility label for screen readers. Omit if the scrollable column is purely
1774
+ * decorative or its children already provide sufficient accessible labels. MUST be set
1775
+ * when the scrollable column conveys meaning not available from its children alone.
1776
+ */
562
1777
  a11yLabel?: null | string;
1778
+ /**
1779
+ * Visual styles for this scrollable column. See styling documentation for the structure.
1780
+ * Omit to use default (unstyled) rendering.
1781
+ */
563
1782
  styles?: null | LayoutStyle<ScrollableColumnElements, ConditionalStyleTransition<ScrollableColumnTransitions, Predicates>>;
1783
+ /**
1784
+ * Child nodes rendered vertically within this scrollable column. MUST contain at least
1785
+ * one child. Children are laid out top to bottom in source order and scroll vertically
1786
+ * when they exceed the container height.
1787
+ */
564
1788
  children: Children[];
565
1789
  }
1790
+ /** Transition styles for the ScrollableColumn node. Use to animate style changes smoothly. */
566
1791
  export interface ScrollableColumnTransitions {
1792
+ /**
1793
+ * Transition properties for the scrollable column container. Specifies which style
1794
+ * properties should animate and their duration/easing when values change.
1795
+ */
567
1796
  own?: null | ScrollableColumnStyle;
568
1797
  }
1798
+ /**
1799
+ * Available style categories for the ScrollableRow element. Each optional field enables a
1800
+ * specific category of visual styling. Omit a field to leave that category unstyled.
1801
+ */
569
1802
  export interface ScrollableRowStyle {
1803
+ /**
1804
+ * Layout properties for the flex container (justification, alignment, gap, overflow).
1805
+ * MUST be used to control how children are arranged within the scrollable row.
1806
+ */
570
1807
  container?: null | ContainerStylingProperties;
1808
+ /**
1809
+ * Background color and image properties. Use to set a solid color, gradient, or image
1810
+ * behind the scrollable row content.
1811
+ */
571
1812
  background?: null | BackgroundStylingProperties;
1813
+ /**
1814
+ * Border radius, color, width and style properties. Use to add visible borders or
1815
+ * rounded corners to the scrollable row.
1816
+ */
572
1817
  border?: null | BorderStylingProperties;
1818
+ /**
1819
+ * Width, height and rotation properties. MUST set a constrained width for scrolling to
1820
+ * work. Without a width constraint, the container will expand to fit all content and
1821
+ * scrolling will not occur.
1822
+ */
573
1823
  dimension?: null | DimensionStylingProperties;
1824
+ /**
1825
+ * Properties controlling this element's behaviour as a child of a flex container.
1826
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
1827
+ */
574
1828
  flexChild?: null | FlexChildStylingProperties;
1829
+ /**
1830
+ * Padding, margin and offset properties. Use to add spacing inside or outside the
1831
+ * scrollable row.
1832
+ */
575
1833
  spacing?: null | SpacingStylingProperties;
576
1834
  }
1835
+ /**
1836
+ * Styleable elements of the ScrollableRow node. The ScrollableRow has a single styleable
1837
+ * element: its own container.
1838
+ */
577
1839
  export interface ScrollableRowElements {
1840
+ /**
1841
+ * Style blocks for the scrollable row container itself. The array represents
1842
+ * breakpoint-specific styles: first item is the default (no breakpoint), subsequent
1843
+ * items correspond to breakpoints in ascending order. MUST contain at least one item
1844
+ * for the default style.
1845
+ */
578
1846
  own: BasicStateStylingBlock<ScrollableRowStyle>[];
579
1847
  }
1848
+ /**
1849
+ * A horizontal scrollable container. Children that exceed the container width can be scrolled
1850
+ * into view. Use when content may overflow horizontally (e.g., carousels, horizontal lists).
1851
+ * MUST have a constrained width via dimension styles for scrolling to activate. Do NOT use
1852
+ * ScrollableRow when a regular Row would suffice (i.e., when content fits without scrolling).
1853
+ */
580
1854
  export interface ScrollableRowModel<Children, Predicates> {
1855
+ /**
1856
+ * Accessibility label for screen readers. Omit if the scrollable row is purely decorative
1857
+ * or its children already provide sufficient accessible labels. MUST be set when the
1858
+ * scrollable row conveys meaning not available from its children alone.
1859
+ */
581
1860
  a11yLabel?: null | string;
1861
+ /**
1862
+ * Visual styles for this scrollable row. See styling documentation for the structure.
1863
+ * Omit to use default (unstyled) rendering.
1864
+ */
582
1865
  styles?: null | LayoutStyle<ScrollableRowElements, ConditionalStyleTransition<ScrollableRowTransitions, Predicates>>;
1866
+ /**
1867
+ * Child nodes rendered horizontally within this scrollable row. MUST contain at least
1868
+ * one child. Children are laid out left to right in source order and scroll horizontally
1869
+ * when they exceed the container width.
1870
+ */
583
1871
  children: Children[];
584
1872
  }
1873
+ /** Transition styles for the ScrollableRow node. Use to animate style changes smoothly. */
585
1874
  export interface ScrollableRowTransitions {
1875
+ /**
1876
+ * Transition properties for the scrollable row container. Specifies which style
1877
+ * properties should animate and their duration/easing when values change.
1878
+ */
586
1879
  own?: null | ScrollableRowStyle;
587
1880
  }
1881
+ /**
1882
+ * Visual style properties for the SlideStateTrigger container.
1883
+ * Contains the standard style categories for the slider's outer container.
1884
+ */
588
1885
  export interface SlideStateTriggerOwnStyles {
1886
+ /** Container layout styles (e.g. flex direction, alignment). */
589
1887
  container?: null | ContainerStylingProperties;
1888
+ /** Background color and gradient styles. */
590
1889
  background?: null | BackgroundStylingProperties;
1890
+ /** Border width, color, and radius styles. */
591
1891
  border?: null | BorderStylingProperties;
1892
+ /** Width and height dimension styles. */
592
1893
  dimension?: null | DimensionStylingProperties;
1894
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
593
1895
  flexChild?: null | FlexChildStylingProperties;
1896
+ /** Padding and margin spacing styles. */
594
1897
  spacing?: null | SpacingStylingProperties;
595
1898
  }
1899
+ /** Visual style properties for the slider thumb (the draggable handle). */
596
1900
  export interface SlideStateTriggerThumbStyles {
1901
+ /** Text styling for the thumb label. */
597
1902
  text?: null | TextStylingProperties;
1903
+ /** Background color and gradient styles for the thumb. */
598
1904
  background?: null | BackgroundStylingProperties;
1905
+ /** Border width, color, and radius styles for the thumb. */
599
1906
  border?: null | BorderStylingProperties;
1907
+ /** Width and height dimension styles for the thumb. */
600
1908
  dimension?: null | DimensionStylingProperties;
1909
+ /** Flex child sizing and alignment styles for the thumb. */
601
1910
  flexChild?: null | FlexChildStylingProperties;
1911
+ /** Padding and margin spacing styles for the thumb. */
602
1912
  spacing?: null | SpacingStylingProperties;
603
1913
  }
1914
+ /** Visual style properties for the slider label. */
604
1915
  export interface SlideStateTriggerLabelStyles {
1916
+ /** Text styling for the label. */
605
1917
  text?: null | TextStylingProperties;
1918
+ /** Padding and margin spacing styles for the label. */
606
1919
  spacing?: null | SpacingStylingProperties;
607
1920
  }
1921
+ /** Visual style properties for the slider fill (the filled portion of the track). */
608
1922
  export interface SlideStateTriggerFillStyles {
1923
+ /** Background color and gradient styles for the fill. */
609
1924
  background?: null | BackgroundStylingProperties;
1925
+ /** Border width, color, and radius styles for the fill. */
610
1926
  border?: null | BorderStylingProperties;
611
1927
  }
1928
+ /**
1929
+ * Styling elements for the SlideStateTrigger.
1930
+ * Contains styling blocks for the container, thumb, label, and fill sub-elements.
1931
+ */
612
1932
  export interface SlideStateTriggerElements {
1933
+ /** Array of stateless styling blocks for the slider container. */
613
1934
  own: StatelessStylingBlock<SlideStateTriggerOwnStyles>[];
1935
+ /** Optional styling blocks for the slider thumb (draggable handle). */
614
1936
  thumb?: null | StatelessStylingBlock<SlideStateTriggerThumbStyles>[];
1937
+ /** Optional styling blocks for the slider label. */
615
1938
  label?: null | StatelessStylingBlock<SlideStateTriggerLabelStyles>[];
1939
+ /** Optional styling blocks for the slider fill (filled track portion). */
616
1940
  fill?: null | StatelessStylingBlock<SlideStateTriggerFillStyles>[];
617
1941
  }
1942
+ /** Configuration for the slider label. */
618
1943
  export interface SlideStateTriggerLabel {
1944
+ /** Optional text value to display as the slider label. */
619
1945
  value?: null | string;
620
1946
  }
1947
+ /** Configuration for the slider thumb (draggable handle). */
621
1948
  export interface SlideStateTriggerThumb {
1949
+ /** Optional icon name to display inside the thumb. */
622
1950
  icon?: null | string;
623
1951
  }
1952
+ /**
1953
+ * A slider control that updates a custom state value as the user drags.
1954
+ * The slider thumb can be dragged to set the state to a value proportional to the position.
1955
+ * Use with When nodes to conditionally show/hide content based on the slider state.
1956
+ *
1957
+ * MUST provide a `customStateKey` that matches the key in When predicates.
1958
+ * Optionally provide `customStateValue` to set the slider's initial position.
1959
+ */
624
1960
  export interface SlideStateTriggerModel<Predicates> {
1961
+ /** Visual styles for the slider. Uses the LayoutStyle wrapper with conditional style transitions. */
625
1962
  styles?: null | LayoutStyle<SlideStateTriggerElements, ConditionalStyleTransition<SlideStateTriggerTransitions, Predicates>>;
1963
+ /** Configuration for the slider thumb (draggable handle). */
626
1964
  thumb?: null | SlideStateTriggerThumb;
1965
+ /** Configuration for the slider label. */
627
1966
  label?: null | SlideStateTriggerLabel;
1967
+ /**
1968
+ * The custom state key to update as the slider is dragged.
1969
+ * MUST match the key referenced in When node predicates.
1970
+ */
628
1971
  customStateKey: string;
1972
+ /**
1973
+ * The initial value of the custom state (slider position).
1974
+ * If omitted, defaults to the minimum position.
1975
+ */
629
1976
  customStateValue?: null | number;
630
1977
  }
1978
+ /**
1979
+ * Transition styles for animating SlideStateTrigger style changes.
1980
+ * Defines transitions for all slider sub-elements.
1981
+ */
631
1982
  export interface SlideStateTriggerTransitions {
1983
+ /** Transition properties for the slider container's own styles. */
632
1984
  own?: null | SlideStateTriggerOwnStyles;
1985
+ /** Transition properties for the thumb styles. */
633
1986
  thumb?: null | SlideStateTriggerThumbStyles;
1987
+ /** Transition properties for the label styles. */
634
1988
  label?: null | SlideStateTriggerLabelStyles;
1989
+ /** Transition properties for the fill styles. */
635
1990
  fill?: null | SlideStateTriggerFillStyles;
636
1991
  }
1992
+ /**
1993
+ * Visual style properties for the StackedDistribution container.
1994
+ * Contains the standard style categories: container layout, background colors,
1995
+ * border appearance, dimensions, flex child positioning, and spacing.
1996
+ */
637
1997
  export interface StackedDistributionStyles {
1998
+ /** Container layout styles (e.g. flex direction, alignment). */
638
1999
  container?: null | ContainerStylingProperties;
2000
+ /** Background color and gradient styles. */
639
2001
  background?: null | BackgroundStylingProperties;
2002
+ /** Border width, color, and radius styles. */
640
2003
  border?: null | BorderStylingProperties;
2004
+ /** Width and height dimension styles. */
641
2005
  dimension?: null | DimensionStylingProperties;
2006
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
642
2007
  flexChild?: null | FlexChildStylingProperties;
2008
+ /** Padding and margin spacing styles. */
643
2009
  spacing?: null | SpacingStylingProperties;
644
2010
  }
2011
+ /**
2012
+ * Styling elements for the StackedDistribution container.
2013
+ * The `own` array contains stateless styling blocks applied to the stacked container itself.
2014
+ */
645
2015
  export interface StackedDistributionElements {
2016
+ /** Array of stateless styling blocks for the stacked container. */
646
2017
  own: StatelessStylingBlock<StackedDistributionStyles>[];
647
2018
  }
2019
+ /**
2020
+ * Presents multiple offers stacked vertically, all visible at once.
2021
+ * Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
2022
+ *
2023
+ * Use this when all offers should be visible simultaneously.
2024
+ * Do NOT use this for sequential one-at-a-time presentation; use OneByOneDistribution instead.
2025
+ */
648
2026
  export interface StackedDistributionModel<Predicates> {
2027
+ /**
2028
+ * Visual styles for the stacked container.
2029
+ * Uses the LayoutStyle wrapper with conditional style transitions.
2030
+ */
649
2031
  styles?: null | LayoutStyle<StackedDistributionElements, ConditionalStyleTransition<StackedDistributionTransitions, Predicates>>;
650
2032
  }
2033
+ /** Transition styles for animating StackedDistribution style changes. */
651
2034
  export interface StackedDistributionTransitions {
2035
+ /** Transition properties for the stacked container's own styles. */
652
2036
  own?: null | StackedDistributionStyles;
653
2037
  }
654
- export type BooleanWhenCondition = "is-true" | "is-false";
2038
+ /**
2039
+ * Condition operators for boolean values. Use these to test boolean flags.
2040
+ * Serialized as kebab-case strings: "is-true", "is-false".
2041
+ */
2042
+ export type BooleanWhenCondition =
2043
+ /** True when the value is true. */
2044
+ "is-true"
2045
+ /** True when the value is false. */
2046
+ | "is-false";
2047
+ /**
2048
+ * A predicate with a hardcoded boolean value. Useful for enabling or disabling
2049
+ * sections during development or for static feature flags.
2050
+ */
655
2051
  export interface StaticBooleanPredicate {
2052
+ /** The boolean condition. Use "is-true" or "is-false". */
656
2053
  condition: BooleanWhenCondition;
2054
+ /** The static boolean value to evaluate against the condition. */
657
2055
  value: boolean;
658
2056
  }
2057
+ /** Visual styles for the StaticIcon node. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
659
2058
  export interface StaticIconStyles {
2059
+ /** Typography properties. MUST include fontFamily set to 'rokt-icons' for the icon to render correctly. */
660
2060
  text?: null | TextStylingProperties;
2061
+ /** Width, height and rotation properties. */
661
2062
  dimension?: null | DimensionStylingProperties;
2063
+ /** Properties controlling behaviour as a flex child. */
662
2064
  flexChild?: null | FlexChildStylingProperties;
2065
+ /** Padding, margin and offset properties. */
663
2066
  spacing?: null | SpacingStylingProperties;
2067
+ /** Background color and image properties. */
664
2068
  background?: null | BackgroundStylingProperties;
2069
+ /** Border radius, color, width and style. */
665
2070
  border?: null | BorderStylingProperties;
666
2071
  }
2072
+ /** Style elements for the StaticIcon node. */
667
2073
  export interface StaticIconElements {
2074
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
668
2075
  own: BasicStateStylingBlock<StaticIconStyles>[];
669
2076
  }
2077
+ /** Renders an SVG icon from the Rokt icon font. The icon is selected by name from the available icon set. */
670
2078
  export interface StaticIconModel<Predicates> {
2079
+ /** Visual styles for the icon. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
671
2080
  styles?: null | LayoutStyle<StaticIconElements, ConditionalStyleTransition<StaticIconTransitions, Predicates>>;
2081
+ /** 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. */
672
2082
  name: string;
2083
+ /** Accessibility description of the icon for screen readers. */
673
2084
  description?: null | string;
674
2085
  }
2086
+ /** Transition definitions for the StaticIcon node. */
675
2087
  export interface StaticIconTransitions {
2088
+ /** Transition properties for the primary element. */
676
2089
  own?: null | StaticIconStyles;
677
2090
  }
2091
+ /** Visual styles for the StaticImage node. */
678
2092
  export interface StaticImageStyles {
2093
+ /** Background color and image properties. */
679
2094
  background?: null | BackgroundStylingProperties;
2095
+ /** Border radius, color, width and style. */
680
2096
  border?: null | BorderStylingProperties;
2097
+ /** Width, height and rotation properties. */
681
2098
  dimension?: null | DimensionStylingProperties;
2099
+ /** Properties controlling behaviour as a flex child. */
682
2100
  flexChild?: null | FlexChildStylingProperties;
2101
+ /** Padding, margin and offset properties. */
683
2102
  spacing?: null | SpacingStylingProperties;
684
2103
  }
2104
+ /** Style elements for the StaticImage node. */
685
2105
  export interface StaticImageElements {
2106
+ /** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
686
2107
  own: BasicStateStylingBlock<StaticImageStyles>[];
687
2108
  }
2109
+ /** URL configuration for a static image with themed light/dark mode support. */
688
2110
  export interface StaticImageUrl {
2111
+ /** The image URL for light mode. MUST be a valid URL. */
689
2112
  light: string;
2113
+ /** The image URL for dark mode. If not provided, the light URL is used for both modes. */
690
2114
  dark?: null | string;
691
2115
  }
2116
+ /** Renders a static image from a provided URL. Use for images with known URLs (logos, icons, decorative images). */
692
2117
  export interface StaticImageModel<Predicates> {
2118
+ /** Visual styles for the image element. */
693
2119
  styles?: null | LayoutStyle<StaticImageElements, ConditionalStyleTransition<StaticImageTransitions, Predicates>>;
2120
+ /** Alt text for accessibility. Describes the image for screen readers. */
694
2121
  alt?: null | string;
2122
+ /** Title text shown on hover. */
695
2123
  title?: null | string;
2124
+ /** The image URL with themed light/dark mode support. */
696
2125
  url: StaticImageUrl;
697
2126
  }
2127
+ /** Transition definitions for the StaticImage node. */
698
2128
  export interface StaticImageTransitions {
2129
+ /** Transition properties for the primary element. */
699
2130
  own?: null | StaticImageStyles;
700
2131
  }
2132
+ /**
2133
+ * Visual style properties for the StaticLink.
2134
+ * Contains the standard style categories: container layout, background colors,
2135
+ * border appearance, dimensions, flex child positioning, and spacing.
2136
+ */
701
2137
  export interface StaticLinkStyles {
2138
+ /** Container layout styles (e.g. flex direction, alignment). */
702
2139
  container?: null | ContainerStylingProperties;
2140
+ /** Background color and gradient styles. */
703
2141
  background?: null | BackgroundStylingProperties;
2142
+ /** Border width, color, and radius styles. */
704
2143
  border?: null | BorderStylingProperties;
2144
+ /** Width and height dimension styles. */
705
2145
  dimension?: null | DimensionStylingProperties;
2146
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
706
2147
  flexChild?: null | FlexChildStylingProperties;
2148
+ /** Padding and margin spacing styles. */
707
2149
  spacing?: null | SpacingStylingProperties;
708
2150
  }
2151
+ /**
2152
+ * Styling elements for the StaticLink.
2153
+ * The `own` array contains state-dependent styling blocks (e.g. default, pressed)
2154
+ * applied to the link itself.
2155
+ */
709
2156
  export interface StaticLinkElements {
2157
+ /**
2158
+ * Array of state-dependent styling blocks for the link.
2159
+ * Each block targets a specific interaction state (default, pressed, etc.).
2160
+ */
710
2161
  own: BasicStateStylingBlock<StaticLinkStyles>[];
711
2162
  }
2163
+ /**
2164
+ * A clickable link that wraps its children. Opens the specified URL when clicked.
2165
+ *
2166
+ * Use this node for navigation to external URLs. Do NOT use CreativeResponse for link navigation;
2167
+ * CreativeResponse is for offer accept/decline actions only.
2168
+ * The `src` field MUST be a valid URL string.
2169
+ */
712
2170
  export interface StaticLinkModel<Children, Predicates> {
2171
+ /**
2172
+ * The destination URL to open when the link is clicked.
2173
+ * MUST be a valid URL string (e.g. "https://example.com").
2174
+ */
713
2175
  src: string;
2176
+ /** Controls how the link URL is opened (e.g. in-app browser, external browser). */
714
2177
  open: LinkOpenTarget;
2178
+ /** Visual styles for the link. Uses the LayoutStyle wrapper with conditional style transitions. */
715
2179
  styles?: null | LayoutStyle<StaticLinkElements, ConditionalStyleTransition<StaticLinkTransitions, Predicates>>;
2180
+ /**
2181
+ * Child nodes that form the clickable link content.
2182
+ * MUST contain at least one child for the link to have visible, tappable content.
2183
+ */
716
2184
  children: Children[];
717
2185
  }
2186
+ /**
2187
+ * Transition styles for animating StaticLink style changes.
2188
+ * Defines which style properties should animate when the link's conditional styles change.
2189
+ */
718
2190
  export interface StaticLinkTransitions {
2191
+ /** Transition properties for the link's own styles. */
719
2192
  own?: null | StaticLinkStyles;
720
2193
  }
2194
+ /**
2195
+ * Compares a static string input against a value. Use when you need to
2196
+ * evaluate a known, fixed string against a condition.
2197
+ */
721
2198
  export interface StaticStringPredicate {
2199
+ /** The static string value to test. */
722
2200
  input: string;
2201
+ /** The comparison operator. Use "is" or "is-not". */
723
2202
  condition: EqualityWhenCondition;
2203
+ /** The string to compare against. */
724
2204
  value: string;
725
2205
  }
2206
+ /**
2207
+ * Visual style properties for the ToggleButtonStateTrigger.
2208
+ * Contains the standard style categories: container layout, background colors,
2209
+ * border appearance, dimensions, flex child positioning, and spacing.
2210
+ */
726
2211
  export interface ToggleButtonStateTriggerStyle {
2212
+ /** Container layout styles (e.g. flex direction, alignment). */
727
2213
  container?: null | ContainerStylingProperties;
2214
+ /** Background color and gradient styles. */
728
2215
  background?: null | BackgroundStylingProperties;
2216
+ /** Border width, color, and radius styles. */
729
2217
  border?: null | BorderStylingProperties;
2218
+ /** Width and height dimension styles. */
730
2219
  dimension?: null | DimensionStylingProperties;
2220
+ /** Flex child sizing and alignment styles (grow, shrink, align-self). */
731
2221
  flexChild?: null | FlexChildStylingProperties;
2222
+ /** Padding and margin spacing styles. */
732
2223
  spacing?: null | SpacingStylingProperties;
733
2224
  }
2225
+ /**
2226
+ * Styling elements for the ToggleButtonStateTrigger.
2227
+ * The `own` array contains state-dependent styling blocks applied to the toggle button itself.
2228
+ */
734
2229
  export interface ToggleButtonStateTriggerElements {
2230
+ /** Array of state-dependent styling blocks for the toggle button. */
735
2231
  own: BasicStateStylingBlock<ToggleButtonStateTriggerStyle>[];
736
2232
  }
2233
+ /**
2234
+ * A toggle button that cycles a custom state between values when clicked.
2235
+ * Each click toggles the state value, typically between 0 and 1.
2236
+ * Use with When nodes to conditionally show/hide content based on the toggled state.
2237
+ *
2238
+ * MUST provide a `customStateKey` that matches the key in When predicates.
2239
+ * Unlike ButtonStateTrigger, this does NOT require a `value` field; it toggles automatically.
2240
+ */
737
2241
  export interface ToggleButtonStateTriggerModel<Children, Predicates> {
2242
+ /** Visual styles for the toggle button. */
738
2243
  styles?: null | LayoutStyle<ToggleButtonStateTriggerElements, ConditionalStyleTransition<ToggleButtonStateTriggerTransitions, Predicates>>;
2244
+ /** Child nodes forming the toggle button content. */
739
2245
  children: Children[];
2246
+ /**
2247
+ * The custom state key to toggle when the button is pressed.
2248
+ * MUST match the key referenced in When node predicates.
2249
+ */
740
2250
  customStateKey: string;
741
2251
  }
2252
+ /** Transition styles for animating ToggleButtonStateTrigger style changes. */
742
2253
  export interface ToggleButtonStateTriggerTransitions {
2254
+ /** Transition properties for the toggle button's own styles. */
743
2255
  own?: null | ToggleButtonStateTriggerStyle;
744
2256
  }
745
- export type InTransition = {
2257
+ /**
2258
+ * A transition that applies only when an element enters (becomes visible).
2259
+ * MUST be an object with a "type" field and a "settings" field.
2260
+ * Currently only "FadeIn" is supported.
2261
+ */
2262
+ export type InTransition =
2263
+ /**
2264
+ * A fade-in transition. The element gradually becomes visible over the
2265
+ * specified duration.
2266
+ */
2267
+ {
746
2268
  type: "FadeIn";
747
2269
  settings: FadeInTransitionSettings;
748
2270
  };
749
- export type OutTransition = {
2271
+ /**
2272
+ * A transition that applies only when an element exits (becomes hidden).
2273
+ * MUST be an object with a "type" field and a "settings" field.
2274
+ * Currently only "FadeOut" is supported.
2275
+ */
2276
+ export type OutTransition =
2277
+ /**
2278
+ * A fade-out transition. The element gradually becomes invisible over
2279
+ * the specified duration.
2280
+ */
2281
+ {
750
2282
  type: "FadeOut";
751
2283
  settings: FadeOutTransitionSettings;
752
2284
  };
2285
+ /**
2286
+ * Transition configuration for when visibility changes.
2287
+ * Defines enter and exit animations for the When node's children.
2288
+ */
753
2289
  export interface WhenTransition {
2290
+ /** Transition animations to play when children become visible (predicates become true). */
754
2291
  inTransition?: null | InTransition[];
2292
+ /** Transition animations to play when children become hidden (predicates become false). */
755
2293
  outTransition?: null | OutTransition[];
756
2294
  }
757
- export type WhenHidden = "visually" | "functionally";
2295
+ /**
2296
+ * Controls the hiding behaviour of When children.
2297
+ * Determines whether hidden children still occupy space in the layout.
2298
+ */
2299
+ export type WhenHidden =
2300
+ /**
2301
+ * Children are visually hidden but remain in the layout (take up space).
2302
+ * Use this when you need to preserve layout dimensions even when content is hidden.
2303
+ */
2304
+ "visually"
2305
+ /**
2306
+ * Children are fully removed from the layout.
2307
+ * They take up no space and do not affect sibling positioning.
2308
+ */
2309
+ | "functionally";
2310
+ /**
2311
+ * Conditional rendering node. Shows or hides its children based on predicate conditions.
2312
+ * All predicates MUST evaluate to true for children to be shown (AND logic).
2313
+ *
2314
+ * Use this node to conditionally display content based on custom state, offer count, or other
2315
+ * predicate conditions. Do NOT nest When nodes unnecessarily; combine predicates in a single
2316
+ * When node instead.
2317
+ */
758
2318
  export interface WhenModel<Children, Predicates> {
2319
+ /**
2320
+ * Array of conditions that MUST ALL be true for children to render.
2321
+ * Uses AND logic: if any predicate is false, children are hidden.
2322
+ * MUST contain at least one predicate.
2323
+ */
759
2324
  predicates: Predicates[];
2325
+ /** Child nodes to conditionally show or hide based on the predicates. */
760
2326
  children: Children[];
2327
+ /**
2328
+ * Optional transition animation configuration for when visibility changes.
2329
+ * Controls how children animate in and out when predicates change.
2330
+ */
761
2331
  transition?: null | WhenTransition;
2332
+ /**
2333
+ * Controls how hidden children are treated in the layout.
2334
+ * If omitted, defaults to functionally hiding (fully removed from layout).
2335
+ */
762
2336
  hide?: null | WhenHidden;
763
2337
  }
2338
+ /** Styling properties for ZStack container layout. ZStack layers children on top of each other. */
764
2339
  export interface ZStackContainerStylingProperties {
2340
+ /** Controls horizontal positioning of children within the ZStack. */
765
2341
  justifyContent?: null | FlexJustification;
2342
+ /** Controls vertical positioning of children within the ZStack. */
766
2343
  alignItems?: null | FlexAlignment;
2344
+ /** Applies a box shadow effect around the container. */
767
2345
  shadow?: null | Shadow;
2346
+ /** Controls whether content overflowing the container bounds is visible or hidden. */
768
2347
  overflow?: null | Overflow;
2348
+ /** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
769
2349
  blur?: null | number;
770
2350
  }
2351
+ /**
2352
+ * Available style categories for the ZStack element. Each optional field enables a specific
2353
+ * category of visual styling. Omit a field to leave that category unstyled.
2354
+ */
771
2355
  export interface ZStackStyle {
2356
+ /**
2357
+ * Layout properties for the ZStack container (alignment of stacked children).
2358
+ * MUST be used to control how children are positioned within the stack.
2359
+ */
772
2360
  container?: null | ZStackContainerStylingProperties;
2361
+ /**
2362
+ * Background color and image properties. Use to set a solid color, gradient, or image
2363
+ * behind the stacked content.
2364
+ */
773
2365
  background?: null | BackgroundStylingProperties;
2366
+ /**
2367
+ * Border radius, color, width and style properties. Use to add visible borders or
2368
+ * rounded corners to the ZStack.
2369
+ */
774
2370
  border?: null | BorderStylingProperties;
2371
+ /**
2372
+ * Width, height and rotation properties. Use to explicitly size the ZStack or apply
2373
+ * rotation transforms. Do NOT set width/height if the ZStack should size to its content.
2374
+ */
775
2375
  dimension?: null | DimensionStylingProperties;
2376
+ /**
2377
+ * Properties controlling this element's behaviour as a child of a flex container.
2378
+ * Use to set flex-grow, flex-shrink, flex-basis, and align-self.
2379
+ */
776
2380
  flexChild?: null | FlexChildStylingProperties;
2381
+ /** Padding, margin and offset properties. Use to add spacing inside or outside the ZStack. */
777
2382
  spacing?: null | SpacingStylingProperties;
778
2383
  }
2384
+ /**
2385
+ * Styleable elements of the ZStack node. The ZStack has a single styleable element: its own
2386
+ * container.
2387
+ */
779
2388
  export interface ZStackElements {
2389
+ /**
2390
+ * Style blocks for the ZStack container itself. The array represents breakpoint-specific
2391
+ * styles: first item is the default (no breakpoint), subsequent items correspond to
2392
+ * breakpoints in ascending order. MUST contain at least one item for the default style.
2393
+ */
780
2394
  own: BasicStateStylingBlock<ZStackStyle>[];
781
2395
  }
2396
+ /**
2397
+ * A layered container that stacks children on top of each other along the z-axis. Later
2398
+ * children render on top of earlier ones. Use for overlapping content such as badges on
2399
+ * images, text overlays, or layered decorative elements. Do NOT use ZStack for simple
2400
+ * sequential layouts; use Row or Column instead.
2401
+ */
782
2402
  export interface ZStackModel<Children, Predicates> {
2403
+ /**
2404
+ * Accessibility label for screen readers. Omit if the ZStack is purely decorative or its
2405
+ * children already provide sufficient accessible labels. MUST be set when the ZStack
2406
+ * conveys meaning not available from its children alone.
2407
+ */
783
2408
  a11yLabel?: null | string;
2409
+ /**
2410
+ * Visual styles for this ZStack. See styling documentation for the structure. Omit to use
2411
+ * default (unstyled) rendering.
2412
+ */
784
2413
  styles?: null | LayoutStyle<ZStackElements, ConditionalStyleTransition<ZStackTransitions, Predicates>>;
2414
+ /**
2415
+ * Child nodes stacked on top of each other within this ZStack. MUST contain at least one
2416
+ * child. Children are rendered in source order, with later children appearing on top of
2417
+ * earlier ones.
2418
+ */
785
2419
  children: Children[];
786
2420
  }
2421
+ /** Transition styles for the ZStack node. Use to animate style changes smoothly. */
787
2422
  export interface ZStackTransitions {
2423
+ /**
2424
+ * Transition properties for the ZStack container. Specifies which style properties
2425
+ * should animate and their duration/easing when values change.
2426
+ */
788
2427
  own?: null | ZStackStyle;
789
2428
  }
2429
+ /**
2430
+ * Root node types for a catalog stacked collection item template. Must be a Row or Column
2431
+ * that contains CatalogStackedCollectionTemplateNodeChildren.
2432
+ */
790
2433
  export type CatalogStackedCollectionTemplateNode = {
791
2434
  type: "Row";
792
2435
  node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
@@ -794,6 +2437,11 @@ export type CatalogStackedCollectionTemplateNode = {
794
2437
  type: "Column";
795
2438
  node: ColumnModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
796
2439
  };
2440
+ /**
2441
+ * Child node types allowed inside a catalog stacked collection template row or column.
2442
+ * Includes layout containers, text, images, icons, data-bound content, interactive triggers,
2443
+ * catalog response buttons, radio groups, and quantity counters.
2444
+ */
797
2445
  export type CatalogStackedCollectionTemplateNodeChildren = {
798
2446
  type: "Row";
799
2447
  node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
@@ -843,9 +2491,36 @@ export type CatalogStackedCollectionTemplateNodeChildren = {
843
2491
  type: "EscapeHatch";
844
2492
  node: EscapeHatchModel;
845
2493
  };
846
- export type DimensionHeightFitValue = "wrap-content" | "fit-height";
847
- export type DimensionWidthFitValue = "wrap-content" | "fit-width";
848
- export type LayoutDisplayPreset = "FULLSCREEN" | "EMBEDDED" | "ATTACHED";
2494
+ /**
2495
+ * Fit behaviour options for height.
2496
+ * Used as the 'value' inside a {"type": "fit", "value": ...} height specification.
2497
+ */
2498
+ export type DimensionHeightFitValue =
2499
+ /** Shrinks to fit the content height. */
2500
+ "wrap-content"
2501
+ /** Expands to fill the available height. */
2502
+ | "fit-height";
2503
+ /**
2504
+ * Fit behaviour options for width.
2505
+ * Used as the 'value' inside a {"type": "fit", "value": ...} width specification.
2506
+ */
2507
+ export type DimensionWidthFitValue =
2508
+ /** Shrinks to fit the content width. */
2509
+ "wrap-content"
2510
+ /** Expands to fill the available width. */
2511
+ | "fit-width";
2512
+ /** Controls how the layout is displayed on the page. */
2513
+ export type LayoutDisplayPreset =
2514
+ /** Layout covers the full viewport. */
2515
+ "FULLSCREEN"
2516
+ /** Layout is embedded inline within the page content. */
2517
+ | "EMBEDDED"
2518
+ /** Layout is attached/anchored to a specific position. */
2519
+ | "ATTACHED";
2520
+ /**
2521
+ * All node types supported in the web platform schema. This is the union type used by SDKs.
2522
+ * Layouts are authored using OuterLayoutSchemaModel or LayoutVariantSchemaModel instead.
2523
+ */
849
2524
  export type LayoutSchemaModel = {
850
2525
  type: "Row";
851
2526
  node: RowModel<LayoutSchemaModel, WhenPredicate>;
@@ -931,6 +2606,11 @@ export type LayoutSchemaModel = {
931
2606
  type: "EscapeHatch";
932
2607
  node: EscapeHatchModel;
933
2608
  };
2609
+ /**
2610
+ * Recursive child node types allowed within layout variant containers. Includes all layout
2611
+ * variant nodes such as layout, text, images, data-bound content, interactive triggers,
2612
+ * catalog components, and escape hatches.
2613
+ */
934
2614
  export type LayoutVariantChildren = {
935
2615
  type: "Row";
936
2616
  node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -989,7 +2669,23 @@ export type LayoutVariantChildren = {
989
2669
  type: "EscapeHatch";
990
2670
  node: EscapeHatchModel;
991
2671
  };
992
- export type LayoutVariantDomainStateKey = "offerComplete";
2672
+ /**
2673
+ * Keys for accessing application domain state in the layout variant (offer
2674
+ * format) context. Serialized as camelCase strings. These are the domain
2675
+ * state keys available when defining conditional rendering within a layout
2676
+ * variant.
2677
+ */
2678
+ export type LayoutVariantDomainStateKey =
2679
+ /**
2680
+ * Indicates whether the current offer has been completed by the user.
2681
+ * Use to show post-completion content or hide offer-specific elements.
2682
+ */
2683
+ "offerComplete";
2684
+ /**
2685
+ * Non-interactive child node types within layout variants. Only allows structural containers,
2686
+ * static/data images, basic text, icons, conditional nodes, and escape hatches. Used as
2687
+ * children of interactive elements like buttons and links in layout variants.
2688
+ */
993
2689
  export type LayoutVariantNonInteractableChildren = {
994
2690
  type: "Row";
995
2691
  node: RowModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
@@ -1024,6 +2720,10 @@ export type LayoutVariantNonInteractableChildren = {
1024
2720
  type: "EscapeHatch";
1025
2721
  node: EscapeHatchModel;
1026
2722
  };
2723
+ /**
2724
+ * Node types valid for use in layout variants (offer formats). Layout variants contain the
2725
+ * offer-specific creative content including images, text, response buttons, and catalog components.
2726
+ */
1027
2727
  export type LayoutVariantSchemaModel = {
1028
2728
  type: "Row";
1029
2729
  node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -1082,34 +2782,63 @@ export type LayoutVariantSchemaModel = {
1082
2782
  type: "EscapeHatch";
1083
2783
  node: EscapeHatchModel;
1084
2784
  };
1085
- export type LayoutVariantWhenPredicate = {
2785
+ /**
2786
+ * Predicate types available in the layout variant (offer format) context.
2787
+ * This is a subset of predicates that are valid when defining conditional
2788
+ * rendering within a layout variant. Each predicate MUST include a "type"
2789
+ * field and a "predicate" field.
2790
+ */
2791
+ export type LayoutVariantWhenPredicate =
2792
+ /** Tests the viewport width against a breakpoint value. */
2793
+ {
1086
2794
  type: "Breakpoint";
1087
2795
  predicate: BreakpointPredicate;
1088
- } | {
2796
+ }
2797
+ /** Tests the position index of the current item in a collection. */
2798
+ | {
1089
2799
  type: "Position";
1090
2800
  predicate: PositionPredicate;
1091
- } | {
2801
+ }
2802
+ /** Tests which offer index is currently visible. */
2803
+ | {
1092
2804
  type: "Progression";
1093
2805
  predicate: ProgressionPredicate;
1094
- } | {
2806
+ }
2807
+ /** Tests whether dark mode is active. */
2808
+ | {
1095
2809
  type: "DarkMode";
1096
2810
  predicate: DarkModePredicate;
1097
- } | {
2811
+ }
2812
+ /** Tests whether a creative data attribute exists. */
2813
+ | {
1098
2814
  type: "CreativeCopy";
1099
2815
  predicate: CreativeCopyPredicate;
1100
- } | {
2816
+ }
2817
+ /** Evaluates a hardcoded boolean value. */
2818
+ | {
1101
2819
  type: "StaticBoolean";
1102
2820
  predicate: StaticBooleanPredicate;
1103
- } | {
2821
+ }
2822
+ /** Tests a custom state value set by state trigger nodes. */
2823
+ | {
1104
2824
  type: "CustomState";
1105
2825
  predicate: CustomStatePredicate;
1106
- } | {
2826
+ }
2827
+ /** Tests application domain state in the layout variant context. */
2828
+ | {
1107
2829
  type: "DomainState";
1108
2830
  predicate: DomainStatePredicate<LayoutVariantDomainStateKey>;
1109
- } | {
2831
+ }
2832
+ /** Compares a static string input against a value. */
2833
+ | {
1110
2834
  type: "StaticString";
1111
2835
  predicate: StaticStringPredicate;
1112
2836
  };
2837
+ /**
2838
+ * Child node types allowed inside modal containers (Overlay, BottomSheet) in the combined
2839
+ * SDK schema. Includes structural, presentational, distribution, and interactive nodes
2840
+ * but excludes nested modals.
2841
+ */
1113
2842
  export type ModalChildren = {
1114
2843
  type: "Row";
1115
2844
  node: RowModel<ModalChildren, OuterLayoutWhenPredicate>;
@@ -1177,6 +2906,11 @@ export type ModalChildren = {
1177
2906
  type: "EscapeHatch";
1178
2907
  node: EscapeHatchModel;
1179
2908
  };
2909
+ /**
2910
+ * Non-interactive child node types in the combined SDK schema. Only allows structural
2911
+ * containers, static/data images, basic text, icons, conditional nodes, and escape hatches.
2912
+ * Used as children of interactive elements like buttons and links.
2913
+ */
1180
2914
  export type NonInteractableChildren = {
1181
2915
  type: "Row";
1182
2916
  node: RowModel<NonInteractableChildren, WhenPredicate>;
@@ -1211,6 +2945,10 @@ export type NonInteractableChildren = {
1211
2945
  type: "EscapeHatch";
1212
2946
  node: EscapeHatchModel;
1213
2947
  };
2948
+ /**
2949
+ * Recursive child node types allowed within outer layout containers. Includes structural,
2950
+ * distribution, navigation, and presentational nodes scoped to outer layout predicates.
2951
+ */
1214
2952
  export type OuterLayoutChildren = {
1215
2953
  type: "Row";
1216
2954
  node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1278,6 +3016,11 @@ export type OuterLayoutChildren = {
1278
3016
  type: "EscapeHatch";
1279
3017
  node: EscapeHatchModel;
1280
3018
  };
3019
+ /**
3020
+ * Non-interactive child node types within outer layouts. Only allows structural containers,
3021
+ * static images, basic text, icons, conditional nodes, and escape hatches. Used as children
3022
+ * of interactive elements like buttons and links in outer layouts.
3023
+ */
1281
3024
  export type OuterLayoutNonInteractableChildren = {
1282
3025
  type: "Row";
1283
3026
  node: RowModel<OuterLayoutNonInteractableChildren, OuterLayoutWhenPredicate>;
@@ -1306,6 +3049,11 @@ export type OuterLayoutNonInteractableChildren = {
1306
3049
  type: "EscapeHatch";
1307
3050
  node: EscapeHatchModel;
1308
3051
  };
3052
+ /**
3053
+ * Node types valid for use in outer layouts. Outer layouts define the frame and offer
3054
+ * distribution but do not contain offer-specific content. They include structural containers,
3055
+ * distribution nodes, navigation controls, and close buttons.
3056
+ */
1309
3057
  export type OuterLayoutSchemaModel = {
1310
3058
  type: "Row";
1311
3059
  node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1376,25 +3124,47 @@ export type OuterLayoutSchemaModel = {
1376
3124
  type: "EscapeHatch";
1377
3125
  node: EscapeHatchModel;
1378
3126
  };
1379
- export type OuterLayoutWhenPredicate = {
3127
+ /**
3128
+ * Predicate types available in the outer layout context. This is a more
3129
+ * restricted subset of predicates for use in the outer layout wrapper.
3130
+ * Does NOT include Position, CreativeCopy, or DomainState predicates.
3131
+ * Each predicate MUST include a "type" field and a "predicate" field.
3132
+ */
3133
+ export type OuterLayoutWhenPredicate =
3134
+ /** Tests the viewport width against a breakpoint value. */
3135
+ {
1380
3136
  type: "Breakpoint";
1381
3137
  predicate: BreakpointPredicate;
1382
- } | {
3138
+ }
3139
+ /** Tests which offer index is currently visible. */
3140
+ | {
1383
3141
  type: "Progression";
1384
3142
  predicate: ProgressionPredicate;
1385
- } | {
3143
+ }
3144
+ /** Tests whether dark mode is active. */
3145
+ | {
1386
3146
  type: "DarkMode";
1387
3147
  predicate: DarkModePredicate;
1388
- } | {
3148
+ }
3149
+ /** Evaluates a hardcoded boolean value. */
3150
+ | {
1389
3151
  type: "StaticBoolean";
1390
3152
  predicate: StaticBooleanPredicate;
1391
- } | {
3153
+ }
3154
+ /** Tests a custom state value set by state trigger nodes. */
3155
+ | {
1392
3156
  type: "CustomState";
1393
3157
  predicate: CustomStatePredicate;
1394
- } | {
3158
+ }
3159
+ /** Compares a static string input against a value. */
3160
+ | {
1395
3161
  type: "StaticString";
1396
3162
  predicate: StaticStringPredicate;
1397
3163
  };
3164
+ /**
3165
+ * Child node types allowed inside scrollable containers (ScrollableColumn, ScrollableRow)
3166
+ * in the combined SDK schema. Excludes overlay and bottom sheet nodes that cannot scroll.
3167
+ */
1398
3168
  export type ScrollableChildren = {
1399
3169
  type: "Row";
1400
3170
  node: RowModel<ScrollableChildren, WhenPredicate>;
@@ -1471,6 +3241,10 @@ export type ScrollableChildren = {
1471
3241
  type: "EscapeHatch";
1472
3242
  node: EscapeHatchModel;
1473
3243
  };
3244
+ /**
3245
+ * Child node types allowed inside scrollable containers within layout variants. Excludes
3246
+ * overlay and bottom sheet nodes, scoped to layout variant predicates. Includes catalog components.
3247
+ */
1474
3248
  export type ScrollableLayoutVariantChildren = {
1475
3249
  type: "Row";
1476
3250
  node: RowModel<ScrollableLayoutVariantChildren, LayoutVariantWhenPredicate>;
@@ -1523,6 +3297,10 @@ export type ScrollableLayoutVariantChildren = {
1523
3297
  type: "EscapeHatch";
1524
3298
  node: EscapeHatchModel;
1525
3299
  };
3300
+ /**
3301
+ * Child node types allowed inside scrollable containers within outer layouts. Excludes overlay
3302
+ * and bottom sheet nodes, scoped to outer layout predicates.
3303
+ */
1526
3304
  export type ScrollableOuterLayoutChildren = {
1527
3305
  type: "Row";
1528
3306
  node: RowModel<ScrollableOuterLayoutChildren, OuterLayoutWhenPredicate>;
@@ -1584,31 +3362,55 @@ export type ScrollableOuterLayoutChildren = {
1584
3362
  type: "EscapeHatch";
1585
3363
  node: EscapeHatchModel;
1586
3364
  };
1587
- export type WhenPredicate = {
3365
+ /**
3366
+ * All available predicate types for conditional rendering in the full layout
3367
+ * schema. Used with the When node to conditionally show or hide children.
3368
+ * Each predicate MUST include a "type" field to identify the predicate kind
3369
+ * and a "predicate" field containing the predicate configuration.
3370
+ */
3371
+ export type WhenPredicate =
3372
+ /** Tests the viewport width against a breakpoint value. */
3373
+ {
1588
3374
  type: "Breakpoint";
1589
3375
  predicate: BreakpointPredicate;
1590
- } | {
3376
+ }
3377
+ /** Tests the position index of the current item in a collection. */
3378
+ | {
1591
3379
  type: "Position";
1592
3380
  predicate: PositionPredicate;
1593
- } | {
3381
+ }
3382
+ /** Tests which offer index is currently visible. */
3383
+ | {
1594
3384
  type: "Progression";
1595
3385
  predicate: ProgressionPredicate;
1596
- } | {
3386
+ }
3387
+ /** Tests whether dark mode is active. */
3388
+ | {
1597
3389
  type: "DarkMode";
1598
3390
  predicate: DarkModePredicate;
1599
- } | {
3391
+ }
3392
+ /** Tests whether a creative data attribute exists. */
3393
+ | {
1600
3394
  type: "CreativeCopy";
1601
3395
  predicate: CreativeCopyPredicate;
1602
- } | {
3396
+ }
3397
+ /** Evaluates a hardcoded boolean value. */
3398
+ | {
1603
3399
  type: "StaticBoolean";
1604
3400
  predicate: StaticBooleanPredicate;
1605
- } | {
3401
+ }
3402
+ /** Tests a custom state value set by state trigger nodes. */
3403
+ | {
1606
3404
  type: "CustomState";
1607
3405
  predicate: CustomStatePredicate;
1608
- } | {
3406
+ }
3407
+ /** Tests application domain state. */
3408
+ | {
1609
3409
  type: "DomainState";
1610
3410
  predicate: LayoutSchemaDomainStatePredicate;
1611
- } | {
3411
+ }
3412
+ /** Compares a static string input against a value. */
3413
+ | {
1612
3414
  type: "StaticString";
1613
3415
  predicate: StaticStringPredicate;
1614
3416
  };