@riverbankcms/sdk 0.139.0 → 0.140.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 (196) hide show
  1. package/README.md +1 -1
  2. package/dist/{PreviewEditorSidebar-BDeenhi3.mjs → PreviewEditorSidebar-CUyTzd5z.mjs} +4 -4
  3. package/dist/{PreviewEditorUI-DSRhgjF5.mjs → PreviewEditorUI-Agkw4v5i.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-D2K8GLUG.mjs → PreviewQueryProvider-CN0ewic5.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-CL7wSnYu.mjs → SdkPreviewModeRuntime-DdbeAdS8.mjs} +22 -8
  6. package/dist/{SiteChromeCustomizeContext-BhDn-5ir.mjs → SiteChromeCustomizeContext-CqGOz-Kv.mjs} +2053 -1110
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +165 -165
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +212 -212
  9. package/dist/_dts/api/src/accessAdmin.d.ts +74 -104
  10. package/dist/_dts/api/src/aiEndpoints.d.ts +5 -1
  11. package/dist/_dts/api/src/authSubmission.d.ts +46 -0
  12. package/dist/_dts/api/src/billing.d.ts +8 -4
  13. package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +23 -0
  14. package/dist/_dts/api/src/billingEndpointTypes.d.ts +26 -0
  15. package/dist/_dts/api/src/blocks.d.ts +2 -0
  16. package/dist/_dts/api/src/bookingRecords.d.ts +1 -2
  17. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +8 -1
  18. package/dist/_dts/api/src/communications.d.ts +0 -1
  19. package/dist/_dts/api/src/contentRuntime.d.ts +8 -3
  20. package/dist/_dts/api/src/endpoints.d.ts +93 -64
  21. package/dist/_dts/api/src/event-destination-policy.d.ts +2 -1
  22. package/dist/_dts/api/src/footerSettings.d.ts +9 -6
  23. package/dist/_dts/api/src/index.d.ts +5 -6
  24. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
  25. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  26. package/dist/_dts/api/src/mailingListIntegration.d.ts +8 -2
  27. package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +1 -1
  28. package/dist/_dts/api/src/navigation/types.d.ts +1 -1
  29. package/dist/_dts/api/src/onboarding/confirmationResend.d.ts +25 -0
  30. package/dist/_dts/api/src/onboarding/surfaceData.d.ts +32 -32
  31. package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +8 -0
  32. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +1 -0
  33. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +11 -3
  34. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +3 -29
  35. package/dist/_dts/api/src/publicOnboardingAttemptEndpointDefinitions.d.ts +65 -0
  36. package/dist/_dts/api/src/saveOutcome.d.ts +20 -0
  37. package/dist/_dts/api/src/sdkContracts.d.ts +3 -22
  38. package/dist/_dts/api/src/sdkPushContracts.d.ts +18 -0
  39. package/dist/_dts/api/src/sdkThemeWire.d.ts +44 -44
  40. package/dist/_dts/api/src/settings/permissions.d.ts +12 -0
  41. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +9 -5
  42. package/dist/_dts/api/src/siteOnboarding.d.ts +2 -9
  43. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +2 -4
  44. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +3 -1
  45. package/dist/_dts/api/src/siteSettings.d.ts +20 -7
  46. package/dist/_dts/api/src/types.d.ts +77 -77
  47. package/dist/_dts/api/src/wholeSeriesRuns.d.ts +2 -37
  48. package/dist/_dts/billing/src/membership/index.d.ts +3 -0
  49. package/dist/_dts/billing/src/plans/types.d.ts +3 -0
  50. package/dist/_dts/billing/src/site-arrangements.d.ts +14 -3
  51. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +16 -4
  52. package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +2 -0
  53. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +5 -0
  54. package/dist/_dts/blocks/src/portal/types.d.ts +2 -4
  55. package/dist/_dts/blocks/src/portal/waitlist-types.d.ts +35 -0
  56. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +2 -0
  57. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +42 -0
  58. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -0
  59. package/dist/_dts/blocks/src/system/data/index.d.ts +2 -2
  60. package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +2 -1
  61. package/dist/_dts/blocks/src/system/data/types.d.ts +9 -0
  62. package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
  63. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +0 -28
  64. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  65. package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +7 -3
  66. package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +1 -1
  67. package/dist/_dts/blocks/src/system/runtime/api/types/waitlist-claims.d.ts +7 -2
  68. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +30 -6
  69. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +15 -3
  70. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +43 -0
  71. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +1 -2
  72. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/TicketSelectionStep.d.ts +2 -0
  73. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/checkoutRecovery.d.ts +14 -0
  74. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventSourceRecovery.d.ts +56 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +6 -8
  76. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useCheckoutRecovery.d.ts +8 -0
  77. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +8 -7
  78. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +10 -2
  79. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventSourceRecovery.d.ts +18 -0
  80. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.client.d.ts +1 -1
  81. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -6
  82. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +4 -2
  83. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +6 -0
  84. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +1 -0
  85. package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +1 -0
  86. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -6
  87. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  88. package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +2 -0
  89. package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
  90. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +27 -4
  91. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +2 -1
  92. package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +3 -1
  93. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +3 -0
  94. package/dist/_dts/core/src/branded.d.ts +0 -8
  95. package/dist/_dts/core/src/index.d.ts +1 -0
  96. package/dist/_dts/core/src/mailing-list-setup-parser.d.ts +1 -1
  97. package/dist/_dts/core/src/mailing-list-setup.d.ts +14 -1
  98. package/dist/_dts/core/src/mailing-list-submission.d.ts +7 -27
  99. package/dist/_dts/core/src/participants.d.ts +2 -29
  100. package/dist/_dts/core/src/public-experience.d.ts +4 -0
  101. package/dist/_dts/core/src/public-profile.d.ts +27 -1
  102. package/dist/_dts/core/src/site-route-target.d.ts +9 -2
  103. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +293 -606
  104. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListGlobalSettingsSummary.d.ts +10 -0
  105. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts +3 -2
  106. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/context.d.ts +3 -2
  107. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +3 -2
  108. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/targetingState.d.ts +19 -0
  109. package/dist/_dts/sdk/src/public-api/contracts.d.ts +14 -20
  110. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -0
  111. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +2 -0
  112. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +7 -1
  113. package/dist/_dts/sdk/src/rendering/helpers/templateContent.d.ts +1 -0
  114. package/dist/_dts/sdk/src/version.d.ts +1 -1
  115. package/dist/_dts/theme-core/src/accordions/types.d.ts +3 -3
  116. package/dist/_dts/theme-core/src/cards/types.d.ts +21 -21
  117. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  118. package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +8 -2
  119. package/dist/_dts/theme-core/src/header/legacyHeaderVariant.d.ts +2 -2
  120. package/dist/_dts/theme-core/src/inputs/types.d.ts +2 -2
  121. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +54 -54
  122. package/dist/_dts/theme-core/src/runtime/buildThemeRuntimeFromBridge.d.ts +1 -4
  123. package/dist/_dts/theme-core/src/schema.d.ts +84 -84
  124. package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +1 -1
  125. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  126. package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +77 -0
  127. package/dist/_dts/theme-core/src/surfaces/index.d.ts +1 -0
  128. package/dist/_dts/theme-core/src/typography/generateTypographyCss.d.ts +2 -2
  129. package/dist/_dts/ui/src/lib/use-delayed-flag.d.ts +9 -0
  130. package/dist/_dts/ui/src/pending-button.d.ts +10 -0
  131. package/dist/client/{BookingConsentAgreement-CZvTDtsK.mjs → BookingConsentAgreement-CuKa82V4.mjs} +4 -4
  132. package/dist/client/{DiscountCodeDisclosure-D-DsLCMU.mjs → DiscountCodeDisclosure-BbYieKWB.mjs} +1 -1
  133. package/dist/client/{EventCombined.client-dWqgd5ZO.mjs → EventCombined.client-LTfR1Aby.mjs} +6 -6
  134. package/dist/client/{EventListing.client-BMRa9IYp.mjs → EventListing.client-DUHpYSuo.mjs} +2 -2
  135. package/dist/client/{LeafletStaticMap-D21W9kBZ.mjs → LeafletStaticMap-CHRupL6m.mjs} +1 -1
  136. package/dist/client/{accordion-FxF_ta47.mjs → accordion-6HiIFxNL.mjs} +1 -1
  137. package/dist/client/{bookingForm-YnwW4TGw.mjs → bookingForm-Dlmid43H.mjs} +7 -7
  138. package/dist/client/bookings.mjs +325 -140
  139. package/dist/client/{carousel-vng7fFT5.mjs → carousel-DmkZRRq_.mjs} +2 -2
  140. package/dist/client/{carousel.client-59G_WMr4.mjs → carousel.client-DQTjCVQT.mjs} +1 -1
  141. package/dist/client/{cart-DEPDsjNk.mjs → cart-CIC24330.mjs} +3 -3
  142. package/dist/client/{checkout-CZRWu9rW.mjs → checkout-D1Zw9imo.mjs} +3 -3
  143. package/dist/client/{checkoutUrls-BuseL0dw.mjs → checkoutUrls-FL6lRkrt.mjs} +1 -1
  144. package/dist/client/client.mjs +1717 -882
  145. package/dist/client/{colorStyles-CrxJrPjJ.mjs → colorStyles-3013aRAY.mjs} +3 -1
  146. package/dist/client/{context-DvU_WUmd.mjs → context-Cy1OayHx.mjs} +6 -19
  147. package/dist/client/{dates-wnPMiRl5.mjs → dates-aDcfoLHr.mjs} +2 -2
  148. package/dist/client/{eventCalendar-BA3Q5L15.mjs → eventCalendar-FQxMPAjf.mjs} +8 -8
  149. package/dist/client/{eventCombined-51wgR-1R.mjs → eventCombined-Dr3ac6Hb.mjs} +3 -3
  150. package/dist/client/{eventDetails-modaetpm.mjs → eventDetails-D-AzUHFQ.mjs} +4 -4
  151. package/dist/client/{eventListing-D8t2J3Kv.mjs → eventListing-B3XxBf3i.mjs} +3 -3
  152. package/dist/client/{eventRegistration-CYqtkCE_.mjs → eventRegistration-I6EaokFD.mjs} +500 -152
  153. package/dist/client/{form-CBKXN5In.mjs → form-BbWckVWY.mjs} +3 -3
  154. package/dist/client/{headerSection-DylDqNrs.mjs → headerSection-C9qU4Y7x.mjs} +2 -2
  155. package/dist/client/hooks.mjs +445 -180
  156. package/dist/client/{locationMap-CvWrG0vZ.mjs → locationMap-CLCShvlG.mjs} +3 -3
  157. package/dist/client/{media-BOHuueS5.mjs → media-DHpfFwd3.mjs} +1 -1
  158. package/dist/client/{newsletterForm-Btwk70zw.mjs → newsletterForm-Briukxzi.mjs} +130 -87
  159. package/dist/client/{pricing-Uzw-GQ6Y.mjs → pricing-Copadu-2.mjs} +1 -1
  160. package/dist/client/{productDetail-JLcUYKnd.mjs → productDetail-oujlRd-r.mjs} +3 -3
  161. package/dist/client/{productList-FM0cbUzj.mjs → productList-BRiIRUcd.mjs} +3 -3
  162. package/dist/client/{propsDecoder-DYzafZb2.mjs → propsDecoder-CB2KS_ko.mjs} +130 -24
  163. package/dist/client/rendering/client.mjs +911 -400
  164. package/dist/client/rendering/islands.mjs +19 -19
  165. package/dist/client/rendering.mjs +1696 -818
  166. package/dist/client/{scrollToBlock-CvXszexS.mjs → scrollToBlock-B1IS1_ua.mjs} +1 -1
  167. package/dist/client/{shop-BIcjvy5a.mjs → shop-Vn6yNFED.mjs} +6 -6
  168. package/dist/client/{shop-commerce-BZQsy7xw.mjs → shop-commerce-BVTqipYp.mjs} +7 -7
  169. package/dist/client/{shop-commerce-store-D5V7XAb5.mjs → shop-commerce-store-BVnJVy7v.mjs} +1 -1
  170. package/dist/client/{shopShared-DowkXevB.mjs → shopShared-COIeK77T.mjs} +4 -4
  171. package/dist/client/{useEventFilters-oMoTw_JE.mjs → useEventFilters-DzIUcS9n.mjs} +7 -7
  172. package/dist/preview-next/before-render.mjs +119 -64
  173. package/dist/preview-next/client/runtime.mjs +4 -4
  174. package/dist/preview-next/keepAlive.mjs +119 -64
  175. package/dist/preview-next/middleware.mjs +119 -64
  176. package/dist/{previewAuthStore-COUyAKaX.mjs → previewAuthStore-Gjb6r6vz.mjs} +119 -64
  177. package/dist/{sdk-runtime-D4k2LSGF.mjs → sdk-runtime-CnCLvZRv.mjs} +2 -2
  178. package/dist/{separator-UGtpag4Z.mjs → separator-DKDRJ1oH.mjs} +1 -1
  179. package/dist/server/components.mjs +787 -323
  180. package/dist/server/config-validation.mjs +328 -79
  181. package/dist/server/config.mjs +332 -83
  182. package/dist/server/data.mjs +441 -180
  183. package/dist/server/index.mjs +126 -66
  184. package/dist/server/next.mjs +1031 -595
  185. package/dist/server/page-converter.mjs +183 -74
  186. package/dist/server/prebuild.mjs +1 -1
  187. package/dist/server/rendering/server.mjs +1068 -592
  188. package/dist/server/rendering.mjs +802 -324
  189. package/dist/server/routing.mjs +506 -214
  190. package/dist/server/server.mjs +468 -244
  191. package/dist/server/theme-bridge.mjs +433 -100
  192. package/dist/server/theme.mjs +8 -2
  193. package/dist/styles/index.css +237 -43
  194. package/package.json +1 -1
  195. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionCompactRow.d.ts +0 -29
  196. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionList.d.ts +0 -13
