@riverbankcms/sdk 0.130.2 → 0.132.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 (339) hide show
  1. package/CHANGELOG.md +3 -3
  2. package/dist/{PreviewEditorSidebar-BY-1QdE2.mjs → PreviewEditorSidebar-DKQ5eFK9.mjs} +351 -95
  3. package/dist/{PreviewEditorUI-BS34jI9_.mjs → PreviewEditorUI-CNTcOjCC.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BD0kOjtI.mjs → PreviewQueryProvider-D51gQaG3.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-B1pWnhu-.mjs → SdkPreviewModeRuntime-DJu3qu33.mjs} +48 -9
  6. package/dist/{SiteChromeCustomizeContext-BhUG_72i.mjs → SiteChromeCustomizeContext-2TzT3vbj.mjs} +6417 -4184
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +723 -151
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +151 -64
  9. package/dist/_dts/api/src/bookingConfig.d.ts +13 -9
  10. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +8 -19
  11. package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +31 -2
  12. package/dist/_dts/api/src/bookingVerticals.d.ts +1 -140
  13. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +45 -12
  14. package/dist/_dts/api/src/contentRuntime.d.ts +2 -1
  15. package/dist/_dts/api/src/courses.d.ts +1 -19
  16. package/dist/_dts/api/src/endpoints.d.ts +466 -346
  17. package/dist/_dts/api/src/event-destination-policy.d.ts +1 -1
  18. package/dist/_dts/api/src/eventManagementContracts.d.ts +91 -1
  19. package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +32 -0
  20. package/dist/_dts/api/src/giftingDashboard.d.ts +117 -0
  21. package/dist/_dts/api/src/giftingEndpointDefinitions.d.ts +124 -0
  22. package/dist/_dts/api/src/index.d.ts +4 -4
  23. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
  24. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  25. package/dist/_dts/api/src/media.d.ts +1 -0
  26. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +3 -4
  27. package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +11 -0
  28. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +25 -12
  29. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +2 -0
  30. package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +1 -0
  31. package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -2
  32. package/dist/_dts/api/src/sdkBookingVerticalContracts.d.ts +29 -0
  33. package/dist/_dts/api/src/sdkContracts.d.ts +9 -32
  34. package/dist/_dts/api/src/sdkEndpointDefinitions.d.ts +23 -0
  35. package/dist/_dts/api/src/sdkSettingsContracts.d.ts +25 -0
  36. package/dist/_dts/api/src/sdkThemeCatalogContracts.d.ts +20 -0
  37. package/dist/_dts/api/src/sdkThemeWire.d.ts +16 -6
  38. package/dist/_dts/api/src/siteOnboarding.d.ts +3 -3
  39. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +4 -10
  40. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +0 -3
  41. package/dist/_dts/api/src/types.d.ts +1 -2
  42. package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -13
  43. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +9 -0
  44. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +26 -44
  45. package/dist/_dts/blocks/src/index.d.ts +1 -1
  46. package/dist/_dts/blocks/src/subroutes/fold.d.ts +2 -1
  47. package/dist/_dts/blocks/src/system/blocks/courses/shared/index.d.ts +0 -3
  48. package/dist/_dts/blocks/src/system/blocks/courses/shared/pricing.d.ts +2 -50
  49. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +1 -929
  50. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -97
  51. package/dist/_dts/blocks/src/system/blocks/event-details.d.ts +39 -6
  52. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -1
  53. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +3 -3
  54. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -3
  55. package/dist/_dts/blocks/src/system/blocks/events/shared/filtering.d.ts +2 -2
  56. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +6 -6
  57. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +2 -9
  58. package/dist/_dts/blocks/src/system/blocks/events/whole-series/index.d.ts +3 -0
  59. package/dist/_dts/blocks/src/system/blocks/events/whole-series/pricing.d.ts +50 -0
  60. package/dist/_dts/blocks/src/system/blocks/events/whole-series/schemas.d.ts +135 -0
  61. package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +81 -0
  62. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -9
  63. package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +1 -1
  64. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +7 -8
  65. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  66. package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +1 -1
  67. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +45 -72
  68. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -36
  69. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +6 -6
  70. package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +2 -5
  71. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.client.d.ts +4 -2
  72. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +19 -7
  73. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +25 -4
  74. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +75 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/view.d.ts +4 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +5 -2
  77. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +5 -2
  78. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +4 -0
  79. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/RegistrationClosedState.d.ts +5 -0
  80. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SiteCreditPreviewPanel.d.ts +6 -0
  81. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +2 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +17 -0
  83. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +3 -3
  84. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/siteCreditPreview.d.ts +51 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +3 -3
  86. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -0
  87. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/BookingModeStep.d.ts +1 -1
  88. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/CheckIcon.d.ts +1 -1
  89. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/ErrorStep.d.ts +1 -1
  90. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/MembershipHero.d.ts +3 -3
  91. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PaymentFailedStep.d.ts +1 -1
  92. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/StepIndicator.d.ts +6 -0
  93. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/VerifyingTimeoutStep.d.ts +1 -1
  94. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationActiveSteps.d.ts +9 -0
  95. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/CourseRegistrationErrorBoundary.d.ts → event-registration/whole-series/WholeSeriesRegistrationErrorBoundary.d.ts} +5 -2
  96. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationTerminalContent.d.ts +8 -0
  97. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationWizard.d.ts +8 -0
  98. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/components.d.ts +45 -0
  99. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/index.d.ts +4 -4
  100. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/presentation.d.ts +7 -0
  101. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/pricing.d.ts +14 -0
  102. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/types.d.ts +18 -16
  103. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseEligibility.d.ts → event-registration/whole-series/useWholeSeriesEligibility.d.ts} +6 -6
  104. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesPaymentVerification.d.ts +10 -0
  105. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationActions.d.ts +35 -0
  106. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseRegistrationPortal.d.ts → event-registration/whole-series/useWholeSeriesRegistrationPortal.d.ts} +2 -2
  107. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationSelection.d.ts +35 -0
  108. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationWizard.d.ts +185 -0
  109. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseWaitlistSelection.d.ts → event-registration/whole-series/useWholeSeriesWaitlistSelection.d.ts} +5 -5
  110. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/utils.d.ts +4 -4
  111. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.contract.d.ts +5 -7
  112. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.planning.d.ts +2 -2
  113. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.d.ts +17 -0
  114. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/courseRegistrationViewState.d.ts → event-registration/whole-series/wholeSeriesRegistrationViewState.d.ts} +7 -7
  115. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/wizardSteps.d.ts +4 -4
  116. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -54
  117. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +2 -0
  118. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
  119. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +12 -11
  120. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.server.d.ts +3 -2
  121. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventSpotlight.d.ts +3 -2
  122. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +3 -2
  123. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventDetailModal.d.ts +4 -3
  124. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModalCloseButton.d.ts +7 -0
  125. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +4 -3
  126. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +14 -0
  127. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +19 -4
  128. package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.d.ts +1 -1
  129. package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +12 -12
  130. package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +1 -0
  131. package/dist/_dts/blocks/src/system/transforms/registry/_utils/boxStyleClassNames.d.ts +30 -11
  132. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +15 -4
  133. package/dist/_dts/blocks/src/system/transforms/registry/index.d.ts +1 -0
  134. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -4
  135. package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +13 -0
  136. package/dist/_dts/commerce/src/purchase/cancellationPolicy.d.ts +7 -0
  137. package/dist/_dts/commerce/src/purchase/canonicalRefundPlanner.d.ts +48 -0
  138. package/dist/_dts/commerce/src/purchase/checkoutCollectionPlan.d.ts +39 -0
  139. package/dist/_dts/commerce/src/purchase/checkoutCommitPlan.d.ts +40 -0
  140. package/dist/_dts/commerce/src/purchase/checkoutDiscountContextPlanning.d.ts +80 -0
  141. package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -0
  142. package/dist/_dts/commerce/src/purchase/checkoutOrderItemProjection.d.ts +22 -0
  143. package/dist/_dts/commerce/src/purchase/checkoutPaymentFlow.d.ts +50 -0
  144. package/dist/_dts/commerce/src/purchase/checkoutPaymentPlanPlanning.d.ts +30 -0
  145. package/dist/_dts/commerce/src/purchase/checkoutPaymentTermPlanning.d.ts +10 -0
  146. package/dist/_dts/commerce/src/purchase/checkoutPaymentTerms.d.ts +53 -0
  147. package/dist/_dts/commerce/src/purchase/checkoutQuantity.d.ts +8 -0
  148. package/dist/_dts/commerce/src/purchase/checkoutSessionMetadata.d.ts +76 -0
  149. package/dist/_dts/commerce/src/purchase/checkoutSettlement.d.ts +46 -0
  150. package/dist/_dts/commerce/src/purchase/checkoutStripeFinalizationPlanning.d.ts +12 -0
  151. package/dist/_dts/commerce/src/purchase/checkoutStripeSessionPlanning.d.ts +125 -0
  152. package/dist/_dts/commerce/src/purchase/checkoutValidatedItemPlanning.d.ts +55 -0
  153. package/dist/_dts/commerce/src/purchase/confirmationEmailPayment.d.ts +91 -0
  154. package/dist/_dts/commerce/src/purchase/discountApplication.d.ts +74 -0
  155. package/dist/_dts/commerce/src/purchase/index.d.ts +55 -0
  156. package/dist/_dts/commerce/src/purchase/oneTimeCheckoutPlanning.d.ts +86 -0
  157. package/dist/_dts/commerce/src/purchase/order-number.d.ts +33 -0
  158. package/dist/_dts/commerce/src/purchase/orderCancellationPlan.d.ts +19 -0
  159. package/dist/_dts/commerce/src/purchase/orderCompletionEmailPlan.d.ts +71 -0
  160. package/dist/_dts/commerce/src/purchase/orderConfirmationPlanning.d.ts +120 -0
  161. package/dist/_dts/commerce/src/purchase/orderFulfillmentPlan.d.ts +81 -0
  162. package/dist/_dts/commerce/src/purchase/orderFulfillmentResult.d.ts +8 -0
  163. package/dist/_dts/commerce/src/purchase/orderHistoryLedgerFilters.d.ts +1 -0
  164. package/dist/_dts/commerce/src/purchase/orderHistorySource.d.ts +11 -0
  165. package/dist/_dts/commerce/src/purchase/orderInstalmentAdminSettlement.d.ts +43 -0
  166. package/dist/_dts/commerce/src/purchase/orderInstalmentClosure.d.ts +29 -0
  167. package/dist/_dts/commerce/src/purchase/orderInstalmentLifecycle.d.ts +44 -0
  168. package/dist/_dts/commerce/src/purchase/orderInstalmentPayoff.d.ts +24 -0
  169. package/dist/_dts/commerce/src/purchase/orderInstalmentPlan.d.ts +40 -0
  170. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +151 -0
  171. package/dist/_dts/commerce/src/purchase/orderItemSupport.d.ts +14 -0
  172. package/dist/_dts/commerce/src/purchase/orderListFilters.d.ts +3 -0
  173. package/dist/_dts/commerce/src/purchase/orderPaymentLinkPlanning.d.ts +60 -0
  174. package/dist/_dts/commerce/src/purchase/orderPaymentReceipt.d.ts +184 -0
  175. package/dist/_dts/commerce/src/purchase/orderPaymentState.d.ts +135 -0
  176. package/dist/_dts/commerce/src/purchase/orderPlanningTypes.d.ts +102 -0
  177. package/dist/_dts/commerce/src/purchase/orderRefundPlanning.d.ts +50 -0
  178. package/dist/_dts/commerce/src/purchase/orderRefundPolicy.d.ts +36 -0
  179. package/dist/_dts/commerce/src/purchase/orderTotals.d.ts +23 -0
  180. package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +39 -0
  181. package/dist/_dts/commerce/src/purchase/pendingCheckoutSessionClaim.d.ts +1 -0
  182. package/dist/_dts/commerce/src/purchase/persistedCheckoutLines.d.ts +27 -0
  183. package/dist/_dts/commerce/src/purchase/protectedDepositRefundPolicy.d.ts +86 -0
  184. package/dist/_dts/commerce/src/purchase/refundPolicy.d.ts +8 -0
  185. package/dist/_dts/commerce/src/purchase/refundRailSplit.d.ts +40 -0
  186. package/dist/_dts/commerce/src/purchase/result.d.ts +2 -0
  187. package/dist/_dts/commerce/src/purchase/settlement.d.ts +97 -0
  188. package/dist/_dts/commerce/src/purchase/shopRefundPlanning.d.ts +43 -0
  189. package/dist/_dts/commerce/src/purchase/stateTransitions.d.ts +31 -0
  190. package/dist/_dts/commerce/src/purchase/stripeMinimumCharge.d.ts +10 -0
  191. package/dist/_dts/commerce/src/purchase/types.d.ts +168 -0
  192. package/dist/_dts/commerce/src/shop/shipmentEligibility.d.ts +14 -0
  193. package/dist/_dts/commerce/src/utils/assertNever.d.ts +1 -0
  194. package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +4 -0
  195. package/dist/_dts/content-model/src/content-types/builtins.d.ts +4 -0
  196. package/dist/_dts/core/src/booking-vertical-catalog.d.ts +741 -0
  197. package/dist/_dts/core/src/booking-vertical-config.d.ts +66 -0
  198. package/dist/_dts/core/src/booking-vertical-definitions.d.ts +68 -0
  199. package/dist/_dts/{api/src/bookingVerticalPreset.d.ts → core/src/booking-vertical-preset.d.ts} +1 -1
  200. package/dist/_dts/core/src/booking-verticals.d.ts +98 -0
  201. package/dist/_dts/core/src/event-page-selection.d.ts +22 -0
  202. package/dist/_dts/core/src/event-pricing.d.ts +5 -0
  203. package/dist/_dts/core/src/event-series-behaviour.d.ts +16 -0
  204. package/dist/_dts/core/src/index.d.ts +3 -0
  205. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +72 -0
  206. package/dist/_dts/db/src/schemas/forms.d.ts +4 -4
  207. package/dist/_dts/media-core/src/fileUploadCompletion.d.ts +3 -0
  208. package/dist/_dts/media-core/src/fileUploadDurableFinalization.d.ts +2 -0
  209. package/dist/_dts/media-core/src/identifiers.d.ts +10 -0
  210. package/dist/_dts/media-core/src/mediaWriteNormalizer.d.ts +2 -6
  211. package/dist/_dts/media-core/src/types.d.ts +2 -1
  212. package/dist/_dts/media-editor/src/index.d.ts +2 -2
  213. package/dist/_dts/media-editor/src/mediaSelection.d.ts +1 -22
  214. package/dist/_dts/media-editor/src/useMediaSelection.d.ts +0 -9
  215. package/dist/_dts/preview-next/src/client/preview/ButtonHoverRoleControls.d.ts +10 -0
  216. package/dist/_dts/preview-next/src/client/preview/ButtonStylePicker.d.ts +3 -2
  217. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -1
  218. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
  219. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
  220. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -1
  221. package/dist/_dts/preview-next/src/client/preview/StyleConfiguratorWarningNotice.d.ts +7 -0
  222. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -1
  223. package/dist/_dts/sdk/src/client/eventSubrouteReadOperations.d.ts +11 -0
  224. package/dist/_dts/sdk/src/client/types.d.ts +12 -5
  225. package/dist/_dts/sdk/src/components.d.ts +1 -1
  226. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  227. package/dist/_dts/sdk/src/contracts/page.d.ts +2 -13
  228. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -16
  229. package/dist/_dts/sdk/src/next/pageMetadataProjection.d.ts +7 -0
  230. package/dist/_dts/sdk/src/next/resolveEventPageSubroute.d.ts +12 -0
  231. package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -19
  232. package/dist/_dts/sdk/src/public-api/eventSubrouteContracts.d.ts +12 -0
  233. package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
  234. package/dist/_dts/sdk/src/rendering/client.d.ts +44 -0
  235. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  236. package/dist/_dts/sdk/src/routing/entrySubroutes.d.ts +1 -1
  237. package/dist/_dts/sdk/src/routing/resolveOccurrence.d.ts +4 -3
  238. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +7 -3
  239. package/dist/_dts/sdk/src/version.d.ts +1 -1
  240. package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +1 -1
  241. package/dist/_dts/theme-core/src/buttons/contextualHover.d.ts +41 -0
  242. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  243. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +3 -0
  244. package/dist/_dts/theme-core/src/buttons/resolveButtonHoverTreatment.d.ts +14 -0
  245. package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +21 -4
  246. package/dist/_dts/theme-core/src/buttons/styles/recipes/flatInk.d.ts +92 -0
  247. package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +10 -150
  248. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +57 -102
  249. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +50 -2
  250. package/dist/_dts/theme-core/src/buttons/types.d.ts +29 -0
  251. package/dist/_dts/theme-core/src/cards/types.d.ts +3 -25
  252. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  253. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +21 -6
  254. package/dist/_dts/theme-core/src/schema.d.ts +21 -33
  255. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +27 -0
  256. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +27 -0
  257. package/dist/_dts/theme-core/src/site-styles/buttonSelectionCompiler.d.ts +18 -0
  258. package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +21 -0
  259. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +2 -11
  260. package/dist/_dts/theme-core/src/site-styles/selectionFallbackWarning.d.ts +15 -0
  261. package/dist/_dts/theme-core/src/site-styles/types.d.ts +13 -1
  262. package/dist/_dts/ui/src/navigation-tabs.d.ts +2 -0
  263. package/dist/client/{DiscountCodeDisclosure-BPZ-yfGI.mjs → DiscountCodeDisclosure-DO7llLxm.mjs} +12 -12
  264. package/dist/client/{EventCombined.client-Cjt3kKYR.mjs → EventCombined.client-xID7zN__.mjs} +36 -48
  265. package/dist/client/{EventListing.client-DY9dn6Fh.mjs → EventListing.client-CriBslp0.mjs} +2 -2
  266. package/dist/client/{LeafletStaticMap--2c61XYn.mjs → LeafletStaticMap-DYmHnM8g.mjs} +1 -1
  267. package/dist/client/{StepIndicator-CLjQhkDb.mjs → StepIndicator-CGixP_LW.mjs} +2 -2
  268. package/dist/client/{CourseRegistrationWizard-DGW9F0SQ.mjs → WholeSeriesRegistrationWizard-BEjzSiOA.mjs} +1408 -1245
  269. package/dist/client/{accordion-_boYwHHi.mjs → accordion-CgFbnnnQ.mjs} +1 -1
  270. package/dist/client/{bookingForm--AqEfyBX.mjs → bookingForm-dUyGpbxc.mjs} +5 -5
  271. package/dist/client/bookings.mjs +635 -471
  272. package/dist/client/{carousel-CVI2dqZr.mjs → carousel-BvBwkUzx.mjs} +1 -1
  273. package/dist/client/{cart-DR6IiPz9.mjs → cart-DiZENT2E.mjs} +3 -3
  274. package/dist/client/{checkout-CsrGAfQt.mjs → checkout-Dq13KIgR.mjs} +3 -3
  275. package/dist/client/client.mjs +6291 -3452
  276. package/dist/client/{courseRegistration-aNJVaLa3.mjs → courseRegistration-CKC5NmyH.mjs} +10 -4
  277. package/dist/client/{eventCalendar-OZ7h59VN.mjs → eventCalendar-BF0Jatfw.mjs} +40 -43
  278. package/dist/client/{eventCombined-BbJ6bFKz.mjs → eventCombined-BuoCF8je.mjs} +2 -2
  279. package/dist/client/{eventDetails-BLyUBiCT.mjs → eventDetails-CKwh0S9s.mjs} +276 -94
  280. package/dist/client/{eventListing-DuP1yhBS.mjs → eventListing-eUxaWFaB.mjs} +2 -2
  281. package/dist/client/{eventRegistration-BXyECPa-.mjs → eventRegistration-CfkNOkPb.mjs} +625 -132
  282. package/dist/client/{form-BA4t3kKU.mjs → form-C17H1c_H.mjs} +1 -1
  283. package/dist/client/{headerSection-CpNaJxhW.mjs → headerSection-DEwUmrtt.mjs} +2 -2
  284. package/dist/client/hooks.mjs +1312 -481
  285. package/dist/client/{locationMap-3HGMCL7_.mjs → locationMap-Pf2QwuvW.mjs} +2 -2
  286. package/dist/client/{newsletterForm-C2s6Mw67.mjs → newsletterForm-BWQAH5Sv.mjs} +1 -1
  287. package/dist/client/pricing-CVdvbopJ.mjs +195 -0
  288. package/dist/client/{productDetail-C9joWhdE.mjs → productDetail-BZi1Fa_G.mjs} +3 -3
  289. package/dist/client/{productList-CjzdU3pB.mjs → productList-qq-55DNk.mjs} +3 -3
  290. package/dist/client/{propsDecoder-CBPGXEYX.mjs → propsDecoder-BxmqPKdP.mjs} +412 -196
  291. package/dist/client/rendering/client.mjs +5685 -4037
  292. package/dist/client/rendering/islands.mjs +18 -18
  293. package/dist/client/rendering.mjs +7006 -4124
  294. package/dist/client/{scrollToBlock-DZ73aEX6.mjs → scrollToBlock-B3CcKdtG.mjs} +1 -1
  295. package/dist/client/{shop-CQRai7hj.mjs → shop-DNWJPut5.mjs} +5 -5
  296. package/dist/client/{shop-commerce-hP9UboOx.mjs → shop-commerce-BhvQCosS.mjs} +4 -4
  297. package/dist/client/{shop-commerce-store-DiD5a32e.mjs → shop-commerce-store-B04sCNnW.mjs} +1 -1
  298. package/dist/client/{shopShared-DP8DXTkF.mjs → shopShared-DNNgZlmW.mjs} +2 -2
  299. package/dist/client/{useEventFilters-pF_OJNQP.mjs → useEventFilters-CUmhE24_.mjs} +195 -6
  300. package/dist/client/{usePolling-Cls91SD2.mjs → usePolling-M5jG675x.mjs} +3 -3
  301. package/dist/preview-next/before-render.mjs +247 -60
  302. package/dist/preview-next/client/runtime.mjs +4 -4
  303. package/dist/preview-next/keepAlive.mjs +247 -60
  304. package/dist/preview-next/middleware.mjs +247 -60
  305. package/dist/{previewAuthStore-CX1C_KJ4.mjs → previewAuthStore-BFKd4LrN.mjs} +247 -60
  306. package/dist/{sdk-runtime-5CcPAI14.mjs → sdk-runtime-BEXb1wqo.mjs} +2 -2
  307. package/dist/{separator-BXlYN_gr.mjs → separator-DGMuip1D.mjs} +1 -1
  308. package/dist/server/components.mjs +3461 -1577
  309. package/dist/server/config-validation.mjs +1312 -482
  310. package/dist/server/config.mjs +1312 -482
  311. package/dist/server/data.mjs +1312 -481
  312. package/dist/server/index.mjs +289 -81
  313. package/dist/server/manifest.mjs +0 -1
  314. package/dist/server/next.mjs +3576 -1689
  315. package/dist/server/page-converter.mjs +797 -250
  316. package/dist/server/prebuild.mjs +1 -1
  317. package/dist/server/rendering/server.mjs +3461 -1576
  318. package/dist/server/rendering.mjs +3461 -1577
  319. package/dist/server/routing.mjs +1555 -616
  320. package/dist/server/server.mjs +1352 -560
  321. package/dist/server/theme-bridge.mjs +1992 -931
  322. package/dist/server/theme.mjs +346 -133
  323. package/dist/styles/index.css +1602 -796
  324. package/package.json +1 -1
  325. package/dist/_dts/api/src/bookingVerticalCatalog.d.ts +0 -746
  326. package/dist/_dts/api/src/eventSeriesPresentationPreset.d.ts +0 -12
  327. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/CourseRegistrationWizard.d.ts +0 -3
  328. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/StepIndicator.d.ts +0 -6
  329. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/components.d.ts +0 -45
  330. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/pricing.d.ts +0 -14
  331. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCoursePaymentVerification.d.ts +0 -9
  332. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationActions.d.ts +0 -35
  333. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationSelection.d.ts +0 -31
  334. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +0 -102
  335. package/dist/client/eventProductEligibility-AVxyCB1u.mjs +0 -50
  336. package/dist/client/pricing-BiqIMgZk.mjs +0 -174
  337. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PortalAuthSidebar.d.ts +0 -0
  338. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/SuccessStep.d.ts +0 -0
  339. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/WaitlistStep.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { type TransformDefinition } from "./core";