@@ -30,6 +30,15 @@ export type PrefetchContext = {
30
30
  * }
31
31
  */
32
32
  export type ResolvedBlockData = Record<string, Record<string, unknown>>;
33
+ export type BlockLoaderFailure = Readonly<{
34
+ endpoint: string;
35
+ params: Readonly<Record<string, string>>;
36
+ }>;
37
+ export type BlockLoaderFailures = Record<string, Record<string, BlockLoaderFailure>>;
38
+ export type PrefetchedBlockData = Readonly<{
39
+ resolvedData: ResolvedBlockData;
40
+ loaderFailures: BlockLoaderFailures;
41
+ }>;
33
42
  /**
34
43
  * Generic API client function.
35
44
  * Environment-specific implementations provide this.
@@ -25,6 +25,7 @@ export type SystemBlockComponentProps<TContent = Record<string, unknown>> = {
25
25
  data?: Record<string, unknown>;
26
26
  pathBase?: string;
27
27
  blockId?: string | null;
28
+ contentVersionId?: string | null;
28
29
  blockKind?: string;
29
30
  blockBindings?: Record<string, unknown>;
30
31
  editableRouteMetadataFieldIds?: ResolverContext['editableRouteMetadataFieldIds'];
@@ -105,33 +105,5 @@ export interface BlockApiClient {
105
105
  sendMagicLink(data: Omit<MagicLinkRequest, 'siteId'>): Promise<void>;
106
106
  logout(): Promise<void>;
107
107
  }
108
- /**
109
- * Create a Block API Client
110
- *
111
- * @example
112
- * ```ts
113
- * // Public content only
114
- * const api = createBlockApi({
115
- * baseUrl: 'https://dashboard.example.com/api',
116
- * auth: { type: 'none' },
117
- * siteId: 'site-123',
118
- * });
119
- *
120
- * // SDK with API key
121
- * const api = createBlockApi({
122
- * baseUrl: 'https://dashboard.example.com/api',
123
- * auth: { type: 'api-key', key: 'bld_live_sk_...' },
124
- * siteId: 'site-123',
125
- * });
126
- *
127
- * // Preview mode with bearer token
128
- * const api = createBlockApi({
129
- * baseUrl: 'https://dashboard.example.com/api',
130
- * auth: { type: 'bearer', token: previewToken },
131
- * siteId: 'site-123',
132
- * isPreview: true,
133
- * });
134
- * ```
135
- */
136
108
  export declare function createBlockApi(config: BlockApiConfig): BlockApiClient;
137
109
  export {};
@@ -43,7 +43,7 @@ export { createBlockApi, BlockApiError } from './client';
43
43
  export type { BlockApiClient } from './client';
44
44
  export { BlockApiProvider, useBlockApi, useBlockApiOptional } from './context';
45
45
  export type { BlockApiProviderProps } from './context';
46
- export type { BlockApiConfig, BlockApiAuth, ApiKeyAuth, BearerAuth, NoAuth, ApiResponse, ApiSuccessResponse, ApiErrorResponse, ApiFieldError, FormSubmitRequest, FormSubmitResponse, FormConfigResponse, FormField, BookingSubmitRequest, BookingSubmitResponse, AppointmentBookingStatusRequest, AppointmentBookingStatusResponse, AvailableSlotsRequest, AvailableSlotsResponse, TimeSlot, AvailableDatesRequest, AvailableDatesResponse, BookingService, BookingServicesRequest, BookingServicesResponse, BookingServiceResponse, BookingResource, BookingResourcesRequest, BookingResourcesResponse, PublicEvent, PublicEventsRequest, PublicEventsResponse, EventVenue, AccessRestriction, EventFilterCategory, EventFilterStaffMember, EventFilterVenue, EventFiltersResponse, EventRegisterRequest, EventRegisterResponse, EventCheckoutRequest, EventCheckoutResponse, EventCheckoutReturnRequest, EventCheckoutReturnResponse, PaymentMethod, EligiblePass, EligibleMembership, AvailablePass, AvailableMembership, DiscountContext, DiscountsAvailableRequest, DiscountsAvailableResponse, DiscountApplyLine, DiscountApplyRequest, DiscountApplyRejectedReason, DiscountApplyResponse, ShopCheckoutRequest, ShopCheckoutResponse, ShopDuplicateMembershipWarning, CustomerProfile, CustomerOrder, CustomerOrderFilter, CustomerOrderItem, CustomerOrderInstalmentPlan, CustomerOrderInstalmentPlanStatus, CustomerOrderInstalmentRow, CustomerOrderInstalmentStatus, CustomerOrderPaymentState, CustomerOrderRefund, EnabledModules, PortalMeResponse, PortalMeUpdateRequest, CustomerPass, CustomerPassCreditHistoryEntry, CustomerMembership, EventTicketBreakdownLine, CustomerEventRegistration, PortalEventTicket, CustomerAppointment, AppointmentBookingQuestionsTaskDetail, BookingQuestionsTaskDetail, BookingQuestionsAnswerValue, BookingQuestionsField, BookingQuestionsFieldOption, BookingQuestionsSection, BeforeYouComeTaskSummary, CustomerEventSeriesRegistration, EventGuest, PortalCredit, PortalCreditSummary, PortalCreditTransaction, PortalCreditResponse, PortalOrderCheckoutRequest, PortalOrderCheckoutResponse, PortalDigitalProduct, PortalDigitalProductFile, PortalDigitalProductsResponse, PortalDigitalProductAccessResponse, PortalDigitalProductDownloadUrlResponse, PortalAppointmentBookingQuestionsResponse, PortalCreateAppointmentBookingQuestionsUploadUrlRequest, PortalCreateAppointmentBookingQuestionsUploadUrlResponse, PortalFinalizeAppointmentBookingQuestionsUploadRequest, PortalFinalizeAppointmentBookingQuestionsUploadResponse, PortalUpdateAppointmentBookingQuestionsRequest, PortalUpdateAppointmentBookingQuestionsResponse, PortalEventBookingQuestionsResponse, PortalCreateEventBookingQuestionsUploadUrlRequest, PortalCreateEventBookingQuestionsUploadUrlResponse, PortalFinalizeEventBookingQuestionsUploadRequest, PortalFinalizeEventBookingQuestionsUploadResponse, PortalUpdateEventBookingQuestionsRequest, PortalUpdateEventBookingQuestionsResponse, PortalWholeSeriesBookingQuestionsResponse, PortalCreateWholeSeriesBookingQuestionsUploadUrlRequest, PortalCreateWholeSeriesBookingQuestionsUploadUrlResponse, PortalFinalizeWholeSeriesBookingQuestionsUploadRequest, PortalFinalizeWholeSeriesBookingQuestionsUploadResponse, PortalUpdateWholeSeriesBookingQuestionsRequest, PortalUpdateWholeSeriesBookingQuestionsResponse, UpdateEventGuestsRequest, EventGuestsResponse, PortalCancelWholeSeriesRegistrationRequest, PortalCancelWholeSeriesRegistrationResult, PortalCancelAppointmentRequest, PortalCancelAppointmentResult, PortalCancelEventRegistrationRequest, PortalRefundInfo, PortalCancelEventRegistrationResult, PortalTransferEventRegistrationRequest, PortalTransferEventRegistrationResult, PortalRescheduleAppointmentRequest, PortalRescheduleAppointmentResponse, PortalCancelMembershipAtPeriodEndResult, MagicLinkRequest, } from './types';
46
+ export type { BlockApiConfig, BlockApiAuth, ApiKeyAuth, BearerAuth, NoAuth, ApiResponse, ApiSuccessResponse, ApiErrorResponse, ApiFieldError, FormSubmitRequest, FormSubmitResponse, FormConfigResponse, FormField, BookingSubmitRequest, BookingSubmitResponse, AppointmentBookingStatusRequest, AppointmentBookingStatusResponse, AvailableSlotsRequest, AvailableSlotsResponse, TimeSlot, AvailableDatesRequest, AvailableDatesResponse, BookingService, BookingServicesRequest, BookingServicesResponse, BookingServiceResponse, BookingResource, BookingResourcesRequest, BookingResourcesResponse, PublicEvent, PublicEventsRequest, PublicEventsResponse, EventVenue, AccessRestriction, EventFilterCategory, EventFilterStaffMember, EventFilterVenue, EventFiltersResponse, EventRegisterRequest, EventRegisterResponse, EventCheckoutRequest, EventCheckoutResponse, EventCheckoutReturnRequest, EventCheckoutReturnResponse, PaymentMethod, EligiblePass, EligibleMembership, AvailablePass, AvailableMembership, DiscountContext, DiscountsAvailableRequest, DiscountsAvailableResponse, DiscountApplyLine, DiscountApplyRequest, DiscountApplyRejectedReason, DiscountApplyResponse, ShopCheckoutRequest, ShopCheckoutResponse, ShopDuplicateMembershipWarning, CustomerProfile, CustomerOrder, CustomerOrderFilter, CustomerOrderItem, CustomerOrderInstalmentPlan, CustomerOrderInstalmentPlanStatus, CustomerOrderInstalmentRow, CustomerOrderInstalmentStatus, CustomerOrderPaymentState, CustomerOrderRefund, EnabledModules, PortalMeResponse, PortalMeUpdateRequest, CustomerPass, CustomerPassCreditHistoryEntry, CustomerMembership, EventTicketBreakdownLine, CustomerEventRegistration, CustomerPortalWaitlistEntry, CustomerPortalWaitlistSubject, PortalEventTicket, CustomerAppointment, AppointmentBookingQuestionsTaskDetail, BookingQuestionsTaskDetail, BookingQuestionsAnswerValue, BookingQuestionsField, BookingQuestionsFieldOption, BookingQuestionsSection, BeforeYouComeTaskSummary, CustomerEventSeriesRegistration, EventGuest, PortalCredit, PortalCreditSummary, PortalCreditTransaction, PortalCreditResponse, PortalOrderCheckoutRequest, PortalOrderCheckoutResponse, PortalDigitalProduct, PortalDigitalProductFile, PortalDigitalProductsResponse, PortalDigitalProductAccessResponse, PortalDigitalProductDownloadUrlResponse, PortalAppointmentBookingQuestionsResponse, PortalCreateAppointmentBookingQuestionsUploadUrlRequest, PortalCreateAppointmentBookingQuestionsUploadUrlResponse, PortalFinalizeAppointmentBookingQuestionsUploadRequest, PortalFinalizeAppointmentBookingQuestionsUploadResponse, PortalUpdateAppointmentBookingQuestionsRequest, PortalUpdateAppointmentBookingQuestionsResponse, PortalEventBookingQuestionsResponse, PortalCreateEventBookingQuestionsUploadUrlRequest, PortalCreateEventBookingQuestionsUploadUrlResponse, PortalFinalizeEventBookingQuestionsUploadRequest, PortalFinalizeEventBookingQuestionsUploadResponse, PortalUpdateEventBookingQuestionsRequest, PortalUpdateEventBookingQuestionsResponse, PortalWholeSeriesBookingQuestionsResponse, PortalCreateWholeSeriesBookingQuestionsUploadUrlRequest, PortalCreateWholeSeriesBookingQuestionsUploadUrlResponse, PortalFinalizeWholeSeriesBookingQuestionsUploadRequest, PortalFinalizeWholeSeriesBookingQuestionsUploadResponse, PortalUpdateWholeSeriesBookingQuestionsRequest, PortalUpdateWholeSeriesBookingQuestionsResponse, UpdateEventGuestsRequest, EventGuestsResponse, PortalCancelWholeSeriesRegistrationRequest, PortalCancelWholeSeriesRegistrationResult, PortalCancelAppointmentRequest, PortalCancelAppointmentResult, PortalCancelEventRegistrationRequest, PortalRefundInfo, PortalCancelEventRegistrationResult, PortalTransferEventRegistrationRequest, PortalTransferEventRegistrationResult, PortalRescheduleAppointmentRequest, PortalRescheduleAppointmentResponse, PortalCancelMembershipAtPeriodEndResult, MagicLinkRequest, } from './types';
47
47
  export { discountAvailabilityAllowsManualEntry, discountAvailabilityHasDiscounts, getAutoAppliedDiscountPreview, } from './types';