2
2
  import type { SemanticSpacing } from "../../spacing";
3
- import { type CardRole } from '../../../../../theme-core/src/cards/index';
3
+ import type { CardRole } from "../../../../../theme-core/src/cards/index";
4
4
  /**
5
5
  * Maps semantic spacing values to CSS-only `rb-*` spacing classes.
6
6
  *
@@ -86,13 +86,24 @@ type CardRoleClassOptions = {
86
86
  * background, radius) ride along on top as they always have.
87
87
  */
88
88
  export declare const cardRoleClassTransform: TransformDefinition<CardRoleClassOptions>;
89
- export declare const cardVariantClassTransform: TransformDefinition<{
89
+ /**
90
+ * The role class for a layout's own card slot, bound from the block's compiled
91
+ * card styles so a Look that picks a surface still reaches a slot the layout
92
+ * assigned a default role to.
93
+ */
94
+ export declare const cardSlotRoleTransform: TransformDefinition<{
90
95
  baseClass?: string;
96
+ slotDefault: Exclude<CardRole, "none">;
91
97
  }>;
92
- export declare const boxStylesBorderColorTransform: TransformDefinition<{
98
+ type BoxStylesBorderColorOptions = {
93
99
  fallbackToken?: string;
94
100
  returnEmptyForDefault?: boolean;
95
- }>;
101
+ /** Read card styles here when the bound value is a per-item role. */
102
+ stylesPath?: string;
103
+ /** Map a block's per-item surface vocabulary onto canonical card roles. */
104
+ itemRoleAliases?: Readonly<Record<string, string>>;
105
+ };
106
+ export declare const boxStylesBorderColorTransform: TransformDefinition<BoxStylesBorderColorOptions>;
96
107
  type SectionClassNameOptions = {
97
108
  baseClass?: string;
98
109
  containerStylesPath?: string;
@@ -9,4 +9,5 @@ import { contentTransforms } from "./content";
9
9
  import { headerRuntimeTransforms } from "./headerRuntime";
10
10
  export declare const builtinTransformDefinitions: import("./core").TransformDefinition<unknown>[];
11
11
  export declare const defaultTransforms: import("./core").TransformRegistry;
12
+ export { boxStyleClassNames } from "./_utils/boxStyleClassNames";
12
13
  export { formattingTransforms, layoutTransforms, uiTransforms, mediaTransforms, backgroundTransforms, linksTransforms, boxStylesTransforms, contentTransforms, headerRuntimeTransforms, };
@@ -100,9 +100,6 @@ export declare const transformDefinitions: {
100
100
  readonly 'boxStyles.semanticGapValue': TransformDefinition<{
101
101
  fallback?: import("../spacing").SemanticSpacing;
102
102
  }>;
103
- readonly 'boxStyles.cardVariantClass': TransformDefinition<{
104
- baseClass?: string;
105
- }>;
106
103
  };
107
104
  export type TransformId = keyof typeof transformDefinitions;
108
105
  type OptionsOf<T> = T extends TransformDefinition<infer O> ? O : never;
@@ -123,7 +120,7 @@ export declare function bindProp(from: string, opts?: {
123
120
  readonly $bind: {
124
121
  readonly pick?: "value" | "context" | "collection" | undefined;
125
122
  readonly fallback?: {} | null | undefined;
126
- readonly transforms?: TransformStep<"string.uppercase" | "value.fallback" | "date.formatShort" | "value.csv" | "layout.maxWidthClass" | "layout.headerRootClass" | "layout.footerRootClass" | "layout.headerRootStyle" | "layout.headerSectionBackground" | "layout.footerRootStyle" | "ui.headerNavLinkClass" | "ui.headingClassFromAlignment" | "ui.bodyClassFromAlignment" | "ui.stackAlignFromAlignment" | "ui.sectionStateTone" | "ui.heroContentWrapperClass" | "ui.heroCtaJustify" | "ui.heroStackJustifyFromVerticalAlignment" | "ui.heroGridClassFromVerticalAlignment" | "ui.conditionalClass" | "ui.twoColumnContainerClass" | "ui.twoColumnFlexBasis" | "media.fromUrl" | "content.interpolateRichTextTokens" | "boxStyles.semanticGap" | "boxStyles.semanticGapValue" | "boxStyles.cardVariantClass" | "layout.headerLogoClass" | "layout.headerLogoMediaClass" | "layout.headerLogoTextVisible" | "layout.footerBottomBarClass" | "layout.footerBottomBarContainerClass" | "layout.footerBottomBarStyle" | "layout.footerSplitMainClass" | "layout.footerLogoClass" | "layout.footerLogoMediaClass" | "layout.footerLogoTextVisible" | "layout.headerRuntimeContract">[] | undefined;
123
+ readonly transforms?: TransformStep<"string.uppercase" | "value.fallback" | "date.formatShort" | "value.csv" | "layout.maxWidthClass" | "layout.headerRootClass" | "layout.footerRootClass" | "layout.headerRootStyle" | "layout.headerSectionBackground" | "layout.footerRootStyle" | "ui.headerNavLinkClass" | "ui.headingClassFromAlignment" | "ui.bodyClassFromAlignment" | "ui.stackAlignFromAlignment" | "ui.sectionStateTone" | "ui.heroContentWrapperClass" | "ui.heroCtaJustify" | "ui.heroStackJustifyFromVerticalAlignment" | "ui.heroGridClassFromVerticalAlignment" | "ui.conditionalClass" | "ui.twoColumnContainerClass" | "ui.twoColumnFlexBasis" | "media.fromUrl" | "content.interpolateRichTextTokens" | "boxStyles.semanticGap" | "boxStyles.semanticGapValue" | "layout.headerLogoClass" | "layout.headerLogoMediaClass" | "layout.headerLogoTextVisible" | "layout.footerBottomBarClass" | "layout.footerBottomBarContainerClass" | "layout.footerBottomBarStyle" | "layout.footerSplitMainClass" | "layout.footerLogoClass" | "layout.footerLogoMediaClass" | "layout.footerLogoTextVisible" | "layout.headerRuntimeContract">[] | undefined;
127
124
  readonly from: string;
128
125
  };
129
126
  };
@@ -0,0 +1,13 @@
1
+ import { type BookingInstalmentPlanConfig } from '../../../core/src/index';
2
+ export type BookingInstalmentScheduleRow = Readonly<{
3
+ id: string;
4
+ sequence: number;
5
+ stateAtBooking: 'paid_today' | 'scheduled';
6
+ dueAt: string;
7
+ amountCents: number;
8
+ }>;
9
+ export declare function buildBookingInstalmentSchedule(input: Readonly<{
10
+ anchorAt: string;
11
+ totalAmountCents: number;
12
+ plan: BookingInstalmentPlanConfig;
13
+ }>): readonly BookingInstalmentScheduleRow[];
@@ -0,0 +1,7 @@
1
+ import type { OrderStatus } from './orderTypes';
2
+ /**
3
+ * Whether an order in the given status can be cancelled.
4
+ *
5
+ * `cancelled` orders cannot be cancelled again.
6
+ */
7
+ export declare function isCancellableStatus(status: OrderStatus): boolean;
@@ -0,0 +1,48 @@
1
+ import type { NonNegativeCents } from '../../../core/src/index';
2
+ import type { OrderRefundMode } from './orderRefundPolicy';
3
+ export type CanonicalRefundMethod = 'cash' | 'credit';
4
+ export type OrderRefundRail = 'cash' | 'credit' | 'mixed';
5
+ export type CanonicalRefundPlannerErrorCode = 'already_refunded' | 'idempotency_amount_mismatch' | 'idempotency_method_mismatch' | 'refund_in_progress' | 'invalid_amount' | 'amount_exceeds_remaining' | 'pass_revoke_requires_full_refund' | 'refund_failed';
6
+ export type CanonicalRefundSnapshot = Readonly<{
7
+ id: string;
8
+ status: 'pending' | 'succeeded' | 'failed' | 'reconciliation_needed';
9
+ amountCents: NonNegativeCents;
10
+ refundRail: OrderRefundRail;
11
+ refundMode: OrderRefundMode;
12
+ failureCode: string | null;
13
+ failureMessage: string | null;
14
+ isStale: boolean;
15
+ }>;
16
+ export type CanonicalRefundPlannerInput = Readonly<{
17
+ refundMethod: CanonicalRefundMethod;
18
+ refundMode: OrderRefundMode;
19
+ requestedAmountCents: NonNegativeCents | undefined;
20
+ remainingRefundableCents: NonNegativeCents;
21
+ refundedSoFarCents: NonNegativeCents;
22
+ requireFullRemainingRefund: boolean;
23
+ acceptableExistingRails: readonly OrderRefundRail[];
24
+ existingByIdempotency: CanonicalRefundSnapshot | null;
25
+ latestPending: CanonicalRefundSnapshot | null;
26
+ }>;
27
+ export type CanonicalRefundPlannerDecision = Readonly<{
28
+ kind: 'existing_succeeded';
29
+ refund: CanonicalRefundSnapshot;
30
+ totalRefundedCents: NonNegativeCents;
31
+ remainingRefundableCents: NonNegativeCents;
32
+ }> | Readonly<{
33
+ kind: 'resume_pending';
34
+ refund: CanonicalRefundSnapshot;
35
+ requestedAmountCents: NonNegativeCents;
36
+ }> | Readonly<{
37
+ kind: 'create_pending';
38
+ requestedAmountCents: NonNegativeCents;
39
+ }> | Readonly<{
40
+ kind: 'failed';
41
+ errorCode: CanonicalRefundPlannerErrorCode;
42
+ errorMessage: string;
43
+ refund: CanonicalRefundSnapshot | null;
44
+ amountCents: NonNegativeCents | null;
45
+ totalRefundedCents: NonNegativeCents;
46
+ remainingRefundableCents: NonNegativeCents;
47
+ }>;
48
+ export declare function planCanonicalRefundRequest(input: CanonicalRefundPlannerInput): CanonicalRefundPlannerDecision;
@@ -0,0 +1,39 @@
1
+ import { type NonEmptyArray, type Result } from '../../../core/src/index';
2
+ export type CheckoutCollectionPlanningError = Readonly<{
3
+ _tag: 'CheckoutCollectionPlanningError';
4
+ code: 'shop_shipping_not_configured';
5
+ message: string;
6
+ }>;
7
+ export type CheckoutCollectionPlan<TCountryCode extends string = string> = Readonly<{
8
+ kind: 'digital_only';
9
+ automaticTaxEnabled: boolean;
10
+ billingAddressCollection: 'auto';
11
+ }> | Readonly<{
12
+ kind: 'requires_shipping';
13
+ automaticTaxEnabled: boolean;
14
+ billingAddressCollection: 'auto';
15
+ allowedShippingCountries: NonEmptyArray<TCountryCode>;
16
+ }>;
17
+ export type CheckoutCollectionItemKind = 'event_ticket' | 'product' | 'pass' | 'course_enrollment' | 'appointment';
18
+ export type CheckoutCollectionProductItem = Readonly<{
19
+ validated: Readonly<{
20
+ type: 'product';
21
+ product: Readonly<{
22
+ requiresShipping: boolean;
23
+ }>;
24
+ }>;
25
+ }>;
26
+ export type CheckoutCollectionNonProductItem = Readonly<{
27
+ validated: Readonly<{
28
+ type: Exclude<CheckoutCollectionItemKind, 'product'>;
29
+ }>;
30
+ }>;
31
+ export type CheckoutCollectionItem = CheckoutCollectionProductItem | CheckoutCollectionNonProductItem;
32
+ export type CheckoutCollectionCart<TItem extends CheckoutCollectionItem = CheckoutCollectionItem> = Readonly<{
33
+ items: readonly TItem[];
34
+ }>;
35
+ export declare function buildCheckoutCollectionPlan<TCountryCode extends string, TItem extends CheckoutCollectionItem>(options: Readonly<{
36
+ settledCart: CheckoutCollectionCart<TItem>;
37
+ automaticTaxEnabled: boolean;
38
+ allowedShippingCountries: readonly TCountryCode[];
39
+ }>): Result<CheckoutCollectionPlan<TCountryCode>, CheckoutCollectionPlanningError>;
@@ -0,0 +1,40 @@
1
+ import type { CheckoutCommitState, CheckoutPaymentRail, OrderCheckoutReconciliationState, OrderItemReconciliationState, OrderItemCommitState, OrderStatus, ReservationFinalizationState } from './orderTypes';
2
+ import type { OrderItemPlanningRecord } from './orderPlanningTypes';
3
+ export type CheckoutCommitOrderRecord = Readonly<{
4
+ status: OrderStatus;
5
+ commitState: CheckoutCommitState;
6
+ reconciliationState: OrderCheckoutReconciliationState;
7
+ }>;
8
+ export type CheckoutCommitOrderItemRecord = Readonly<Pick<OrderItemPlanningRecord, 'kind' | 'commitState' | 'reconciliationState' | 'fulfilledAt' | 'cancelledAt' | 'customerMembershipId'>>;
9
+ export type CheckoutCommitPlanStepKind = 'consume_credit_reservation' | 'provision_memberships' | 'fulfill_order_items' | 'redeem_discount' | 'record_order_payment';
10
+ export type NormalizedOrderCommitItem<TItem extends CheckoutCommitOrderItemRecord = CheckoutCommitOrderItemRecord> = Readonly<{
11
+ item: TItem;
12
+ commitState: OrderItemCommitState;
13
+ reconciliationState: OrderItemReconciliationState;
14
+ }>;
15
+ export type NormalizedOrderCommitSnapshot<TOrder extends CheckoutCommitOrderRecord = CheckoutCommitOrderRecord, TItem extends CheckoutCommitOrderItemRecord = CheckoutCommitOrderItemRecord> = Readonly<{
16
+ order: TOrder;
17
+ commitState: CheckoutCommitState;
18
+ reconciliationState: OrderCheckoutReconciliationState;
19
+ items: readonly NormalizedOrderCommitItem<TItem>[];
20
+ }>;
21
+ export type CheckoutCommitPlanStep = Readonly<{
22
+ kind: CheckoutCommitPlanStepKind;
23
+ }>;
24
+ export type CheckoutCommitPlan<TOrder extends CheckoutCommitOrderRecord = CheckoutCommitOrderRecord, TItem extends CheckoutCommitOrderItemRecord = CheckoutCommitOrderItemRecord> = Readonly<{
25
+ paymentRail: CheckoutPaymentRail;
26
+ normalized: NormalizedOrderCommitSnapshot<TOrder, TItem>;
27
+ steps: readonly CheckoutCommitPlanStep[];
28
+ }>;
29
+ export declare function normalizeOrderCommitSnapshot<TOrder extends CheckoutCommitOrderRecord, TItem extends CheckoutCommitOrderItemRecord>(input: {
30
+ order: TOrder;
31
+ items: readonly TItem[];
32
+ }): NormalizedOrderCommitSnapshot<TOrder, TItem>;
33
+ export declare function buildCheckoutCommitPlan<TOrder extends CheckoutCommitOrderRecord, TItem extends CheckoutCommitOrderItemRecord>(input: {
34
+ paymentRail: CheckoutPaymentRail;
35
+ order: TOrder;
36
+ items: readonly TItem[];
37
+ creditReservationState: ReservationFinalizationState;
38
+ hasDiscountRedemption: boolean;
39
+ paymentRecorded: boolean;
40
+ }): CheckoutCommitPlan<TOrder, TItem>;
@@ -0,0 +1,80 @@
1
+ import type { AppointmentServiceId, EventCategoryId, EventSeriesId, NonNegativeCents, PassId, ProductCategoryId, ProductId } from '../../../core/src/index';
2
+ export type CheckoutDiscountContext = Readonly<{
3
+ type: 'event';
4
+ eventSeriesId: EventSeriesId;
5
+ eventCategoryId: EventCategoryId | null;
6
+ ticketsCount?: number;
7
+ }> | Readonly<{
8
+ type: 'product';
9
+ productId: ProductId;
10
+ productCategoryId: ProductCategoryId | null;
11
+ }> | Readonly<{
12
+ type: 'pass';
13
+ passId: PassId;
14
+ }> | Readonly<{
15
+ type: 'whole_series';
16
+ eventSeriesId: EventSeriesId;
17
+ eventCategoryId: EventCategoryId | null;
18
+ }> | Readonly<{
19
+ type: 'appointment';
20
+ serviceId: AppointmentServiceId;
21
+ }>;
22
+ export type CheckoutDiscountContextSource = Readonly<{
23
+ type: 'event_ticket';
24
+ ticketCount: number;
25
+ eventSeries: Readonly<{
26
+ id: EventSeriesId;
27
+ eventCategoryId: EventCategoryId | null;
28
+ }>;
29
+ }> | Readonly<{
30
+ type: 'product';
31
+ productId: ProductId;
32
+ product: Readonly<{
33
+ productCategoryId: ProductCategoryId | null;
34
+ }>;
35
+ }> | Readonly<{
36
+ type: 'pass';
37
+ passId: PassId;
38
+ }> | Readonly<{
39
+ type: 'whole_series_enrollment';
40
+ eventSeries: Readonly<{
41
+ id: EventSeriesId;
42
+ eventCategoryId: EventCategoryId | null;
43
+ }>;
44
+ }> | Readonly<{
45
+ type: 'appointment';
46
+ serviceId: AppointmentServiceId;
47
+ }>;
48
+ export type CheckoutDiscountContextLineInput<TLineId extends string> = Readonly<{
49
+ lineId: TLineId;
50
+ subtotalCents: number;
51
+ validated: CheckoutDiscountContextSource;
52
+ }>;
53
+ export type CheckoutDiscountContextEntry<TLineId extends string> = Readonly<{
54
+ identityKey: string;
55
+ context: CheckoutDiscountContext;
56
+ subtotalCents: number;
57
+ lineIds: readonly TLineId[];
58
+ }>;
59
+ export type CheckoutAutoDiscountCandidate<TCode, TLineId extends string> = Readonly<{
60
+ code: TCode;
61
+ applicableContexts: readonly CheckoutDiscountContextEntry<TLineId>[];
62
+ }>;
63
+ export type CheckoutAutoDiscountCandidateCode = Readonly<{
64
+ id: string;
65
+ discountType: 'fixed' | 'percent';
66
+ discountPercent?: number | null;
67
+ discountAmountCents?: number | null;
68
+ }>;
69
+ export declare function collectCheckoutDiscountContexts<TLineId extends string>(items: readonly CheckoutDiscountContextLineInput<TLineId>[]): readonly CheckoutDiscountContextEntry<TLineId>[];
70
+ export declare function subtotalForCheckoutDiscountContexts<TLineId extends string>(applicableContexts: readonly CheckoutDiscountContextEntry<TLineId>[]): number;
71
+ export declare function rankCheckoutAutoDiscountCandidates<TCode extends CheckoutAutoDiscountCandidateCode, TLineId extends string>(candidates: readonly CheckoutAutoDiscountCandidate<TCode, TLineId>[]): readonly (CheckoutAutoDiscountCandidate<TCode, TLineId> & Readonly<{
72
+ subtotalCents: number;
73
+ computedDiscountCents: NonNegativeCents;
74
+ }>)[];
75
+ export declare function computeCheckoutDiscountCents(options: Readonly<{
76
+ discountType: 'fixed' | 'percent';
77
+ discountPercent?: number | null;
78
+ discountAmountCents?: NonNegativeCents | null;
79
+ subtotalCents: NonNegativeCents;
80
+ }>): NonNegativeCents;
@@ -0,0 +1 @@
1
+ export type CheckoutErrorCode = "appointment_not_found" | "appointment_slot_unavailable" | "appointment_payment_terms_not_supported" | "booking_payment_terms_not_supported" | "checkout_amount_below_minimum" | "sliding_amount_required" | "sliding_amount_invalid" | "sliding_amount_below_min" | "sliding_amount_above_max" | "not_found" | "site_mismatch" | "registration_disabled" | "invalid_payment_method" | "payment_already_completed" | "invalid_payment_status" | "no_event_association" | "payment_not_required" | "customer_not_found" | "stripe_not_configured" | "stripe_commission_not_supported" | "stripe_tax_not_ready" | "stripe_tax_status_unavailable" | "course_pricing_option_not_available" | "product_not_available" | "product_not_eligible" | "insufficient_credits" | "invalid_discount_code" | "unsupported_discount_scope" | "checkout_in_progress" | "stripe_error" | "internal_error";
@@ -0,0 +1,22 @@
1
+ import type { NonNegativeCents } from '../../../core/src/index';
2
+ import type { PositiveCheckoutQuantity } from './checkoutQuantity';
3
+ import type { LineSettlementBreakdown } from './settlement';
4
+ export type CheckoutOrderItemMoneyInput<TLineId extends string> = Readonly<{
5
+ lineId: TLineId;
6
+ itemIndex: number;
7
+ unitPriceCents: NonNegativeCents;
8
+ quantity: PositiveCheckoutQuantity;
9
+ settlement: LineSettlementBreakdown;
10
+ }>;
11
+ export type CheckoutOrderItemMoneyProjection<TLineId extends string> = Readonly<{
12
+ lineKey: TLineId;
13
+ unitPriceCents: number;
14
+ quantity: number;
15
+ subtotalCents: number;
16
+ discountCents: number;
17
+ creditCents: number;
18
+ netTotalCents: number;
19
+ totalCents: number;
20
+ refundedCents: 0;
21
+ }>;
22
+ export declare function projectCheckoutOrderItemMoney<TLineId extends string>(input: CheckoutOrderItemMoneyInput<TLineId>): CheckoutOrderItemMoneyProjection<TLineId>;
@@ -0,0 +1,50 @@
1
+ import { type NonNegativeCents } from '../../../core/src/index';
2
+ export type CheckoutPaymentFlowPlan = Readonly<{
3
+ kind: 'bypass';
4
+ bypassReason: 'free' | 'discount_free';
5
+ reserveCreditCents: 0;
6
+ }> | Readonly<{
7
+ kind: 'store_credit_only';
8
+ reserveCreditCents: NonNegativeCents;
9
+ }> | Readonly<{
10
+ kind: 'stripe';
11
+ reserveCreditCents: NonNegativeCents;
12
+ }>;
13
+ export type FlexibleBalanceCreditFirstPlan = Readonly<{
14
+ kind: 'credit_only';
15
+ reserveCreditCents: NonNegativeCents;
16
+ cardDueNowCents: NonNegativeCents;
17
+ laterBalanceCents: NonNegativeCents;
18
+ }> | Readonly<{
19
+ kind: 'flexible_balance';
20
+ reserveCreditCents: NonNegativeCents;
21
+ cardDueNowCents: NonNegativeCents;
22
+ laterBalanceCents: NonNegativeCents;
23
+ }> | Readonly<{
24
+ kind: 'card_below_minimum';
25
+ reserveCreditCents: NonNegativeCents;
26
+ cardDueNowCents: NonNegativeCents;
27
+ laterBalanceCents: NonNegativeCents;
28
+ }>;
29
+ export declare function planCheckoutPaymentFlow(options: Readonly<{
30
+ amountDueCents: number;
31
+ discountCents: number;
32
+ availableCreditCents: number;
33
+ creditCurrencyMatches: boolean;
34
+ minimumStripeChargeCents?: number | null;
35
+ }>): CheckoutPaymentFlowPlan;
36
+ /**
37
+ * Apply site credit to a flexible-balance booking before card payment.
38
+ *
39
+ * Credit first reduces the configured payment due now. Once that payment is
40
+ * covered, any remaining credit reduces the later balance. If a partial credit
41
+ * application would leave a positive card charge below Stripe's minimum, less
42
+ * credit is used so the configured payment can still be collected.
43
+ */
44
+ export declare function planFlexibleBalanceCreditFirst(input: Readonly<{
45
+ totalAfterDiscountCents: number;
46
+ configuredPaymentDueNowCents: number;
47
+ availableCreditCents: number;
48
+ creditCurrencyMatches: boolean;
49
+ minimumStripeChargeCents?: number | null;
50
+ }>): FlexibleBalanceCreditFirstPlan;
@@ -0,0 +1,30 @@
1
+ import { type BookingFlexibleBalanceConfig } from '../../../core/src/index';
2
+ export type CheckoutStripeRequiredPaymentObligation<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig> = Readonly<{
3
+ kind: 'stripe';
4
+ }> | Readonly<{
5
+ kind: 'instalment_plan';
6
+ planDefinition: TInstalmentPlan;
7
+ }> | Readonly<{
8
+ kind: 'flexible_balance';
9
+ config: TFlexibleBalanceConfig;
10
+ initialPaymentCents: number;
11
+ bookingStartAt: string;
12
+ dueAt: string;
13
+ }>;
14
+ export type CheckoutStripeRequiredPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig> = Readonly<{
15
+ kind: 'standard';
16
+ }> | Readonly<{
17
+ kind: 'instalment_plan';
18
+ planDefinition: TInstalmentPlan;
19
+ }> | Readonly<{
20
+ kind: 'flexible_balance';
21
+ selection: Readonly<{
22
+ config: TFlexibleBalanceConfig;
23
+ bookingStartAt: string;
24
+ dueAt: string;
25
+ }>;
26
+ }>;
27
+ export declare function planStripeRequiredCheckoutPaymentObligation<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig>(input: Readonly<{
28
+ totalAfterDiscountCents: number;
29
+ paymentTerms?: CheckoutStripeRequiredPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig>;
30
+ }>): CheckoutStripeRequiredPaymentObligation<TInstalmentPlan, TFlexibleBalanceConfig>;
@@ -0,0 +1,10 @@
1
+ import type { BookingFlexibleBalanceConfig } from '../../../core/src/index';
2
+ import type { CheckoutPaymentTermLine, CheckoutPaymentTerms } from './checkoutPaymentTerms';
3
+ import type { CheckoutStripeRequiredPaymentTerms } from './checkoutPaymentPlanPlanning';
4
+ export type AttendeeBookingCheckoutPaymentSelectionSnapshot<TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig> = Readonly<{
5
+ bookingStartAt?: string | null;
6
+ selectedCollectionOptionKind?: 'upfront' | 'deferred_manual' | 'instalment_plan' | 'flexible_balance' | null;
7
+ selectedFlexibleBalanceConfig?: TFlexibleBalanceConfig | null;
8
+ }>;
9
+ export declare function attendeeBookingPaymentSelectionToCheckoutPaymentTermLine<TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig>(selection: AttendeeBookingCheckoutPaymentSelectionSnapshot<TFlexibleBalanceConfig>): CheckoutPaymentTermLine<never, TFlexibleBalanceConfig>;
10
+ export declare function checkoutPaymentTermsToStripeRequiredPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig>(paymentTerms: CheckoutPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig>): CheckoutStripeRequiredPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig>;
@@ -0,0 +1,53 @@
1
+ import { type BookingFlexibleBalanceConfig } from '../../../core/src/index';
2
+ import { type Result } from '../../../core/src/index';
3
+ export type CheckoutPaymentTermCollectionOptionKind = 'upfront' | 'deferred_manual' | 'instalment_plan' | 'flexible_balance';
4
+ export type CheckoutPaymentTermsError = Readonly<{
5
+ _tag: 'instalment_plan_not_supported';
6
+ }> | Readonly<{
7
+ _tag: 'flexible_balance_empty_cart';
8
+ }> | Readonly<{
9
+ _tag: 'flexible_balance_requires_single_item';
10
+ }> | Readonly<{
11
+ _tag: 'flexible_balance_not_supported';
12
+ }>;
13
+ export type CheckoutAppointmentPaymentTermSelection<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig> = Readonly<{
14
+ kind: 'upfront' | 'deferred_manual';
15
+ }> | Readonly<{
16
+ kind: 'instalment_plan';
17
+ plan: TInstalmentPlan;
18
+ }> | Readonly<{
19
+ kind: 'flexible_balance';
20
+ config: TFlexibleBalanceConfig;
21
+ }> | null;
22
+ export type CheckoutAttendeeBookingPaymentTermSelection<TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig> = Readonly<{
23
+ kind: 'upfront' | 'deferred_manual';
24
+ }> | Readonly<{
25
+ kind: 'flexible_balance';
26
+ config: TFlexibleBalanceConfig;
27
+ }> | null;
28
+ export type CheckoutPaymentTermLine<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig> = Readonly<{
29
+ kind: 'appointment';
30
+ bookingStartAt: string;
31
+ selectedCollectionOption: CheckoutAppointmentPaymentTermSelection<TInstalmentPlan, TFlexibleBalanceConfig>;
32
+ }> | Readonly<{
33
+ kind: 'attendee_booking';
34
+ bookingStartAt?: string | null;
35
+ selectedCollectionOption: CheckoutAttendeeBookingPaymentTermSelection<TFlexibleBalanceConfig>;
36
+ }> | Readonly<{
37
+ kind: 'other';
38
+ }>;
39
+ export type CheckoutFlexibleBalanceSelection<TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig> = Readonly<{
40
+ config: TFlexibleBalanceConfig;
41
+ bookingStartAt: string;
42
+ dueAt: string;
43
+ }>;
44
+ export type CheckoutPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig> = Readonly<{
45
+ instalmentPlanDefinition: TInstalmentPlan | null;
46
+ flexibleBalanceSelection: CheckoutFlexibleBalanceSelection<TFlexibleBalanceConfig> | null;
47
+ }>;
48
+ type CheckoutPaymentTermsInput<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig> = Readonly<{
49
+ requestedCollectionOptionKind?: CheckoutPaymentTermCollectionOptionKind;
50
+ items: readonly CheckoutPaymentTermLine<TInstalmentPlan, TFlexibleBalanceConfig>[];
51
+ }>;
52
+ export declare function resolveCheckoutPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig extends BookingFlexibleBalanceConfig = BookingFlexibleBalanceConfig>(input: CheckoutPaymentTermsInput<TInstalmentPlan, TFlexibleBalanceConfig>): Result<CheckoutPaymentTerms<TInstalmentPlan, TFlexibleBalanceConfig>, CheckoutPaymentTermsError>;
53
+ export {};
@@ -0,0 +1,8 @@
1
+ import { type Brand, type Result } from '../../../core/src/index';
2
+ export type PositiveCheckoutQuantity = Brand<number, 'PositiveCheckoutQuantity'>;
3
+ export type PositiveCheckoutQuantityParseError = Readonly<{
4
+ kind: 'not_positive_whole_quantity';
5
+ quantity: number;
6
+ }>;
7
+ export declare function parsePositiveCheckoutQuantity(quantity: number): Result<PositiveCheckoutQuantity, PositiveCheckoutQuantityParseError>;
8
+ export declare function unsafeAsPositiveCheckoutQuantity(quantity: number): PositiveCheckoutQuantity;
@@ -0,0 +1,76 @@
1
+ import { z } from 'zod';
2
+ export declare const DatedOfferingSharedEngineMetadataSchema: z.ZodObject<{
3
+ datedOfferingEngineContractVersion: z.ZodLiteral<"shared_v1">;
4
+ datedOfferingEngineRouteKind: z.ZodLiteral<"shared_whole_series_registration">;
5
+ datedOfferingCapacityHoldId: z.ZodString;
6
+ datedOfferingCapacityHoldAuditRef: z.ZodString;
7
+ customerId: z.ZodString;
8
+ eventSeriesId: z.ZodString;
9
+ }, z.core.$strip>;
10
+ export declare const OrderCheckoutSessionMetadataSchema: z.ZodUnion<readonly [z.ZodObject<{
11
+ datedOfferingEngineContractVersion: z.ZodLiteral<"shared_v1">;
12
+ datedOfferingEngineRouteKind: z.ZodLiteral<"shared_whole_series_registration">;
13
+ datedOfferingCapacityHoldId: z.ZodString;
14
+ datedOfferingCapacityHoldAuditRef: z.ZodString;
15
+ customerId: z.ZodString;
16
+ eventSeriesId: z.ZodString;
17
+ type: z.ZodLiteral<"order">;
18
+ site_id: z.ZodString;
19
+ order_id: z.ZodOptional<z.ZodString>;
20
+ customer_email: z.ZodString;
21
+ customer_name: z.ZodOptional<z.ZodString>;
22
+ product_id: z.ZodOptional<z.ZodString>;
23
+ attendee_id: z.ZodOptional<z.ZodString>;
24
+ occurrence_id: z.ZodOptional<z.ZodString>;
25
+ tickets_count: z.ZodOptional<z.ZodString>;
26
+ notes: z.ZodOptional<z.ZodString>;
27
+ discount_redemption_id: z.ZodOptional<z.ZodString>;
28
+ discount_code_id: z.ZodOptional<z.ZodString>;
29
+ discount_code: z.ZodOptional<z.ZodString>;
30
+ discount_public_label: z.ZodOptional<z.ZodString>;
31
+ credit_reservation_id: z.ZodOptional<z.ZodString>;
32
+ credit_reserved_cents: z.ZodOptional<z.ZodString>;
33
+ discount_code_amount_cents: z.ZodOptional<z.ZodString>;
34
+ order_payment_reason: z.ZodOptional<z.ZodEnum<{
35
+ flexible_balance_paydown: "flexible_balance_paydown";
36
+ instalment_payoff: "instalment_payoff";
37
+ flexible_balance_initial: "flexible_balance_initial";
38
+ }>>;
39
+ order_payment_plan_id: z.ZodOptional<z.ZodString>;
40
+ order_flexible_balance_contract_id: z.ZodOptional<z.ZodString>;
41
+ }, z.core.$strip>, z.ZodObject<{
42
+ datedOfferingEngineContractVersion: z.ZodOptional<z.ZodNever>;
43
+ datedOfferingEngineRouteKind: z.ZodOptional<z.ZodNever>;
44
+ datedOfferingCapacityHoldId: z.ZodOptional<z.ZodNever>;
45
+ datedOfferingCapacityHoldAuditRef: z.ZodOptional<z.ZodNever>;
46
+ customerId: z.ZodOptional<z.ZodNever>;
47
+ eventSeriesId: z.ZodOptional<z.ZodNever>;
48
+ type: z.ZodLiteral<"order">;
49
+ site_id: z.ZodString;
50
+ order_id: z.ZodOptional<z.ZodString>;
51
+ customer_email: z.ZodString;
52
+ customer_name: z.ZodOptional<z.ZodString>;
53
+ product_id: z.ZodOptional<z.ZodString>;
54
+ attendee_id: z.ZodOptional<z.ZodString>;
55
+ occurrence_id: z.ZodOptional<z.ZodString>;
56
+ tickets_count: z.ZodOptional<z.ZodString>;
57
+ notes: z.ZodOptional<z.ZodString>;
58
+ discount_redemption_id: z.ZodOptional<z.ZodString>;
59
+ discount_code_id: z.ZodOptional<z.ZodString>;
60
+ discount_code: z.ZodOptional<z.ZodString>;
61
+ discount_public_label: z.ZodOptional<z.ZodString>;
62
+ credit_reservation_id: z.ZodOptional<z.ZodString>;
63
+ credit_reserved_cents: z.ZodOptional<z.ZodString>;
64
+ discount_code_amount_cents: z.ZodOptional<z.ZodString>;
65
+ order_payment_reason: z.ZodOptional<z.ZodEnum<{
66
+ flexible_balance_paydown: "flexible_balance_paydown";
67
+ instalment_payoff: "instalment_payoff";
68
+ flexible_balance_initial: "flexible_balance_initial";
69
+ }>>;
70
+ order_payment_plan_id: z.ZodOptional<z.ZodString>;
71
+ order_flexible_balance_contract_id: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$strip>]>;
73
+ export type OrderCheckoutSessionMetadata = z.infer<typeof OrderCheckoutSessionMetadataSchema>;
74
+ export type OrderCheckoutSessionMetadataWithOrderId = OrderCheckoutSessionMetadata & Readonly<{
75
+ order_id: string;
76
+ }>;
@@ -0,0 +1,46 @@
1
+ import { type NonNegativeCents, type Result } from '../../../core/src/index';
2
+ import { type CurrencyCode, type LineSettlementBreakdown, type LineSettlementMoneyField } from './settlement';
3
+ export type CheckoutSettlementMoneyField = LineSettlementMoneyField | 'totalAfterDiscountCents';
4
+ export type CheckoutSettlementError<TLineId extends string = string> = Readonly<{
5
+ _tag: 'empty_cart';
6
+ message: string;
7
+ }> | Readonly<{
8
+ _tag: 'invalid_credit_requested';
9
+ message: string;
10
+ }> | Readonly<{
11
+ _tag: 'invalid_line_money';
12
+ lineId: TLineId;
13
+ field: CheckoutSettlementMoneyField;
14
+ message: string;
15
+ }> | Readonly<{
16
+ _tag: 'inconsistent_line_totals';
17
+ lineId: TLineId;
18
+ message: string;
19
+ }>;
20
+ export type CheckoutSettlementLineInput<TLineId extends string, TPayload> = Readonly<{
21
+ lineId: TLineId;
22
+ subtotalCents: NonNegativeCents;
23
+ discountCents: NonNegativeCents;
24
+ totalAfterDiscountCents: NonNegativeCents;
25
+ payload: TPayload;
26
+ }>;
27
+ export type CheckoutSettlementInput<TLineId extends string, TPayload> = Readonly<{
28
+ currency: CurrencyCode;
29
+ creditRequestedCents: NonNegativeCents;
30
+ items: readonly CheckoutSettlementLineInput<TLineId, TPayload>[];
31
+ }>;
32
+ export type CheckoutSettlementLine<TLineId extends string, TPayload> = Readonly<{
33
+ lineId: TLineId;
34
+ payload: TPayload;
35
+ settlement: LineSettlementBreakdown;
36
+ }>;
37
+ export type CheckoutSettlement<TLineId extends string, TPayload> = Readonly<{
38
+ currency: CurrencyCode;
39
+ items: readonly CheckoutSettlementLine<TLineId, TPayload>[];
40
+ subtotalCents: NonNegativeCents;
41
+ discountCents: NonNegativeCents;
42
+ totalAfterDiscountCents: NonNegativeCents;
43
+ creditCents: NonNegativeCents;
44
+ totalAfterCreditsCents: NonNegativeCents;
45
+ }>;
46
+ export declare function settleCheckoutCart<TLineId extends string, TPayload>(input: CheckoutSettlementInput<TLineId, TPayload>): Result<CheckoutSettlement<TLineId, TPayload>, CheckoutSettlementError<TLineId>>;
@@ -0,0 +1,12 @@
1
+ export type CheckoutStripeFinalizationPaymentPlanKind = 'stripe' | 'instalment_plan' | 'flexible_balance';
2
+ export type CheckoutStripeSessionRecordUpdateTarget = 'order' | 'order_payment_plan' | 'flexible_balance_contract';
3
+ export type CheckoutStripeSessionRecordUpdatePlan = Readonly<{
4
+ target: CheckoutStripeSessionRecordUpdateTarget;
5
+ orderId: string;
6
+ sessionId: string;
7
+ }>;
8
+ export declare function planCheckoutStripeSessionRecordUpdates(options: Readonly<{
9
+ paymentPlanKind: CheckoutStripeFinalizationPaymentPlanKind;
10
+ orderId: string;
11
+ sessionId: string;
12
+ }>): readonly CheckoutStripeSessionRecordUpdatePlan[];