48
48
  export type { BookingQuestionsDocumentAnswerValue } from '../../../portal/types';
49
49
  export { deriveCreditProductLabels, getCreditProductCreditUnit, getCreditProductTypeLabel, getPortalCreditProductCreditNoun, } from './creditProducts';
@@ -3,16 +3,16 @@
3
3
  *
4
4
  * Part of the block API client type surface; re-exported from `../types`.
5
5
  */
6
- import type { DirectCheckoutCollectionOptionKind } from './core';
7
6
  import type { EventRegistrationOptionsRequest, EventRegistrationOptionsResponse } from '../../../blocks/event-registration';
8
- import type { PublicEvent as _PublicEvent, EventVenue as _EventVenue, AccessRestriction as _AccessRestriction, PublicEventPricingOption as _PublicEventPricingOption, PublicEventPricingOptionAvailability as _PublicEventPricingOptionAvailability } from '../../../blocks/events/shared/types';
7
+ import type { DirectCheckoutCollectionOptionKind } from './core';
9
8
  import type { EventScheduleScope, EventSurfaceScope } from '../../../blocks/events/shared/filtering';
9
+ import type { AccessRestriction as _AccessRestriction, EventVenue as _EventVenue, PublicEvent as _PublicEvent, PublicEventPricingOption as _PublicEventPricingOption, PublicEventPricingOptionAvailability as _PublicEventPricingOptionAvailability, PublicEventLoaderParams } from '../../../blocks/events/shared/types';
10
10
  export type PublicEvent = _PublicEvent;
11
11
  export type EventVenue = _EventVenue;
12
12
  export type AccessRestriction = _AccessRestriction;
13
13
  export type PublicEventPricingOption = _PublicEventPricingOption;
14
14
  export type PublicEventPricingOptionAvailability = _PublicEventPricingOptionAvailability;
15
- export interface PublicEventsRequest {
15
+ export interface PublicEventsRequest extends Omit<PublicEventLoaderParams, 'limit' | 'eventSurface' | 'scheduleScope' | 'detailLevel'> {
16
16
  siteId: string;
17
17
  from?: string;
18
18
  to?: string;
@@ -125,6 +125,7 @@ export interface EventRegisterRequest {
125
125
  /** Product ID for bundle purchases (pass or membership ID to buy) */
126
126
  bundleProductId?: string;
127
127
  claimToken?: string;
128
+ waitlistEntryId?: string;
128
129
  /** Guest details when "collect all attendee details" is enabled */
129
130
  guests?: EventRegisterGuest[];
130
131
  }
@@ -181,6 +182,7 @@ export type EventCheckoutRequest = EventCheckoutRequestCommon & ({
181
182
  kind: 'occurrence';
182
183
  attendeeId: string;
183
184
  };
185
+ registrationCommandId?: string;
184
186
  checkoutType?: EventCheckoutType;
185
187
  productId?: string;
186
188
  } | {
@@ -199,6 +201,7 @@ export type EventCheckoutRequest = EventCheckoutRequestCommon & ({
199
201
  altchaSolution?: string | null;
200
202
  guests?: EventRegisterGuest[];
201
203
  claimToken?: string;
204
+ waitlistEntryId?: string;
202
205
  checkoutAttemptId: string;
203
206
  });
204
207
  export type EventCheckoutResponse = {
@@ -210,6 +213,7 @@ export type EventCheckoutResponse = {
210
213
  } | {
211
214
  scope: 'wholeSeries';
212
215
  registrationId: string;
216
+ checkoutAttemptId: string;
213
217
  checkoutUrl: string | null;
214
218
  sessionId: string | null;
215
219
  bypassed: boolean;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Part of the block API client type surface; re-exported from `../types`.
5
5
  */
6
- export type { AppointmentBookingQuestionsTaskDetail, BookingQuestionsTaskDetail, BookingQuestionsAnswerValue, BookingQuestionsDocumentAnswerValue, BookingQuestionsField, BookingQuestionsFieldOption, BookingQuestionsSection, BeforeYouComeTaskSummary, CustomerProfile, CustomerOrderInstalmentPlan, CustomerOrderInstalmentPlanStatus, CustomerOrderInstalmentRow, CustomerOrderInstalmentStatus, CustomerOrder, CustomerOrderFilter, CustomerOrderItem, CustomerOrderPaymentState, CustomerOrderRefund, CustomerPass, CustomerPassCreditHistoryEntry, CustomerMembership, EventTicketBreakdownLine, CustomerEventRegistration, CustomerEventSeriesRegistration, CustomerAppointment, EnabledModules, EventGuest, PortalCredit, PortalCreditSummary, PortalCreditTransaction, PortalDigitalProduct, PortalDigitalProductFile, } from "../../../../portal/types";
6
+ export type { AppointmentBookingQuestionsTaskDetail, BookingQuestionsTaskDetail, BookingQuestionsAnswerValue, BookingQuestionsDocumentAnswerValue, BookingQuestionsField, BookingQuestionsFieldOption, BookingQuestionsSection, BeforeYouComeTaskSummary, CustomerProfile, CustomerOrderInstalmentPlan, CustomerOrderInstalmentPlanStatus, CustomerOrderInstalmentRow, CustomerOrderInstalmentStatus, CustomerOrder, CustomerOrderFilter, CustomerOrderItem, CustomerOrderPaymentState, CustomerOrderRefund, CustomerPass, CustomerPassCreditHistoryEntry, CustomerMembership, EventTicketBreakdownLine, CustomerEventRegistration, CustomerPortalWaitlistEntry, CustomerPortalWaitlistSubject, CustomerEventSeriesRegistration, CustomerAppointment, EnabledModules, EventGuest, PortalCredit, PortalCreditSummary, PortalCreditTransaction, PortalDigitalProduct, PortalDigitalProductFile, } from "../../../../portal/types";
7
7
  import type { EventGuest as EventGuestType, EventTicketBreakdownLine } from "../../../../portal/types";
8
8
  /**
9
9
  * Full response from GET /api/portal/me including profile and enabled modules
@@ -1,7 +1,12 @@
1
1
  import type { PublicWaitlistClaimResponse, PublicWaitlistClaimSubject } from '../../../../../../commerce/src/index';
2
2
  export type WaitlistClaimSubject = PublicWaitlistClaimSubject;
3
- export interface ResolveWaitlistClaimRequest {
3
+ export type ResolveWaitlistClaimRequest = {
4
4
  siteId: string;
5
5
  claimToken: string;
6
- }
6
+ waitlistEntryId?: never;
7
+ } | {
8
+ siteId: string;
9
+ waitlistEntryId: string;
10
+ claimToken?: never;
11
+ };
7
12
  export type ResolveWaitlistClaimResponse = PublicWaitlistClaimResponse;
@@ -786,6 +786,7 @@ export declare const runtimeBackedBlockClientEntries: {
786
786
  availability: "ready" | "unavailable";
787
787
  className: string | null;
788
788
  buttonLabel: string;
789
+ successMessage: string;
789
790
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
790
791
  privacyNote: string | null;
791
792
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -814,6 +815,7 @@ export declare const runtimeBackedBlockClientEntries: {
814
815
  availability: "ready" | "unavailable";
815
816
  className: string | null;
816
817
  buttonLabel: string;
818
+ successMessage: string;
817
819
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
818
820
  privacyNote: string | null;
819
821
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -836,6 +838,7 @@ export declare const runtimeBackedBlockClientEntries: {
836
838
  availability: "ready" | "unavailable";
837
839
  className: string | null;
838
840
  buttonLabel: string;
841
+ successMessage: string;
839
842
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
840
843
  privacyNote: string | null;
841
844
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -866,6 +869,7 @@ export declare const runtimeBackedBlockClientEntries: {
866
869
  availability: "ready" | "unavailable";
867
870
  className: string | null;
868
871
  buttonLabel: string;
872
+ successMessage: string;
869
873
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
870
874
  privacyNote: string | null;
871
875
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -894,6 +898,7 @@ export declare const runtimeBackedBlockClientEntries: {
894
898
  availability: "ready" | "unavailable";
895
899
  className: string | null;
896
900
  buttonLabel: string;
901
+ successMessage: string;
897
902
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
898
903
  privacyNote: string | null;
899
904
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -916,6 +921,7 @@ export declare const runtimeBackedBlockClientEntries: {
916
921
  availability: "ready" | "unavailable";
917
922
  className: string | null;
918
923
  buttonLabel: string;
924
+ successMessage: string;
919
925
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
920
926
  privacyNote: string | null;
921
927
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -1725,6 +1731,7 @@ export declare const runtimeBackedBlockClientEntries: {
1725
1731
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1726
1732
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1727
1733
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1734
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1728
1735
  className?: string | null;
1729
1736
  buttonText?: string | null;
1730
1737
  maxTickets?: string | null;
@@ -1744,7 +1751,9 @@ export declare const runtimeBackedBlockClientEntries: {
1744
1751
  }> | null;
1745
1752
  }>) => Readonly<{
1746
1753
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1747
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1754
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1755
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1756
+ }>;
1748
1757
  }>;
1749
1758
  contracts: Readonly<{
1750
1759
  source: Readonly<{
@@ -1757,6 +1766,7 @@ export declare const runtimeBackedBlockClientEntries: {
1757
1766
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1758
1767
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1759
1768
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1769
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1760
1770
  className?: string | null;
1761
1771
  buttonText?: string | null;
1762
1772
  maxTickets?: string | null;
@@ -1784,6 +1794,7 @@ export declare const runtimeBackedBlockClientEntries: {
1784
1794
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1785
1795
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1786
1796
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1797
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1787
1798
  className?: string | null;
1788
1799
  buttonText?: string | null;
1789
1800
  maxTickets?: string | null;
@@ -1806,11 +1817,15 @@ export declare const runtimeBackedBlockClientEntries: {
1806
1817
  render: Readonly<{
1807
1818
  encode: (value: Readonly<{
1808
1819
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1809
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1820
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1821
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1822
+ }>;
1810
1823
  }>) => unknown;
1811
1824
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
1812
1825
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1813
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1826
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1827
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1828
+ }>;
1814
1829
  }>>;
1815
1830
  }>;
1816
1831
  }>;
@@ -1829,6 +1844,7 @@ export declare const runtimeBackedBlockClientEntries: {
1829
1844
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1830
1845
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1831
1846
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1847
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1832
1848
  className?: string | null;
1833
1849
  buttonText?: string | null;
1834
1850
  maxTickets?: string | null;
@@ -1848,7 +1864,9 @@ export declare const runtimeBackedBlockClientEntries: {
1848
1864
  }> | null;
1849
1865
  }>) => Readonly<{
1850
1866
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1851
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1867
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1868
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1869
+ }>;
1852
1870
  }>;
1853
1871
  contracts: Readonly<{
1854
1872
  source: Readonly<{
@@ -1861,6 +1879,7 @@ export declare const runtimeBackedBlockClientEntries: {
1861
1879
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1862
1880
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1863
1881
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1882
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1864
1883
  className?: string | null;
1865
1884
  buttonText?: string | null;
1866
1885
  maxTickets?: string | null;
@@ -1888,6 +1907,7 @@ export declare const runtimeBackedBlockClientEntries: {
1888
1907
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
1889
1908
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
1890
1909
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
1910
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
1891
1911
  className?: string | null;
1892
1912
  buttonText?: string | null;
1893
1913
  maxTickets?: string | null;
@@ -1910,11 +1930,15 @@ export declare const runtimeBackedBlockClientEntries: {
1910
1930
  render: Readonly<{
1911
1931
  encode: (value: Readonly<{
1912
1932
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1913
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1933
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1934
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1935
+ }>;
1914
1936
  }>) => unknown;
1915
1937
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
1916
1938
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
1917
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
1939
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
1940
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
1941
+ }>;
1918
1942
  }>>;
1919
1943
  }>;
1920
1944
  }>;
@@ -399,6 +399,7 @@ export declare const runtimeBackedBlockServerEntries: {
399
399
  availability: "ready" | "unavailable";
400
400
  className: string | null;
401
401
  buttonLabel: string;
402
+ successMessage: string;
402
403
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
403
404
  privacyNote: string | null;
404
405
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -427,6 +428,7 @@ export declare const runtimeBackedBlockServerEntries: {
427
428
  availability: "ready" | "unavailable";
428
429
  className: string | null;
429
430
  buttonLabel: string;
431
+ successMessage: string;
430
432
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
431
433
  privacyNote: string | null;
432
434
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -449,6 +451,7 @@ export declare const runtimeBackedBlockServerEntries: {
449
451
  availability: "ready" | "unavailable";
450
452
  className: string | null;
451
453
  buttonLabel: string;
454
+ successMessage: string;
452
455
  buttonVariant: import("../nodes/newsletter-form.types").NewsletterButtonVariant;
453
456
  privacyNote: string | null;
454
457
  fields: readonly import("../nodes/newsletter-form.types").NewsletterFieldDef[];
@@ -867,6 +870,7 @@ export declare const runtimeBackedBlockServerEntries: {
867
870
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
868
871
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
869
872
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
873
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
870
874
  className?: string | null;
871
875
  buttonText?: string | null;
872
876
  maxTickets?: string | null;
@@ -886,7 +890,9 @@ export declare const runtimeBackedBlockServerEntries: {
886
890
  }> | null;
887
891
  }>) => Readonly<{
888
892
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
889
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
893
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
894
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
895
+ }>;
890
896
  }>;
891
897
  contracts: Readonly<{
892
898
  source: Readonly<{
@@ -899,6 +905,7 @@ export declare const runtimeBackedBlockServerEntries: {
899
905
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
900
906
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
901
907
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
908
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
902
909
  className?: string | null;
903
910
  buttonText?: string | null;
904
911
  maxTickets?: string | null;
@@ -926,6 +933,7 @@ export declare const runtimeBackedBlockServerEntries: {
926
933
  subject?: import("../nodes/event-registration/eventScope").EventRegistrationPageSurfaceSubject | null;
927
934
  events?: import("../../../../../api/src/index").PublicEvent[] | null;
928
935
  wholeSeriesRunEvents?: import("../../../../../api/src/index").PublicEvent[] | null;
936
+ eventLoaderFailures?: Readonly<Record<string, unknown>> | null;
929
937
  className?: string | null;
930
938
  buttonText?: string | null;
931
939
  maxTickets?: string | null;
@@ -948,11 +956,15 @@ export declare const runtimeBackedBlockServerEntries: {
948
956
  render: Readonly<{
949
957
  encode: (value: Readonly<{
950
958
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
951
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
959
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
960
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
961
+ }>;
952
962
  }>) => unknown;
953
963
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
954
964
  display: import("../nodes/event-registration.interactive").EventRegistrationDisplay;
955
- hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
965
+ hydration: Readonly<Omit<import("../nodes/event-registration").EventRegistrationClientProps, "siteId" | "stage" | "className" | "events" | "buttonText"> & {
966
+ eventSource: import("../nodes/event-registration/eventSourceRecovery").EventRegistrationEventSource;
967
+ }>;
956
968
  }>>;
957
969
  }>;
958
970
  }>;
@@ -16,6 +16,48 @@ declare const publicLocationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
16
16
  }, z.core.$strip>>;
17
17
  }, z.core.$strip>], "mode">;
18
18
  type PublicAppointmentLocation = z.infer<typeof publicLocationSchema>;
19
+ declare const publicAppointmentServiceSchema: z.ZodObject<{
20
+ id: z.ZodString;
21
+ title: z.ZodString;
22
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
23
+ durationMinutes: z.ZodNumber;
24
+ pricing: z.ZodOptional<z.ZodObject<{
25
+ pricingStrategy: z.ZodEnum<{
26
+ free: "free";
27
+ single: "single";
28
+ tiered: "tiered";
29
+ sliding_scale: "sliding_scale";
30
+ }>;
31
+ currency: z.ZodString;
32
+ singlePriceAmount: z.ZodNullable<z.ZodNumber>;
33
+ slidingMinAmount: z.ZodNullable<z.ZodNumber>;
34
+ slidingMaxAmount: z.ZodNullable<z.ZodNumber>;
35
+ options: z.ZodReadonly<z.ZodArray<z.ZodObject<{
36
+ priceAmount: z.ZodNumber;
37
+ isActive: z.ZodBoolean;
38
+ saleStartsAt: z.ZodNullable<z.ZodString>;
39
+ saleEndsAt: z.ZodNullable<z.ZodString>;
40
+ }, z.core.$strip>>>;
41
+ }, z.core.$strip>>;
42
+ priceAmount: z.ZodNullable<z.ZodNumber>;
43
+ priceCurrency: z.ZodNullable<z.ZodString>;
44
+ location: z.ZodDiscriminatedUnion<[z.ZodObject<{
45
+ mode: z.ZodLiteral<"online">;
46
+ }, z.core.$strip>, z.ZodObject<{
47
+ mode: z.ZodLiteral<"in_person">;
48
+ venue: z.ZodNullable<z.ZodObject<{
49
+ name: z.ZodString;
50
+ area: z.ZodNullable<z.ZodString>;
51
+ }, z.core.$strip>>;
52
+ }, z.core.$strip>, z.ZodObject<{
53
+ mode: z.ZodLiteral<"either">;
54
+ venue: z.ZodNullable<z.ZodObject<{
55
+ name: z.ZodString;
56
+ area: z.ZodNullable<z.ZodString>;
57
+ }, z.core.$strip>>;
58
+ }, z.core.$strip>], "mode">;
59
+ }, z.core.$strip>;
60
+ type PublicAppointmentService = z.infer<typeof publicAppointmentServiceSchema>;
19
61
  export type AppointmentServiceRow = Readonly<{
20
62
  id: string;
21
63
  title: string;
@@ -43,6 +85,7 @@ export type AppointmentServicesNodeProps = Readonly<{
43
85
  }>;
44
86
  export declare function formatAppointmentDuration(durationMinutes: number): string;
45
87
  export declare function formatAppointmentLocation(location: PublicAppointmentLocation): string | null;
88
+ export declare function formatAppointmentPrice(service: PublicAppointmentService): string | null;
46
89
  export declare function buildAppointmentServicesView(input: Readonly<{
47
90
  services: unknown;
48
91
  pathname: string | undefined;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import type { UseEventRegistrationWizardResult } from './useEventRegistrationWizard';
3
2
  export type EventPortalAuthCopy = Readonly<{
4
3
  title: string;
@@ -21,4 +20,4 @@ export declare function EventRegistrationSurface(props: Readonly<{
21
20
  buttonClass: string;
22
21
  supportEmail?: string;
23
22
  successMessage: string;
24
- }>): React.JSX.Element;
23
+ }>): import("react").JSX.Element;
@@ -10,6 +10,8 @@ type TicketSelectionStepProps = {
10
10
  occurrenceContext?: OccurrenceContext | null;
11
11
  selectedAttendanceMode?: RegistrationAttendanceMode | null;
12
12
  onAttendanceModeChange?: (attendanceMode: RegistrationAttendanceMode) => void;
13
+ checkoutRecovery?: boolean;
14
+ onCheckoutRecovery?: () => void;
13
15
  ticketsCount: number;
14
16
  maxTickets: number;
15
17
  visibleTicketTypes?: ReturnType<typeof getVisibleTicketTypes>;
@@ -0,0 +1,14 @@
1
+ import type { PublicEventPricingOptionAvailability } from '../../../../../../core/src/index';
2
+ import type { EligibilityData, RegistrationEvent } from './types';
3
+ /** Recovery may select held places; checkout still owns admission and payment validation. */
4
+ export declare function checkoutRecoveryOptionAvailability(availability: PublicEventPricingOptionAvailability): PublicEventPricingOptionAvailability;
5
+ /**
6
+ * A form-only projection for the explicit existing-checkout path. It permits
7
+ * collecting the original selection without claiming a new place is available.
8
+ * The public checkout service identifies the customer and remains the admission
9
+ * authority; no reservation/customer data is exposed through this projection.
10
+ */
11
+ export declare function getCheckoutRecoveryFormEligibility(eligibility: EligibilityData | null): EligibilityData | null;
12
+ export declare function isSoldOutEventSelectable(event: RegistrationEvent, waitlistAvailable: boolean): boolean;
13
+ export declare function canJoinWaitlistOutsideRecovery(event: RegistrationEvent | null, attendanceMode: 'in_person' | 'online' | null, checkoutRecovery: boolean): boolean;
14
+ export declare function canRecoverEventCheckout(event: RegistrationEvent | null): boolean;
@@ -0,0 +1,56 @@
1
+ import { z } from 'zod';
2
+ import type { PublicEvent } from '../../../blocks/events/shared/types';
3
+ import type { PublicEventsRequest } from '../../api/types/events';
4
+ export declare const eventRecoveryRequestSchema: z.ZodObject<{
5
+ limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
6
+ eventSurface: z.ZodOptional<z.ZodEnum<{
7
+ custom: "custom";
8
+ all: "all";
9
+ regularClassSchedule: "regularClassSchedule";
10
+ specialDatedEvents: "specialDatedEvents";
11
+ }>>;
12
+ scheduleScope: z.ZodOptional<z.ZodEnum<{
13
+ any: "any";
14
+ recurring: "recurring";
15
+ oneOff: "oneOff";
16
+ }>>;
17
+ detailLevel: z.ZodOptional<z.ZodEnum<{
18
+ full: "full";
19
+ listing: "listing";
20
+ }>>;
21
+ stage: z.ZodOptional<z.ZodEnum<{
22
+ published: "published";
23
+ preview: "preview";
24
+ }>>;
25
+ from: z.ZodOptional<z.ZodString>;
26
+ to: z.ZodOptional<z.ZodString>;
27
+ afterStartsAt: z.ZodOptional<z.ZodString>;
28
+ afterId: z.ZodOptional<z.ZodString>;
29
+ categoryIds: z.ZodOptional<z.ZodString>;
30
+ venueId: z.ZodOptional<z.ZodString>;
31
+ staffMemberId: z.ZodOptional<z.ZodString>;
32
+ eventPresets: z.ZodOptional<z.ZodString>;
33
+ seriesId: z.ZodOptional<z.ZodString>;
34
+ seriesIds: z.ZodOptional<z.ZodString>;
35
+ runSeriesId: z.ZodOptional<z.ZodString>;
36
+ seriesSlug: z.ZodOptional<z.ZodString>;
37
+ includeOccurrenceId: z.ZodOptional<z.ZodString>;
38
+ readIntent: z.ZodOptional<z.ZodString>;
39
+ readProfile: z.ZodOptional<z.ZodString>;
40
+ }, z.core.$strip>;
41
+ export type EventRecoveryRequest = Omit<PublicEventsRequest, 'siteId'>;
42
+ export type EventRegistrationEventSource = Readonly<{
43
+ kind: 'loaded';
44
+ events: PublicEvent[];
45
+ }> | Readonly<{
46
+ kind: 'unresolved';
47
+ request: EventRecoveryRequest | null;
48
+ }>;
49
+ type EventSourceInput = Readonly<{
50
+ events?: PublicEvent[] | null;
51
+ wholeSeriesRunEvents?: PublicEvent[] | null;
52
+ failures?: Readonly<Record<string, unknown>> | null;
53
+ }>;
54
+ export declare function resolveEventRegistrationEventSource(input: EventSourceInput): EventRegistrationEventSource;
55
+ export declare function parseEventLoaderRecoveryRequest(value: unknown): EventRecoveryRequest | null;
56
+ export {};
@@ -1,15 +1,13 @@
1
1
  import type { PublicEventPricing } from '../../../../../../core/src/index';
2
- import type { EventRegistrationPricingOption } from '../../../blocks/event-registration';
3
- import type { PublicEvent, PublicEventPricingOption, PublicEventPricingOptionAvailability } from '../../../blocks/events/shared/types';
2
+ import type { EventRegistrationAvailablePaymentOption, EventRegistrationOptionsResponse, EventRegistrationPricingOption } from '../../../blocks/event-registration';
4
3
  import type { OccurrenceContext } from '../../../blocks/event-registration.shared';
5
- import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../../blocks/shop.shared';
6
- import type { PublicRunSession } from '../../../blocks/events/shared/types';
7
- import type { AvailablePass, AvailableMembership, DirectCheckoutCollectionOptionKind, EventTicketLineSummary } from '../../api/types';
4
+ import type { PublicEvent, PublicEventPricingOption, PublicEventPricingOptionAvailability, PublicRunSession } from '../../../blocks/events/shared/types';
8
5
  import type { BlockBookingPaymentTerms } from '../../../blocks/shared/bookingPaymentTerms';
9
- import type { EventRegistrationPageSurfaceSubject } from './eventScope';
6
+ import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../../blocks/shop.shared';
10
7
  import type { BlockButtonRole } from '../../../constants/buttonRoles';
11
- import type { EventRegistrationAvailablePaymentOption, EventRegistrationOptionsResponse } from '../../../blocks/event-registration';
12
- export type { PublicEvent, OccurrenceContext };
8
+ import type { AvailableMembership, AvailablePass, DirectCheckoutCollectionOptionKind, EventTicketLineSummary } from '../../api/types';
9
+ import type { EventRegistrationPageSurfaceSubject } from './eventScope';
10
+ export type { OccurrenceContext, PublicEvent };
13
11
  export type { FormData } from '../../shared';
14
12
  /**
15
13
  * Guest details for additional attendees (when "collect all attendee details" is enabled)
@@ -0,0 +1,8 @@
1
+ import type { EligibilityData, RegistrationEvent, RegistrationStep } from './types';
2
+ /** Recovery belongs to the selected booking subject; changing events resets its scope. */
3
+ export declare function useCheckoutRecovery(event: RegistrationEvent | null, setStep: (step: RegistrationStep) => void): {
4
+ checkoutRecovery: boolean;
5
+ startCheckoutRecovery: () => void;
6
+ };
7
+ /** Authenticated pending bookings enter the same form-only recovery path as guests. */
8
+ export declare function useCheckoutRecoveryEligibility(eligibility: EligibilityData | null, step: RegistrationStep, checkoutRecovery: boolean, startCheckoutRecovery: () => void): EligibilityData | null;
@@ -1,10 +1,9 @@
1
- import type { BlockApiClient } from '../../api';
2
1
  import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
3
- import { savePendingRegistration } from './sessionStorage';
4
- import type { EventTicketSelectionLine, FormData, Guest, RegistrationResult, RegistrationStep, PaymentSelection } from './types';
5
- import type { PaymentMethod } from '../../api/types';
6
- import type { EventRegistrationStatusReference } from '../../api/types';
2
+ import type { BlockApiClient } from '../../api';
3
+ import type { EventRegistrationStatusReference, PaymentMethod } from '../../api/types';
7
4
  import type { RegistrationTarget } from './registrationDerivations';
5
+ import { savePendingRegistration } from './sessionStorage';
6
+ import type { EventTicketSelectionLine, FormData, Guest, PaymentSelection, RegistrationResult, RegistrationStep } from './types';
8
7
  export type EventRegistrationSubmitOptions = Readonly<{
9
8
  redirect?: 'auto' | 'manual';
10
9
  }>;
@@ -24,6 +23,7 @@ export type EventRegistrationSubmitResult = Readonly<{
24
23
  reason: 'blocked' | 'missing-target' | 'submission-failed';
25
24
  message: string;
26
25
  }>;
26
+ export type EventRegistrationSubmit = (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
27
27
  export type UseEventRegistrationSubmitInput = {
28
28
  api: BlockApiClient;
29
29
  registrationTarget: RegistrationTarget | null;
@@ -36,6 +36,7 @@ export type UseEventRegistrationSubmitInput = {
36
36
  guests: Guest[];
37
37
  discountCode: string;
38
38
  claimToken: string | null;
39
+ waitlistEntryId?: string | null;
39
40
  setPendingRegistrationReference: (reference: EventRegistrationStatusReference) => void;
40
41
  setStep: (step: RegistrationStep) => void;
41
42
  setErrorAction?: (action: EventRegistrationErrorAction) => void;
@@ -55,6 +56,6 @@ type ClientCommandIdCryptoSource = Readonly<{
55
56
  getRandomValues: (bytes: Uint8Array<ArrayBuffer>) => Uint8Array<ArrayBuffer>;
56
57
  }>;
57
58
  export declare function createClientCommandId(cryptoSource?: ClientCommandIdCryptoSource): string;
58
- export declare function useEventRegistrationSubmit(options: UseEventRegistrationSubmitInput): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
59
- export declare function useEventRegistrationSubmitWithDeps(options: UseEventRegistrationSubmitInput, deps: EventRegistrationSubmitDeps): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
59
+ export declare function useEventRegistrationSubmit(options: UseEventRegistrationSubmitInput): EventRegistrationSubmit;
60
+ export declare function useEventRegistrationSubmitWithDeps(options: UseEventRegistrationSubmitInput, deps: EventRegistrationSubmitDeps): EventRegistrationSubmit;
60
61
  export {};