@riverbankcms/sdk 0.60.1 → 0.60.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/_dts/api/src/bookingRecords.d.ts +7 -0
  2. package/dist/_dts/api/src/communications.d.ts +1 -0
  3. package/dist/_dts/api/src/contentRuntime.d.ts +8 -0
  4. package/dist/_dts/api/src/endpoints.d.ts +17 -0
  5. package/dist/_dts/api/src/index.d.ts +1 -1
  6. package/dist/_dts/api/src/media.d.ts +1 -1
  7. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +45 -1
  8. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +24 -1
  9. package/dist/_dts/api/src/siteSettings.d.ts +7 -0
  10. package/dist/_dts/api/src/types.d.ts +1 -1
  11. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -0
  12. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +1 -0
  13. package/dist/_dts/blocks/src/system/runtime/nodes/location-map.server.d.ts +4 -0
  14. package/dist/_dts/blocks/src/system/runtime/nodes/location-map.shared.d.ts +38 -0
  15. package/dist/_dts/blocks/src/system/runtime/nodes/location-map.view.d.ts +2 -1
  16. package/dist/_dts/core/src/business-address.d.ts +38 -0
  17. package/dist/_dts/core/src/index.d.ts +1 -0
  18. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +22 -0
  19. package/dist/_dts/preview-next/src/client/blocks/runOptimisticCustomizeAction.d.ts +44 -0
  20. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +7 -1
  21. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +12 -1
  22. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +6 -1
  23. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +20 -0
  24. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +99 -0
  25. package/dist/_dts/sdk/src/public-api/contracts.d.ts +11 -1
  26. package/dist/_dts/sdk/src/version.d.ts +1 -1
  27. package/dist/_dts/theme-core/src/buttons/constants.d.ts +9 -1
  28. package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +16 -11
  29. package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +9 -16
  30. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  31. package/dist/_dts/theme-core/src/buttons/personalities/brushed-wash.d.ts +11 -0
  32. package/dist/_dts/theme-core/src/buttons/personalities/confident-chip.d.ts +11 -0
  33. package/dist/_dts/theme-core/src/buttons/personalities/editorial-link.d.ts +11 -0
  34. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +14 -0
  35. package/dist/_dts/theme-core/src/buttons/personalities/ink-stamp.d.ts +11 -0
  36. package/dist/_dts/theme-core/src/buttons/personalities/pebble.d.ts +11 -0
  37. package/dist/_dts/theme-core/src/buttons/personalities/soft-pill.d.ts +11 -0
  38. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +268 -0
  39. package/dist/_dts/theme-core/src/buttons/types.d.ts +253 -72
  40. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +69 -15
  41. package/dist/_dts/theme-core/src/palette/index.d.ts +1 -0
  42. package/dist/_dts/theme-core/src/palette/variants/brand-led.d.ts +28 -0
  43. package/dist/_dts/theme-core/src/palette/variants/high-contrast.d.ts +28 -0
  44. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +17 -0
  45. package/dist/_dts/theme-core/src/palette/variants/soft-natural.d.ts +28 -0
  46. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +154 -0
  47. package/dist/_dts/theme-core/src/palette/variants/warm-neutral.d.ts +28 -0
  48. package/dist/_dts/theme-core/src/schema.d.ts +122 -10
  49. package/dist/_dts/theme-core/src/site-styles/compatibility.d.ts +109 -0
  50. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +193 -0
  51. package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
  52. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +4 -0
  53. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +43 -2
  54. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +23 -1
  55. package/dist/_dts/ui/src/badge.d.ts +1 -1
  56. package/dist/_dts/ui/src/callout.d.ts +1 -1
  57. package/dist/cli/index.mjs +1471 -263
  58. package/dist/client/bookings.mjs +294 -144
  59. package/dist/client/client.mjs +3483 -2219
  60. package/dist/client/hooks.mjs +2765 -1654
  61. package/dist/client/rendering/client.mjs +3251 -2134
  62. package/dist/client/rendering/islands.mjs +1842 -728
  63. package/dist/client/rendering.mjs +41242 -39978
  64. package/dist/preview-next/before-render.mjs +17 -0
  65. package/dist/preview-next/client/runtime.mjs +10110 -8271
  66. package/dist/preview-next/middleware.mjs +17 -0
  67. package/dist/server/components.mjs +3500 -2364
  68. package/dist/server/config-validation.mjs +2996 -1885
  69. package/dist/server/config.mjs +2996 -1885
  70. package/dist/server/data.mjs +2765 -1654
  71. package/dist/server/index.mjs +18 -1
  72. package/dist/server/next.mjs +3215 -2079
  73. package/dist/server/page-converter.mjs +2910 -1816
  74. package/dist/server/prebuild.mjs +1 -1
  75. package/dist/server/rendering/server.mjs +3500 -2364
  76. package/dist/server/rendering.mjs +3500 -2364
  77. package/dist/server/routing.mjs +2943 -1704
  78. package/dist/server/server.mjs +2766 -1655
  79. package/dist/server/theme-bridge.mjs +1435 -481
  80. package/dist/server/theme.mjs +1087 -492
  81. package/package.json +1 -1
  82. package/dist/_dts/preview-next/src/client/preview/PreviewSiteStyleSwitcher.d.ts +0 -11
  83. package/dist/_dts/preview-next/src/client/preview/PreviewSiteStyleSwitcher.state.d.ts +0 -43
@@ -783,6 +783,12 @@ export type MoneyReportSummary = {
783
783
  refundsCents: MoneyComparisonMetric;
784
784
  netRevenueCents: MoneyComparisonMetric;
785
785
  discountCents: MoneyComparisonMetric;
786
+ tax: {
787
+ kind: "hidden";
788
+ } | {
789
+ kind: "visible";
790
+ taxCollectedCents: MoneyComparisonMetric;
791
+ };
786
792
  orderCount: MoneyComparisonMetric;
787
793
  averageOrderValueCents: MoneyComparisonMetric;
788
794
  };
@@ -794,6 +800,7 @@ export type MoneyTimeSeriesBucket = {
794
800
  refundsCents: number;
795
801
  netRevenueCents: number;
796
802
  discountCents: number;
803
+ taxCollectedCents: number;
797
804
  orderCount: number;
798
805
  };
799
806
  export type MoneyBreakdownRow = {
@@ -115,6 +115,7 @@ export type UpdateNewsletterSettingsRequest = Partial<{
115
115
  senderDisplayName: string | null;
116
116
  senderAddressLine1: string | null;
117
117
  senderAddressLine2: string | null;
118
+ senderAddressSource: "custom" | "business_address";
118
119
  senderCity: string | null;
119
120
  senderPostcode: string | null;
120
121
  senderCountry: string | null;
@@ -341,6 +341,14 @@ export type SiteBySlugResponse = {
341
341
  theme: Theme;
342
342
  themeId?: string | null;
343
343
  selectionId?: string | null;
344
+ /**
345
+ * Persisted Style configurator selections (Phase C). Optional so legacy
346
+ * site_theme_selections rows (pre-migration) still satisfy the response
347
+ * type — consumers fall back to the site style's defaults when null.
348
+ */
349
+ selectionButtonPersonalityId?: string | null;
350
+ selectionPaletteVariantId?: string | null;
351
+ selectionPaletteOverrides?: Record<string, string> | null;
344
352
  navigation: NavigationMenuWithItems[];
345
353
  /** Whether portal navigation links should be rendered for this site. */
346
354
  portalEnabled?: boolean;
@@ -1481,6 +1481,23 @@ export declare const API_ENDPOINTS: {
1481
1481
  readonly auth: "user";
1482
1482
  readonly responseKind: "json";
1483
1483
  };
1484
+ readonly getSiteBusinessAddress: {
1485
+ readonly path: "/sites/{siteId}/settings/business-address";
1486
+ readonly method: "GET";
1487
+ readonly revalidate: 120;
1488
+ readonly tags: ["riverbank:site:{siteId}", "riverbank:site:{siteId}:settings"];
1489
+ readonly auth: "user";
1490
+ readonly responseKind: "json";
1491
+ readonly errors: readonly ["auth:forbidden", "server:internal_error"];
1492
+ };
1493
+ readonly updateSiteBusinessAddress: {
1494
+ readonly path: "/sites/{siteId}/settings/business-address";
1495
+ readonly method: "POST";
1496
+ readonly tags: ["riverbank:site:{siteId}", "riverbank:site:{siteId}:settings"];
1497
+ readonly auth: "user";
1498
+ readonly responseKind: "json";
1499
+ readonly errors: readonly ["auth:forbidden", "server:internal_error"];
1500
+ };
1484
1501
  readonly getSiteGenerationIntake: {
1485
1502
  readonly path: "/sites/{siteId}/settings/site-generation-intake";
1486
1503
  readonly method: "GET";
@@ -74,7 +74,7 @@ export { enrollTotpFactor, verifyTotpFactor, activateTotpFactor, deleteMfaFactor
74
74
  export type { ApiResult, ApiResponse, ApiError, ApiErrorCode, FieldError, ResponseMeta, } from "./common/envelope";
75
75
  export type { JsonPrimitive, JsonValue } from "./types";
76
76
  export type { PublicEventLoaderParams, PublicEventScheduleScope, PublicEventSurfaceScope, } from "./types";
77
- export type { APIEndpoint, APIEndpoints, PageBlockDesignSyncWarning, AiAPIEndpoints, LaunchReadinessAPIEndpoints, SiteMembersAPIEndpoints, SeoAPIEndpoints, RedirectsAPIEndpoints, AvailabilityAPIEndpoints, CalendarAPIEndpoints, ContentTypesAPIEndpoints, MediaAPIEndpoints, RiverbankSiteConfig, RiverbankSiteConfigInput, SdkWorkflowConfig, SdkWorkflowTrigger, SdkWorkflowConfirmation, GetEndpoint, HTTPMethod, APICallParams, APICallParamsStrict, CreateManualSiteRequest, CreateManualSiteResponse, ApiKeyRecord, PageRecord, NavigationMenuRecord, NavigationItemRecord, NavigationMenuWithItems, AccessPolicyContract, EntitledCustomerAccessScopeContract, AccessPolicyTag, CartLinkLabelConfig, CartLinkPayload, LinkPayload, InternalLinkRoutablePayload, NavigationLinkInput, RoutableContentItem, CreateMediaAssetBody, FileKindContract, FileKindTag, FileUseContract, FileUseTag, ImageFileFormat, MediaAssetResponse, MediaClassifyJobResponse, MediaJobSummaryResponse, MediaLabelSummary, MediaSettingsResponse, RenderableFileKindTag, StorageClass, UploadIntentContract, UploadIntentTag, BookingSettings, BookingNotificationRule, BookingNotificationSettings, BookingNotificationUpdateKind, BookingVerticalConfig, BookingCurrencyEditState, BookingSettingsEditorSnapshot, BookingSettingsResponse, BookingWaitlistSettings, BookingModuleToggles, BookingReminderOverrides, BookingDefaultImage, AppointmentFollowUpScopeIds, AppointmentFollowUpScopeMode, AppointmentFollowUpSettings, WaitlistMode, WaitlistOverride, EventBookingPolicyMode, EventBookingPolicy, EventBookingPolicies, UpdateBookingSettingsRequest, RefundEventAttendeeRequest, EventAttendeeRefundResult, RefundEventAttendeeResponse, RefundCourseEnrollmentRequest, CourseEnrollmentRefundResult, RefundCourseEnrollmentResponse, TransferEventAttendeeRequest, EventAttendeeTransferResult, TransferEventAttendeeResponse, OpsEventOccurrenceSummary, OpsOccurrenceAttendee, OpsListUpcomingEventOccurrencesResponse, OpsOccurrenceAttendeesResponse, OpsValidateEventTicketRequest, OpsValidateEventTicketResponse, OpsEventAttendeeCheckinUpdate, OpsUpdateEventAttendeeCheckinRequest, OpsUpdateEventAttendeeCheckinResponse, OpsEventAttendeeDetailsResponse, OpsCancelEventAttendeeRequest, OpsCancelEventAttendeeResult, OpsCancelEventAttendeeResponse, OpsRefundEventAttendeeResponse, EventAttendeeRefundHistoryItem, ListEventAttendeeRefundsResponse, CourseEnrollmentRefundHistoryItem, ListCourseEnrollmentRefundsResponse, EventAttendeeTransferHistoryItem, ListEventAttendeeTransfersResponse, EmailTemplateType, EmailTemplate, EmailTemplateInput, EventEmailTemplateType, EventEmailTemplate, GetEventSeriesEmailTemplatesResponse, UpdateEventSeriesEmailTemplatesRequest, UpdateEventSeriesEmailTemplatesResponse, GetEmailSettingsResponse, UpdateEmailSettingsRequest, UpdateEmailSettingsResponse, SendTestEmailRequest, SendTestEmailResponse, PreviewEmailTemplateRequest, PreviewEmailTemplateResponse, AvailabilityRule, ListAvailabilityRulesResponse, WeeklyAvailabilityWindowInput, SetWeeklyAvailabilityRequest, SetWeeklyAvailabilityResponse, SetWeeklyAvailabilityIssue, AppointmentBlackout, CreateBlackoutRequest, ListBlackoutsResponse, CreateBlackoutResponse, DeleteBlackoutResponse, TimeSlot, GetAvailableSlotsQuery, GetAvailableSlotsResponse, CreateAppointmentRequest, CreateAppointmentResponse, BookingQuestionFormSummary, BookingQuestionRequirementScope, BookingRequirementConfigRequest, BookingRequirementConfigResponse, BookingRequirementTargetType, BookingQuestionsRequirementConfig, BookingRequirementValidityPolicy, ConsentRequirementConfig, PublicCreateBookingAppointmentRequest, AppointmentRecord, BookingCustomerRecord, BookingSessionUpdateMeRequest, CourseStatus, MutableCourseStatus, CourseSessionInput, CreateCourseRequest, UpdateCourseRequest, DeleteCourseResponse, DeleteCourseProgramResponse, DuplicateCourseRequest, DuplicateCourseResponse, CourseSeriesRecord, CourseRecord, CreateCourseResponse, UpdateCourseResponse, CourseEnrollmentStatus, CourseEnrollmentPaymentMethod, CourseEnrollmentPaymentStatus, CourseEnrollmentRecord, CourseEnrollmentWithCustomer, ListCourseEnrollmentsResponse, AddCourseEnrollmentRequest, AddCourseEnrollmentResponse, UpdateCourseEnrollmentRequest, UpdateCourseEnrollmentResponse, BookingCustomerWithCounts, CustomerSortColumn, CustomerFilter, ListBookingCustomersRequest, ListBookingCustomersResponse, CreateBookingCustomerRequest, CreateBookingCustomerResponse, CustomerProfileRectificationSourceContext, CustomerProfileRectificationSourceSurface, CustomerPassRecord, ListCustomerPassesResponse, SiteCustomerRecord, SiteCustomerPassRecord, ListSiteCustomerPassesRequest, ListSiteCustomerPassesResponse, CustomerPassRefundResult, CustomerPassRefundRecord, AdjustCustomerPassDetailsRequest, AdjustCustomerPassDetailsResponse, RefundCustomerPassRequest, RefundCustomerPassResponse, ListCustomerPassRefundsResponse, CustomerMembershipRecord, ListCustomerMembershipsResponse, SiteCustomerMembershipRecord, ListSiteCustomerMembershipsRequest, ListSiteCustomerMembershipsResponse, BookingPaymentKind, BookingPaymentStatus, BookingPaymentsView, BookingPaymentListItem, ListBookingPaymentsRequest, ListBookingPaymentsResponse, MoneyPeriodPreset, MoneyItemKind, MoneyPaymentsView, MoneyTimeSeriesGranularity, MoneyBreakdownDimension, MoneyNonCashUsageKind, MoneyReportIncompleteReason, MoneyFilterQuery, MoneyComparisonMetric, MoneyDateRange, MoneyReportSummary, MoneyTimeSeriesBucket, MoneyBreakdownRow, MoneyBreakdownSection, MoneyNonCashUsageRow, MoneyNonCashUsageSection, GetMoneyReportRequest, GetMoneyReportResponse, MoneyPaymentListItem, ListMoneyPaymentsRequest, ListMoneyPaymentsResponse, BookingActivityCategory, BookingActivityType, BookingActivityCursor, BookingActivityListItem, ListBookingActivityRequest, ListBookingActivityResponse, DiscountCodeType, DiscountPerEmailLimit, DiscountMembershipDuration, DiscountEventScopeMode, DiscountScopeMode, ProductScopeMode, DiscountCodeRecord, DiscountCodeScopeIds, DiscountCodeDetails, AutoAppliedDiscountPreview, CreateDiscountCodeRequest, UpdateDiscountCodeRequest, ListDiscountCodesResponse, DiscountCodeResponse, DeleteDiscountCodeResponse, DiscountRedemptionStatus, DiscountRedemptionListItem, ListDiscountRedemptionsRequest, ListDiscountRedemptionsResponse, MembershipPaymentForRefund, ListCustomerMembershipPaymentsResponse, CancelCustomerMembershipAtPeriodEndResult, CustomerMembershipPaymentRefundResult, CustomerMembershipPaymentRefundRecord, RefundCustomerMembershipPaymentRequest, RefundCustomerMembershipPaymentResponse, ListCustomerMembershipPaymentRefundsResponse, CustomerAttendanceRecord, CustomerAttendancePayment, CustomerAttendanceLivePayment, CustomerAttendanceArchivedPayment, CustomerAttendancePaymentMethod, CustomerAttendancePaymentStatus, ListCustomerAttendancesRequest, ListCustomerAttendancesResponse, BookingCustomerCreditSummary, BookingCustomerCreditTransactionListItem, GetCustomerCreditResponse, AccountRevokeSessionsBody, AccountRevokeSessionsResponse, AccountUpdatePasswordBody, AccountUpdatePasswordResponse, AuthFieldKey, AuthSubmissionErrorReason, AuthSubmissionSuccess, AuthSubmissionError, AuthSubmissionResult, ReauthSubmissionResult, DomainAvailability, SiteDomainRecord, SiteDomainContactPayload, LookupSiteDomainRequest, LookupSiteDomainResponse, RegisterSiteDomainRequest, RegisterSiteDomainResponse, AddCustomDomainRequest, AddCustomDomainResponse, SetHomepageRequest, SetHomepageResponse, ContentRouteRecord, SeoOverviewResponse, SeoOverviewQuery, SeoOverviewTimePoint, SeoRangePreset, PerformanceOverviewResponse, PerformanceOverviewQuery, PerformanceRangePreset, SeoSearchPagesQuery, SeoSearchPagesResponse, SeoSearchQueriesQuery, SeoSearchQueriesResponse, SeoSearchSummary, ContentEntryRecord, ContentEntrySummary, FormSummary, ContentEntryDetail, ScheduledContentEntryOrPageResponse, BookingsEventSeriesContentEditorResponse, PublishedContentEntryPreview, PublishedContentEntryPreviewResponse, PublishedPostPreview, PublishedPostPreviewResponse, ContentEntryListStage, ContentEntryListItem, ListPublishedEntriesResponse, ContentTypeTemplateSummary, PublicContentTypeFieldMeta, PublicContentTypeMeta, ListPublishedEntriesMeta, ContentTemplateSummary, ContentTemplateBlockSummary, ContentTemplateAddonSummary, ContentAddonDefinition, ContentTemplateDetailsResponse, UpdateContentTemplateBlockRequest, ApplyContentTemplateAddonRequest, StartImpersonationRequest, StartImpersonationResponse, StopImpersonationRequest, StopImpersonationResponse, UpsertAdminRoleRequest, RevokeAdminRoleRequest, AdminRoleMutationResponse, AdminProfileRole, DTOType, MfaFactorSummary, MfaOverviewPayload, MfaOverviewResponse, MfaTotpActivateRequest, MfaTotpEnrollResponse, MfaTotpVerifyRequest, MfaTotpVerifyResponse, MfaPhoneEnrollRequest, MfaPhoneEnrollResponse, MfaPhoneChallengeRequest, MfaPhoneChallengeResponse, MfaPhoneVerifyRequest, MfaBackupCodeSummary, MfaBackupCodesOverview, MfaBackupCodesOverviewResponse, MfaBackupCodesRotateResponse, CreateAdminInviteRequest, CreateAdminInviteResponse, CreateAdminUserRequest, CreateAdminUserResponse, ListAdminInvitesResponse, RevokeAdminInviteResponse, CreateAllowedDomainRequest, CreateAllowedDomainResponse, ListAllowedDomainsResponse, DeleteAllowedDomainResponse, AcceptAdminInviteRequest, AcceptAdminInviteResponse, AdminInvite, AllowedEmailDomain, AdminChangePlanRequest, AdminChangePlanResponse, ChangePlanRequest, ChangePlanResponse, BillingPriceOverride, AdminGetPriceOverrideQuery, AdminGetPriceOverrideResponse, AdminUpsertPriceOverrideRequest, AdminUpsertPriceOverrideResponse, AdminDeletePriceOverrideRequest, AdminDeletePriceOverrideResponse, DomainSearchResultResponse, AnalyticsPreset, AnalyticsReportQuery, AnalyticsSeriesPoint, AnalyticsTopPage, AnalyticsReferrer, AnalyticsTotals, AnalyticsReportResponse, RegisterDomainRequestPayload, RegisterDomainResponse, DomainConfigResult, SiteRole, SiteMember, SiteMemberProfile, SiteInvitation, SiteAccessSummary, SitePlanSummaryResponse, ListSiteMembersResponse, InviteSiteMemberRequest, InviteSiteMemberResponse, UpdateSiteMemberRoleRequest, UpdateSiteMemberRoleResponse, RemoveSiteMemberResponse, RevokeSiteInvitationResponse, TransferSiteOwnershipRequest, TransferSiteOwnershipResponse, AcceptSiteInvitationRequest, AcceptSiteInvitationResponse, DevToolsImpersonationResponse, DevToolsSeedResponse, DowngradeRole, RoleDowngradeActualRole, SiteRoleDowngradeState, DevToolsGetSiteRoleDowngradeQuery, DevToolsSetSiteRoleDowngradeRequest, SitePagePayload, SiteBySlugResponse, BlockWithContentResponse, ContentDataResponse, BackupAccessImportResult, BackupImportResponse, PreviewKeyRecord, ApiKeyAccessLogRecord, ListSiteApiKeysResponse, CreateSiteApiKeyRequest, CreateSiteApiKeyResponse, RevokeSiteApiKeyResponse, GetSitePreviewKeyResponse, CreateSitePreviewKeyResponse, GetSiteApiKeyAccessLogsResponse, ApiKeyAccessLogsPagination, ManagementKeyRecord, ListManagementKeysResponse, CreateManagementKeyRequest, CreateManagementKeyResponse, RevokeManagementKeyRequest, RevokeManagementKeyResponse, EventPreset, EventOnlineDetails, EventOnlineDetailsInput, StaffAssignmentMode, EventSeriesRecord, CreateEventSeriesRequest, UpdateEventSeriesRequest, EventAttendeeRecord, BookingBeforeYouComeDeliveryIssue, BookingBeforeYouComeReadiness, BookingEventSeriesAttendeeGuest, BookingEventSeriesAttendee, BookingPaymentIssueReason, BookingPaymentAttentionSummary, EventOccurrenceRecord, EventOccurrenceOverrides, EventOccurrenceStatus, EventOccurrenceDeletionEligibility, EventOccurrenceListRecord, UpdateOccurrenceRequest, VenueRecord, VenueLocation, CreateVenueRequest, UpdateVenueRequest, DeleteVenueResponse, GeocodeVenueRequest, GeocodeVenueResponse, AiPlaygroundApplyRequest, AiPlaygroundApplyResponse, BillingStatusResponse, BillingCheckoutRequest, BillingCheckoutResponse, BillingSummaryResponse, SiteBillingCostResponse, SitePurpose, AiBrandGuidelinesExample, SiteAiBrandGuidelinesPayload, SiteAiBrandGuidelinesResponse, SiteAiProfileEntityType, SiteAiProfileLocationMode, SiteAiProfilePayload, SiteAiProfileResponse, SiteContentSamplingStats, SiteContentSampledItem, AiBrandGuidelinesGenerationContextResponse, AiBrandGuidelinesGenerateRequest, AiBrandGuidelinesGenerateResponse, DeleteAccountRequest, DeleteAccountResponse, FontRecord, ExportBackupRequest, BackupPreviewRequest, BackupPreviewResponse, CreateBackupUploadUrlRequest, CreateBackupUploadUrlResponse, DeleteBackupUploadRequest, DeleteBackupUploadResponse, ImportBackupAsNewSiteRequest, ImportBackupAsNewSiteResponse, AdminSiteCostResponse, AdminUpdateSiteCostRequest, BulkOperationResult, SchedulePreviewRequest, SchedulePreviewResponse, AffectedOccurrence, ModifiedOccurrence, RegenerationSummary, AiGenerateSiteEntityType, AiGenerateSitePrimaryCta, AiGenerateSiteRequest, AiGenerateSiteResponse, AiSiteWizardIntakeTriageRequest, AiSiteWizardIntakeTriageResponse, AiSiteWizardTelemetryEvent, AiSiteWizardTelemetryRequest, AiSiteWizardTelemetryResponse, PublicOnboardingAttempt, PublicOnboardingAttemptPayload, PublicOnboardingLogoUploadRequest, PublicOnboardingLogoUploadResponse, PublicOnboardingLogoUploadUrlRequest, PublicOnboardingLogoUploadUrlResponse, PublicOnboardingAttemptStatus, PublicOnboardingSurfaceId, SiteGenerationScope, SiteGenerationFeatureKey, SiteWizardResumeSnapshot, SiteGenerationIntakePayload, SiteGenerationIntakeResponse, CalendarConnectionStatus, CalendarStatusResponse, DebugArtifact, DebugArtifacts, PageBlock, PageConverterOutput, PageConversionSuccess, PageConversionAttempt, PageConversionFailure, PageConversionResult, PageConvertResponse, PageConvertJobStatus, PageConvertJob, PageConvertJobEventType, PageConvertJobEvent, PageConvertJobsCreateRequest, PageConvertJobsCreateResponse, PageConvertJobsListResponse, PageConvertJobGetResponse, PageConvertJobRunResponse, PageConvertJobEventsResponse, NewsletterSettingsRecord, NewsletterSubscriberRecord, NewsletterListRecord, GetNewsletterSettingsResponse, UpdateNewsletterSettingsRequest, UpdateNewsletterSettingsResponse, ListNewsletterTagsResponse, ListNewsletterSubscribersResponse, UpsertNewsletterSubscriberRequest, UpsertNewsletterSubscriberResponse, ImportNewsletterSubscribersCsvResponse, ExportNewsletterSubscribersCsvResponse, GetNewsletterSubscriberResponse, UpdateNewsletterSubscriberRequest, UpdateNewsletterSubscriberResponse, DeleteNewsletterSubscriberResponse, AnonymizeNewsletterSubscriberResponse, ExportNewsletterSubscriberDataResponse, ListNewsletterListsResponse, CreateNewsletterListRequest, CreateNewsletterListResponse, UpdateNewsletterListRequest, UpdateNewsletterListResponse, DeleteNewsletterListResponse, ListNewsletterListMembersResponse, UpdateNewsletterListMembershipsRequest, UpdateNewsletterListMembershipsResponse, NewsletterTemplateRecord, ListNewsletterTemplatesResponse, CreateNewsletterTemplateRequest, CreateNewsletterTemplateResponse, GetNewsletterTemplateResponse, UpdateNewsletterTemplateRequest, UpdateNewsletterTemplateResponse, DeleteNewsletterTemplateResponse, PreviewNewsletterTemplateRequest, PreviewNewsletterTemplateResponse, NewsletterCampaignRecord, ListNewsletterCampaignsResponse, CreateNewsletterCampaignRequest, CreateNewsletterCampaignResponse, GetNewsletterCampaignResponse, UpdateNewsletterCampaignRequest, UpdateNewsletterCampaignResponse, DeleteNewsletterCampaignResponse, NewsletterCampaignRecipientsSummary, GetNewsletterCampaignRecipientsSummaryResponse, NewsletterCampaignStats, GetNewsletterCampaignStatsResponse, NewsletterSendJobRecord, NewsletterSendJobStatus, ListNewsletterSendJobsQuery, ListNewsletterSendJobsResponse, RetryNewsletterSendJobResponse, CancelNewsletterSendJobResponse, SiteLogActor, SiteContentActivityLogEntry, SiteFormSubmissionActivityLogEntry, SiteActivityLogEntry, ListSiteActivityLogsResponse, SiteEmailLogEntry, ListSiteEmailLogsResponse, SiteEmailEventLogEntry, ListSiteEmailEventLogsResponse, SitePublicErrorLogEntry, ListSitePublicErrorLogsResponse, } from "./types";
77
+ export type { APIEndpoint, APIEndpoints, PageBlockDesignSyncWarning, AiAPIEndpoints, LaunchReadinessAPIEndpoints, SiteMembersAPIEndpoints, SeoAPIEndpoints, RedirectsAPIEndpoints, AvailabilityAPIEndpoints, CalendarAPIEndpoints, ContentTypesAPIEndpoints, MediaAPIEndpoints, RiverbankSiteConfig, RiverbankSiteConfigInput, SdkWorkflowConfig, SdkWorkflowTrigger, SdkWorkflowConfirmation, GetEndpoint, HTTPMethod, APICallParams, APICallParamsStrict, CreateManualSiteRequest, CreateManualSiteResponse, ApiKeyRecord, PageRecord, NavigationMenuRecord, NavigationItemRecord, NavigationMenuWithItems, AccessPolicyContract, EntitledCustomerAccessScopeContract, AccessPolicyTag, CartLinkLabelConfig, CartLinkPayload, LinkPayload, InternalLinkRoutablePayload, NavigationLinkInput, RoutableContentItem, CreateMediaAssetBody, FileKindContract, FileKindTag, FileUseContract, FileUseTag, ImageFileFormat, MediaAssetResponse, MediaClassifyJobResponse, MediaJobSummaryResponse, MediaLabelSummary, MediaSettingsResponse, RenderableFileKindTag, StorageClass, UploadIntentContract, UploadIntentTag, BookingSettings, BookingNotificationRule, BookingNotificationSettings, BookingNotificationUpdateKind, BookingVerticalConfig, BookingCurrencyEditState, BookingSettingsEditorSnapshot, BookingSettingsResponse, BookingWaitlistSettings, BookingModuleToggles, BookingReminderOverrides, BookingDefaultImage, AppointmentFollowUpScopeIds, AppointmentFollowUpScopeMode, AppointmentFollowUpSettings, WaitlistMode, WaitlistOverride, EventBookingPolicyMode, EventBookingPolicy, EventBookingPolicies, UpdateBookingSettingsRequest, RefundEventAttendeeRequest, EventAttendeeRefundResult, RefundEventAttendeeResponse, RefundCourseEnrollmentRequest, CourseEnrollmentRefundResult, RefundCourseEnrollmentResponse, TransferEventAttendeeRequest, EventAttendeeTransferResult, TransferEventAttendeeResponse, OpsEventOccurrenceSummary, OpsOccurrenceAttendee, OpsListUpcomingEventOccurrencesResponse, OpsOccurrenceAttendeesResponse, OpsValidateEventTicketRequest, OpsValidateEventTicketResponse, OpsEventAttendeeCheckinUpdate, OpsUpdateEventAttendeeCheckinRequest, OpsUpdateEventAttendeeCheckinResponse, OpsEventAttendeeDetailsResponse, OpsCancelEventAttendeeRequest, OpsCancelEventAttendeeResult, OpsCancelEventAttendeeResponse, OpsRefundEventAttendeeResponse, EventAttendeeRefundHistoryItem, ListEventAttendeeRefundsResponse, CourseEnrollmentRefundHistoryItem, ListCourseEnrollmentRefundsResponse, EventAttendeeTransferHistoryItem, ListEventAttendeeTransfersResponse, EmailTemplateType, EmailTemplate, EmailTemplateInput, EventEmailTemplateType, EventEmailTemplate, GetEventSeriesEmailTemplatesResponse, UpdateEventSeriesEmailTemplatesRequest, UpdateEventSeriesEmailTemplatesResponse, GetEmailSettingsResponse, UpdateEmailSettingsRequest, UpdateEmailSettingsResponse, SendTestEmailRequest, SendTestEmailResponse, PreviewEmailTemplateRequest, PreviewEmailTemplateResponse, AvailabilityRule, ListAvailabilityRulesResponse, WeeklyAvailabilityWindowInput, SetWeeklyAvailabilityRequest, SetWeeklyAvailabilityResponse, SetWeeklyAvailabilityIssue, AppointmentBlackout, CreateBlackoutRequest, ListBlackoutsResponse, CreateBlackoutResponse, DeleteBlackoutResponse, TimeSlot, GetAvailableSlotsQuery, GetAvailableSlotsResponse, CreateAppointmentRequest, CreateAppointmentResponse, BookingQuestionFormSummary, BookingQuestionRequirementScope, BookingRequirementConfigRequest, BookingRequirementConfigResponse, BookingRequirementTargetType, BookingQuestionsRequirementConfig, BookingRequirementValidityPolicy, ConsentRequirementConfig, PublicCreateBookingAppointmentRequest, AppointmentRecord, BookingCustomerRecord, BookingSessionUpdateMeRequest, CourseStatus, MutableCourseStatus, CourseSessionInput, CreateCourseRequest, UpdateCourseRequest, DeleteCourseResponse, DeleteCourseProgramResponse, DuplicateCourseRequest, DuplicateCourseResponse, CourseSeriesRecord, CourseRecord, CreateCourseResponse, UpdateCourseResponse, CourseEnrollmentStatus, CourseEnrollmentPaymentMethod, CourseEnrollmentPaymentStatus, CourseEnrollmentRecord, CourseEnrollmentWithCustomer, ListCourseEnrollmentsResponse, AddCourseEnrollmentRequest, AddCourseEnrollmentResponse, UpdateCourseEnrollmentRequest, UpdateCourseEnrollmentResponse, BookingCustomerWithCounts, CustomerSortColumn, CustomerFilter, ListBookingCustomersRequest, ListBookingCustomersResponse, CreateBookingCustomerRequest, CreateBookingCustomerResponse, CustomerProfileRectificationSourceContext, CustomerProfileRectificationSourceSurface, CustomerPassRecord, ListCustomerPassesResponse, SiteCustomerRecord, SiteCustomerPassRecord, ListSiteCustomerPassesRequest, ListSiteCustomerPassesResponse, CustomerPassRefundResult, CustomerPassRefundRecord, AdjustCustomerPassDetailsRequest, AdjustCustomerPassDetailsResponse, RefundCustomerPassRequest, RefundCustomerPassResponse, ListCustomerPassRefundsResponse, CustomerMembershipRecord, ListCustomerMembershipsResponse, SiteCustomerMembershipRecord, ListSiteCustomerMembershipsRequest, ListSiteCustomerMembershipsResponse, BookingPaymentKind, BookingPaymentStatus, BookingPaymentsView, BookingPaymentListItem, ListBookingPaymentsRequest, ListBookingPaymentsResponse, MoneyPeriodPreset, MoneyItemKind, MoneyPaymentsView, MoneyTimeSeriesGranularity, MoneyBreakdownDimension, MoneyNonCashUsageKind, MoneyReportIncompleteReason, MoneyFilterQuery, MoneyComparisonMetric, MoneyDateRange, MoneyReportSummary, MoneyTimeSeriesBucket, MoneyBreakdownRow, MoneyBreakdownSection, MoneyNonCashUsageRow, MoneyNonCashUsageSection, GetMoneyReportRequest, GetMoneyReportResponse, MoneyPaymentListItem, ListMoneyPaymentsRequest, ListMoneyPaymentsResponse, BookingActivityCategory, BookingActivityType, BookingActivityCursor, BookingActivityListItem, ListBookingActivityRequest, ListBookingActivityResponse, DiscountCodeType, DiscountPerEmailLimit, DiscountMembershipDuration, DiscountEventScopeMode, DiscountScopeMode, ProductScopeMode, DiscountCodeRecord, DiscountCodeScopeIds, DiscountCodeDetails, AutoAppliedDiscountPreview, CreateDiscountCodeRequest, UpdateDiscountCodeRequest, ListDiscountCodesResponse, DiscountCodeResponse, DeleteDiscountCodeResponse, DiscountRedemptionStatus, DiscountRedemptionListItem, ListDiscountRedemptionsRequest, ListDiscountRedemptionsResponse, MembershipPaymentForRefund, ListCustomerMembershipPaymentsResponse, CancelCustomerMembershipAtPeriodEndResult, CustomerMembershipPaymentRefundResult, CustomerMembershipPaymentRefundRecord, RefundCustomerMembershipPaymentRequest, RefundCustomerMembershipPaymentResponse, ListCustomerMembershipPaymentRefundsResponse, CustomerAttendanceRecord, CustomerAttendancePayment, CustomerAttendanceLivePayment, CustomerAttendanceArchivedPayment, CustomerAttendancePaymentMethod, CustomerAttendancePaymentStatus, ListCustomerAttendancesRequest, ListCustomerAttendancesResponse, BookingCustomerCreditSummary, BookingCustomerCreditTransactionListItem, GetCustomerCreditResponse, AccountRevokeSessionsBody, AccountRevokeSessionsResponse, AccountUpdatePasswordBody, AccountUpdatePasswordResponse, AuthFieldKey, AuthSubmissionErrorReason, AuthSubmissionSuccess, AuthSubmissionError, AuthSubmissionResult, ReauthSubmissionResult, DomainAvailability, SiteDomainRecord, SiteDomainContactPayload, LookupSiteDomainRequest, LookupSiteDomainResponse, RegisterSiteDomainRequest, RegisterSiteDomainResponse, AddCustomDomainRequest, AddCustomDomainResponse, SetHomepageRequest, SetHomepageResponse, ContentRouteRecord, SeoOverviewResponse, SeoOverviewQuery, SeoOverviewTimePoint, SeoRangePreset, PerformanceOverviewResponse, PerformanceOverviewQuery, PerformanceRangePreset, SeoSearchPagesQuery, SeoSearchPagesResponse, SeoSearchQueriesQuery, SeoSearchQueriesResponse, SeoSearchSummary, ContentEntryRecord, ContentEntrySummary, FormSummary, ContentEntryDetail, ScheduledContentEntryOrPageResponse, BookingsEventSeriesContentEditorResponse, PublishedContentEntryPreview, PublishedContentEntryPreviewResponse, PublishedPostPreview, PublishedPostPreviewResponse, ContentEntryListStage, ContentEntryListItem, ListPublishedEntriesResponse, ContentTypeTemplateSummary, PublicContentTypeFieldMeta, PublicContentTypeMeta, ListPublishedEntriesMeta, ContentTemplateSummary, ContentTemplateBlockSummary, ContentTemplateAddonSummary, ContentAddonDefinition, ContentTemplateDetailsResponse, UpdateContentTemplateBlockRequest, ApplyContentTemplateAddonRequest, StartImpersonationRequest, StartImpersonationResponse, StopImpersonationRequest, StopImpersonationResponse, UpsertAdminRoleRequest, RevokeAdminRoleRequest, AdminRoleMutationResponse, AdminProfileRole, DTOType, MfaFactorSummary, MfaOverviewPayload, MfaOverviewResponse, MfaTotpActivateRequest, MfaTotpEnrollResponse, MfaTotpVerifyRequest, MfaTotpVerifyResponse, MfaPhoneEnrollRequest, MfaPhoneEnrollResponse, MfaPhoneChallengeRequest, MfaPhoneChallengeResponse, MfaPhoneVerifyRequest, MfaBackupCodeSummary, MfaBackupCodesOverview, MfaBackupCodesOverviewResponse, MfaBackupCodesRotateResponse, CreateAdminInviteRequest, CreateAdminInviteResponse, CreateAdminUserRequest, CreateAdminUserResponse, ListAdminInvitesResponse, RevokeAdminInviteResponse, CreateAllowedDomainRequest, CreateAllowedDomainResponse, ListAllowedDomainsResponse, DeleteAllowedDomainResponse, AcceptAdminInviteRequest, AcceptAdminInviteResponse, AdminInvite, AllowedEmailDomain, AdminChangePlanRequest, AdminChangePlanResponse, ChangePlanRequest, ChangePlanResponse, BillingPriceOverride, AdminGetPriceOverrideQuery, AdminGetPriceOverrideResponse, AdminUpsertPriceOverrideRequest, AdminUpsertPriceOverrideResponse, AdminDeletePriceOverrideRequest, AdminDeletePriceOverrideResponse, DomainSearchResultResponse, AnalyticsPreset, AnalyticsReportQuery, AnalyticsSeriesPoint, AnalyticsTopPage, AnalyticsReferrer, AnalyticsTotals, AnalyticsReportResponse, RegisterDomainRequestPayload, RegisterDomainResponse, DomainConfigResult, SiteRole, SiteMember, SiteMemberProfile, SiteInvitation, SiteAccessSummary, SitePlanSummaryResponse, ListSiteMembersResponse, InviteSiteMemberRequest, InviteSiteMemberResponse, UpdateSiteMemberRoleRequest, UpdateSiteMemberRoleResponse, RemoveSiteMemberResponse, RevokeSiteInvitationResponse, TransferSiteOwnershipRequest, TransferSiteOwnershipResponse, AcceptSiteInvitationRequest, AcceptSiteInvitationResponse, DevToolsImpersonationResponse, DevToolsSeedResponse, DowngradeRole, RoleDowngradeActualRole, SiteRoleDowngradeState, DevToolsGetSiteRoleDowngradeQuery, DevToolsSetSiteRoleDowngradeRequest, SitePagePayload, SiteBySlugResponse, BlockWithContentResponse, ContentDataResponse, BackupAccessImportResult, BackupImportResponse, PreviewKeyRecord, ApiKeyAccessLogRecord, ListSiteApiKeysResponse, CreateSiteApiKeyRequest, CreateSiteApiKeyResponse, RevokeSiteApiKeyResponse, GetSitePreviewKeyResponse, CreateSitePreviewKeyResponse, GetSiteApiKeyAccessLogsResponse, ApiKeyAccessLogsPagination, ManagementKeyRecord, ListManagementKeysResponse, CreateManagementKeyRequest, CreateManagementKeyResponse, RevokeManagementKeyRequest, RevokeManagementKeyResponse, EventPreset, EventOnlineDetails, EventOnlineDetailsInput, StaffAssignmentMode, EventSeriesRecord, CreateEventSeriesRequest, UpdateEventSeriesRequest, EventAttendeeRecord, BookingBeforeYouComeDeliveryIssue, BookingBeforeYouComeReadiness, BookingEventSeriesAttendeeGuest, BookingEventSeriesAttendee, BookingPaymentIssueReason, BookingPaymentAttentionSummary, EventOccurrenceRecord, EventOccurrenceOverrides, EventOccurrenceStatus, EventOccurrenceDeletionEligibility, EventOccurrenceListRecord, UpdateOccurrenceRequest, VenueRecord, VenueLocation, CreateVenueRequest, UpdateVenueRequest, DeleteVenueResponse, GeocodeVenueRequest, GeocodeVenueResponse, AiPlaygroundApplyRequest, AiPlaygroundApplyResponse, BillingStatusResponse, BillingCheckoutRequest, BillingCheckoutResponse, BillingSummaryResponse, SiteBillingCostResponse, SitePurpose, AiBrandGuidelinesExample, SiteAiBrandGuidelinesPayload, SiteAiBrandGuidelinesResponse, SiteAiProfileEntityType, SiteAiProfileLocationMode, SiteAiProfilePayload, SiteAiProfileResponse, SiteBusinessAddressPayload, SiteBusinessAddressResponse, SiteContentSamplingStats, SiteContentSampledItem, AiBrandGuidelinesGenerationContextResponse, AiBrandGuidelinesGenerateRequest, AiBrandGuidelinesGenerateResponse, DeleteAccountRequest, DeleteAccountResponse, FontRecord, ExportBackupRequest, BackupPreviewRequest, BackupPreviewResponse, CreateBackupUploadUrlRequest, CreateBackupUploadUrlResponse, DeleteBackupUploadRequest, DeleteBackupUploadResponse, ImportBackupAsNewSiteRequest, ImportBackupAsNewSiteResponse, AdminSiteCostResponse, AdminUpdateSiteCostRequest, BulkOperationResult, SchedulePreviewRequest, SchedulePreviewResponse, AffectedOccurrence, ModifiedOccurrence, RegenerationSummary, AiGenerateSiteEntityType, AiGenerateSitePrimaryCta, AiGenerateSiteRequest, AiGenerateSiteResponse, AiSiteWizardIntakeTriageRequest, AiSiteWizardIntakeTriageResponse, AiSiteWizardTelemetryEvent, AiSiteWizardTelemetryRequest, AiSiteWizardTelemetryResponse, PublicOnboardingAttempt, PublicOnboardingAttemptPayload, PublicOnboardingLogoUploadRequest, PublicOnboardingLogoUploadResponse, PublicOnboardingLogoUploadUrlRequest, PublicOnboardingLogoUploadUrlResponse, PublicOnboardingAttemptStatus, PublicOnboardingSurfaceId, SiteGenerationScope, SiteGenerationFeatureKey, SiteWizardResumeSnapshot, SiteGenerationIntakePayload, SiteGenerationIntakeResponse, CalendarConnectionStatus, CalendarStatusResponse, DebugArtifact, DebugArtifacts, PageBlock, PageConverterOutput, PageConversionSuccess, PageConversionAttempt, PageConversionFailure, PageConversionResult, PageConvertResponse, PageConvertJobStatus, PageConvertJob, PageConvertJobEventType, PageConvertJobEvent, PageConvertJobsCreateRequest, PageConvertJobsCreateResponse, PageConvertJobsListResponse, PageConvertJobGetResponse, PageConvertJobRunResponse, PageConvertJobEventsResponse, NewsletterSettingsRecord, NewsletterSubscriberRecord, NewsletterListRecord, GetNewsletterSettingsResponse, UpdateNewsletterSettingsRequest, UpdateNewsletterSettingsResponse, ListNewsletterTagsResponse, ListNewsletterSubscribersResponse, UpsertNewsletterSubscriberRequest, UpsertNewsletterSubscriberResponse, ImportNewsletterSubscribersCsvResponse, ExportNewsletterSubscribersCsvResponse, GetNewsletterSubscriberResponse, UpdateNewsletterSubscriberRequest, UpdateNewsletterSubscriberResponse, DeleteNewsletterSubscriberResponse, AnonymizeNewsletterSubscriberResponse, ExportNewsletterSubscriberDataResponse, ListNewsletterListsResponse, CreateNewsletterListRequest, CreateNewsletterListResponse, UpdateNewsletterListRequest, UpdateNewsletterListResponse, DeleteNewsletterListResponse, ListNewsletterListMembersResponse, UpdateNewsletterListMembershipsRequest, UpdateNewsletterListMembershipsResponse, NewsletterTemplateRecord, ListNewsletterTemplatesResponse, CreateNewsletterTemplateRequest, CreateNewsletterTemplateResponse, GetNewsletterTemplateResponse, UpdateNewsletterTemplateRequest, UpdateNewsletterTemplateResponse, DeleteNewsletterTemplateResponse, PreviewNewsletterTemplateRequest, PreviewNewsletterTemplateResponse, NewsletterCampaignRecord, ListNewsletterCampaignsResponse, CreateNewsletterCampaignRequest, CreateNewsletterCampaignResponse, GetNewsletterCampaignResponse, UpdateNewsletterCampaignRequest, UpdateNewsletterCampaignResponse, DeleteNewsletterCampaignResponse, NewsletterCampaignRecipientsSummary, GetNewsletterCampaignRecipientsSummaryResponse, NewsletterCampaignStats, GetNewsletterCampaignStatsResponse, NewsletterSendJobRecord, NewsletterSendJobStatus, ListNewsletterSendJobsQuery, ListNewsletterSendJobsResponse, RetryNewsletterSendJobResponse, CancelNewsletterSendJobResponse, SiteLogActor, SiteContentActivityLogEntry, SiteFormSubmissionActivityLogEntry, SiteActivityLogEntry, ListSiteActivityLogsResponse, SiteEmailLogEntry, ListSiteEmailLogsResponse, SiteEmailEventLogEntry, ListSiteEmailEventLogsResponse, SitePublicErrorLogEntry, ListSitePublicErrorLogsResponse, } from "./types";
78
78
  export { SITE_ROLE_PERMISSION_LEVEL, SITE_ROLE_DISPLAY_ORDER } from "./types";
79
79
  export type { AIChatMessage, AiBriefTurn, AiDesignerThemePatchOp, AiPatchApplyResponse, AiPatchDryRunResponse, AiPatchOp, AiPatchRequest, ApplyAiDesignerPageOpsRequest, ApplyAiDesignerPageOpsResponse, ApplyAiDesignerThemePatchRequest, ApplyAiDesignerThemePatchResponse, } from "./types";
80
80
  export type { CancelFlexibleBalanceBookingDueToNonPaymentRequest, FlexibleBalanceAdminActionPlan, FlexibleBalanceAdminActionResponse, FlexibleBalanceAdminActionSource, FlexibleBalanceAdminActionView, ReopenFlexibleBalanceBookingAfterNonPaymentCancellationRequest, } from "./types";
@@ -180,7 +180,7 @@ export type CreateMediaAssetBody = {
180
180
  mimeType: string;
181
181
  width?: number;
182
182
  height?: number;
183
- bytes?: number;
183
+ bytes: number;
184
184
  checksumSha256?: string | null;
185
185
  source?: "upload" | "instagram";
186
186
  title?: string | null;
@@ -13,7 +13,7 @@ import type { SiteAnalyticsSettingsPayload, SiteAnalyticsSettingsResponse } from
13
13
  import type { SiteBannerSettingsPayload, SiteBannerSettingsResponse } from "./siteBanner";
14
14
  import type { AiBrandGuidelinesGenerateRequest, AiBrandGuidelinesGenerateResponse, AiBrandGuidelinesGenerationContextResponse, SiteAiBrandGuidelinesPayload, SiteAiBrandGuidelinesResponse, SiteAiProfilePayload, SiteAiProfileResponse, SiteGenerationIntakePayload, SiteGenerationIntakeResponse } from "./siteOnboarding";
15
15
  import type { SitePrivacySettingsPayload, SitePrivacySettingsResponse } from "./privacyPolicy";
16
- import type { MaintenanceSettingsPayload, MaintenanceSettingsResponse, SiteFooterBlocksEditorResponse, SiteGeneralSettingsPayload, SiteGeneralSettingsResponse, SiteLayoutSettingsPayload, SiteLayoutSettingsResponse, UpdateSiteDeploymentModePayload, UpdateSiteDeploymentModeResponse, UpdateSiteFooterBlocksPayload, UpdateSiteFooterBlocksResponse } from "./siteSettings";
16
+ import type { MaintenanceSettingsPayload, MaintenanceSettingsResponse, SiteBusinessAddressPayload, SiteBusinessAddressResponse, SiteFooterBlocksEditorResponse, SiteGeneralSettingsPayload, SiteGeneralSettingsResponse, SiteLayoutSettingsPayload, SiteLayoutSettingsResponse, UpdateSiteDeploymentModePayload, UpdateSiteDeploymentModeResponse, UpdateSiteFooterBlocksPayload, UpdateSiteFooterBlocksResponse } from "./siteSettings";
17
17
  /**
18
18
  * Site-management endpoints collect dashboard/admin/auth/content-management API shapes
19
19
  * that still belong to the aggregate contract layer but no longer need to live inline in
@@ -60,6 +60,44 @@ type DsarRectificationTreatmentApi = {
60
60
  title: string;
61
61
  decisionLabel: string;
62
62
  actionLabel: string;
63
+ identityBoundary: {
64
+ kind: "customer_commercial_current_identity";
65
+ } | {
66
+ kind: "customer_backed_participant_current_identity";
67
+ } | {
68
+ kind: "person_record_current_note";
69
+ } | {
70
+ kind: "immutable_subject_snapshot";
71
+ } | {
72
+ kind: "newsletter_current_subscription_identity";
73
+ } | {
74
+ kind: "finance_integrity_record";
75
+ } | {
76
+ kind: "immutable_audit_history";
77
+ } | {
78
+ kind: "derived_history_projection_or_ledger";
79
+ };
80
+ historyPropagation: {
81
+ kind: "update_current_identity_only";
82
+ audit: "required";
83
+ immutableSnapshots: "retain";
84
+ } | {
85
+ kind: "append_correction_note";
86
+ audit: "required";
87
+ immutableSnapshots: "retain_original";
88
+ } | {
89
+ kind: "annotate_immutable_snapshot";
90
+ audit: "required";
91
+ immutableSnapshots: "retain_original";
92
+ } | {
93
+ kind: "manual_review_required";
94
+ audit: "request_only";
95
+ immutableSnapshots: "retain_until_review";
96
+ } | {
97
+ kind: "blocked_immutable_history";
98
+ audit: "blocked_event";
99
+ immutableSnapshots: "retain_original";
100
+ };
63
101
  operatorSummary: string;
64
102
  dataSubjectSummary: string;
65
103
  trackingIssue: {
@@ -450,6 +488,12 @@ export type SiteManagementAPIEndpoints = {
450
488
  updateSiteAiProfile: APIEndpoint<SiteAiProfilePayload, {
451
489
  siteId: string;
452
490
  }, SiteAiProfileResponse>;
491
+ getSiteBusinessAddress: APIEndpoint<never, {
492
+ siteId: string;
493
+ }, SiteBusinessAddressResponse>;
494
+ updateSiteBusinessAddress: APIEndpoint<SiteBusinessAddressPayload, {
495
+ siteId: string;
496
+ }, SiteBusinessAddressResponse>;
453
497
  getSiteGenerationIntake: APIEndpoint<never, {
454
498
  siteId: string;
455
499
  }, SiteGenerationIntakeResponse>;
@@ -2,6 +2,20 @@ import type { Theme } from "@riverbankcms/blocks";
2
2
  import type { ListMediaAssetsResult, MediaAssetWithLabels } from "@riverbankcms/media-storage-supabase";
3
3
  import type { DbJson } from "@riverbankcms/db";
4
4
  import type { PageDesignEditorReadModel, PageDesignIntent, AppearancePresetId, BoundaryOptionId, DesignBlockId, LayoutVariantKey } from "@riverbankcms/theme-core/site-styles";
5
+ import type { ButtonPersonalityId } from "@riverbankcms/theme-core/buttons";
6
+ import type { PaletteOverrides, PaletteVariantId } from "@riverbankcms/theme-core/palette";
7
+ /**
8
+ * Round-trip shape for the Style configurator's persisted selections on the
9
+ * `saveSiteTheme` endpoint. Each field is optional independently so callers
10
+ * can update one decision at a time; `null` explicitly clears the selection
11
+ * (server falls back to the site style's default), distinct from omission
12
+ * which preserves the existing persisted value.
13
+ */
14
+ export type SiteThemeSelectionsPayload = {
15
+ buttonPersonalityId?: ButtonPersonalityId | null;
16
+ paletteVariantId?: PaletteVariantId | null;
17
+ paletteOverrides?: PaletteOverrides | null;
18
+ };
5
19
  import type { APIEndpoint } from "./apiEndpointTypes";
6
20
  import type { AnalyticsReportFilters, AnalyticsReportResponse } from "./analytics";
7
21
  import type { CreateMediaAssetBody, MediaAssetResponse, MediaAssetFileFilterContract, MediaBulkDeleteResponse, MediaClassifyJobResponse, MediaJobSummaryResponse, MediaLabelSummary, MediaSettingsResponse } from "./media";
@@ -127,7 +141,7 @@ export type SiteRuntimeAPIEndpoints = {
127
141
  themeId?: string | null;
128
142
  selectionId?: string | null;
129
143
  overrides?: Record<string, unknown> | null;
130
- }, {
144
+ } & SiteThemeSelectionsPayload, {
131
145
  siteId: string;
132
146
  }, {
133
147
  success: boolean;
@@ -136,6 +150,15 @@ export type SiteRuntimeAPIEndpoints = {
136
150
  savedAt: string;
137
151
  overrides: Record<string, unknown> | null;
138
152
  theme: Theme;
153
+ /**
154
+ * Persisted Style configurator selections. The client resolves
155
+ * compatibility locally via `compileSiteThemeFromSelections` and sends
156
+ * already-resolved IDs; this response echoes the row's stored state so
157
+ * the caller can refresh local state without a follow-up read.
158
+ */
159
+ buttonPersonalityId: ButtonPersonalityId | null;
160
+ paletteVariantId: PaletteVariantId | null;
161
+ paletteOverrides: PaletteOverrides | null;
139
162
  }>;
140
163
  uploadSiteLogo: APIEndpoint<UploadSiteLogoRequest, never, {
141
164
  path: string;
@@ -1,4 +1,5 @@
1
1
  import type { SiteFooterContent, SiteHeaderContent } from "@riverbankcms/blocks";
2
+ import type { BusinessAddress } from "@riverbankcms/core";
2
3
  import type { FooterMode } from "@riverbankcms/theme-core";
3
4
  import type { SiteBannerSettingsPayload } from "./siteBanner";
4
5
  export type SiteDeploymentMode = "managed" | "headless_cms" | "headless_full";
@@ -47,6 +48,12 @@ export type SiteLayoutSettingsPayload = {
47
48
  header: SiteHeaderContent;
48
49
  footer: SiteFooterContent;
49
50
  };
51
+ export type SiteBusinessAddressPayload = {
52
+ businessAddress: BusinessAddress | null;
53
+ };
54
+ export type SiteBusinessAddressResponse = {
55
+ businessAddress: BusinessAddress | null;
56
+ };
50
57
  export type SiteLayoutResolvedPayload = SiteLayoutSettingsPayload & {
51
58
  banner: SiteBannerSettingsPayload;
52
59
  logo?: {
@@ -39,7 +39,7 @@ export type { SiteBannerAnnouncementRole, SiteBannerCta, SiteBannerScope, SiteBa
39
39
  export type { SitePageBlock, SitePagePayload } from "./sitePages";
40
40
  export type { SiteAnalyticsCookieBannerCopyOverrides, SiteAnalyticsSettingsPayload, SiteAnalyticsSettingsResponse, } from "./siteAnalytics";
41
41
  export type { SiteLegalJurisdiction, SiteLegalProfilePayload, SensitiveClientRecordsConfirmationKey, SensitiveClientRecordsMode, SensitiveClientRecordsRetentionProfile, SensitiveClientRecordsSettings, SensitiveClientRecordsUpdatePayload, SitePrivacyPolicyCapabilities, SitePrivacyPolicyDocument, SitePrivacySettings, SitePrivacySettingsPayload, SitePrivacySettingsResponse, SiteRuntimePrivacyPolicy, SitePrivacyPolicySection, } from "./privacyPolicy";
42
- export type { MaintenanceSettingsPayload, MaintenanceSettingsResponse, SiteDeploymentMode, SiteFooterBlocksEditorBlock, SiteFooterBlocksEditorResponse, SiteGeneralSettingsPayload, SiteGeneralSettingsResponse, SiteLayoutResolvedPayload, SiteLayoutSettingsPayload, SiteLayoutSettingsResponse, UpdateSiteDeploymentModePayload, UpdateSiteDeploymentModeResponse, UpdateSiteFooterBlocksPayload, UpdateSiteFooterBlocksResponse, } from "./siteSettings";
42
+ export type { MaintenanceSettingsPayload, MaintenanceSettingsResponse, SiteBusinessAddressPayload, SiteBusinessAddressResponse, SiteDeploymentMode, SiteFooterBlocksEditorBlock, SiteFooterBlocksEditorResponse, SiteGeneralSettingsPayload, SiteGeneralSettingsResponse, SiteLayoutResolvedPayload, SiteLayoutSettingsPayload, SiteLayoutSettingsResponse, UpdateSiteDeploymentModePayload, UpdateSiteDeploymentModeResponse, UpdateSiteFooterBlocksPayload, UpdateSiteFooterBlocksResponse, } from "./siteSettings";
43
43
  export type { BillingCheckoutRequest, BillingCheckoutResponse, BillingStatusResponse, BillingSummaryResponse, SiteBillingCheckoutResponse, SiteBillingCostResponse, StripeAutomaticTaxIssue, StripeAutomaticTaxReadiness, StripeAutomaticTaxStatus, StripeConnectDisconnectResponse, StripeConnectRestrictions, StripeConnectStartResponse, StripeConnectStatusResponse, UpdateStripeAutomaticTaxRequest, } from "./billing";
44
44
  export type { AiGenerateSiteEntityType, AiGenerateSitePrimaryCta, AiGenerateSiteRequest, AiGenerateSiteResponse, } from "./siteGeneration";
45
45
  export { SITE_ROLE_DISPLAY_ORDER, SITE_ROLE_PERMISSION_LEVEL } from "./siteMembers";
@@ -1,6 +1,7 @@
1
1
  import { type BlockManifest } from "../manifest/schema";
2
2
  import type { SystemBlockDefinition } from "../registry";
3
3
  import type { SectionStylesContent } from "../fields/boxStyles";
4
+ import { type LocationMapSource } from "../runtime/nodes/location-map.shared";
4
5
  type LocationMapContentValue = Readonly<{
5
6
  addressText?: string | null;
6
7
  lat?: number | null;
@@ -8,6 +9,8 @@ type LocationMapContentValue = Readonly<{
8
9
  }>;
9
10
  export type LocationMapContent = {
10
11
  heading?: string | null;
12
+ locationSource?: LocationMapSource | null;
13
+ venueId?: string | null;
11
14
  location?: LocationMapContentValue | null;
12
15
  showAddressText?: boolean | null;
13
16
  showDirections?: boolean | null;
@@ -5,5 +5,6 @@ export type SiteFooterVariant = "simple" | "columns" | "split";
5
5
  export type SiteFooterContent = {
6
6
  bodyText?: unknown;
7
7
  bottomText?: unknown;
8
+ showBusinessAddress?: boolean | null;
8
9
  };
9
10
  export declare const siteFooterBlockDefinition: SystemBlockDefinition<SiteFooterContent>;
@@ -4,6 +4,10 @@ export type LocationMapProps = Readonly<{
4
4
  blockId?: string | null;
5
5
  className?: string | null;
6
6
  location?: LocationMapValueInput | null;
7
+ businessAddress?: LocationMapValueInput | null;
8
+ locationSource?: string | null;
9
+ venueId?: string | null;
10
+ venuesById?: Record<string, unknown> | null;
7
11
  zoom?: number | string | null;
8
12
  heightPx?: number | string | null;
9
13
  showAddressText?: boolean | string | null;
@@ -18,9 +18,28 @@ export declare const LOCATION_MAP_LIMITS: {
18
18
  };
19
19
  export type LocationMapValueInput = Readonly<{
20
20
  addressText?: string | null;
21
+ displayAddress?: string | null;
21
22
  lat?: number | string | null;
22
23
  lng?: number | string | null;
23
24
  }>;
25
+ export type LocationMapSource = 'business_address' | 'venue' | 'custom';
26
+ export type LocationMapUnresolvedReason = 'missing_custom_location' | 'missing_business_address' | 'missing_venue_id' | 'missing_venue_location';
27
+ export type LocationMapLocationsByVenueId = Readonly<Record<string, unknown>>;
28
+ export type ResolvedLocationMapLocation = Readonly<{
29
+ kind: 'custom';
30
+ locationValue: NormalizedLocationMapValue;
31
+ }> | Readonly<{
32
+ kind: 'business_address';
33
+ locationValue: NormalizedLocationMapValue;
34
+ }> | Readonly<{
35
+ kind: 'venue';
36
+ venueId: string;
37
+ locationValue: NormalizedLocationMapValue;
38
+ }> | Readonly<{
39
+ kind: 'unresolved';
40
+ source: LocationMapSource;
41
+ reason: LocationMapUnresolvedReason;
42
+ }>;
24
43
  export type NormalizedLocationMapValue = AddressedLocationValue;
25
44
  export type LocationMapHydrationProps = Readonly<{
26
45
  location?: NormalizedLocationMapValue | null;
@@ -32,7 +51,9 @@ export type LocationMapHydrationProps = Readonly<{
32
51
  className?: string | null;
33
52
  }>;
34
53
  export type NormalizedLocationMapProps = Readonly<{
54
+ resolvedLocation: ResolvedLocationMapLocation;
35
55
  locationValue: NormalizedLocationMapValue | null;
56
+ unresolvedMessage: string | null;
36
57
  addressText: string | null;
37
58
  location: LocationCoordinates | null;
38
59
  zoom: number;
@@ -43,8 +64,21 @@ export type NormalizedLocationMapProps = Readonly<{
43
64
  className: string | null;
44
65
  }>;
45
66
  export declare function normalizeLocationMapValue(value: unknown): NormalizedLocationMapValue | null;
67
+ export declare function normalizeLocationMapSource(value: LocationMapSource | string | null | undefined): LocationMapSource;
68
+ export declare function resolveLocationMapLocation(input: {
69
+ location?: unknown;
70
+ businessAddress?: unknown;
71
+ locationSource?: LocationMapSource | string | null;
72
+ venueId?: string | null;
73
+ venuesById?: LocationMapLocationsByVenueId | null;
74
+ }): ResolvedLocationMapLocation;
75
+ export declare function describeUnresolvedLocationMapLocation(resolvedLocation: ResolvedLocationMapLocation): string | null;
46
76
  export declare function normalizeLocationMapProps(input: {
47
77
  location?: unknown;
78
+ businessAddress?: unknown;
79
+ locationSource?: LocationMapSource | string | null;
80
+ venueId?: string | null;
81
+ venuesById?: LocationMapLocationsByVenueId | null;
48
82
  zoom?: number | string | null;
49
83
  heightPx?: number | string | null;
50
84
  showAddressText?: boolean | string | null;
@@ -54,6 +88,10 @@ export declare function normalizeLocationMapProps(input: {
54
88
  }): NormalizedLocationMapProps;
55
89
  export declare function toLocationMapHydrationProps(input: {
56
90
  location?: unknown;
91
+ businessAddress?: unknown;
92
+ locationSource?: LocationMapSource | string | null;
93
+ venueId?: string | null;
94
+ venuesById?: Record<string, unknown> | null;
57
95
  zoom?: number | string | null;
58
96
  heightPx?: number | string | null;
59
97
  showAddressText?: boolean | string | null;
@@ -15,7 +15,8 @@ export type LocationMapViewProps = Readonly<{
15
15
  showAddressText: boolean;
16
16
  showDirections: boolean;
17
17
  directionsLabel: string;
18
+ unresolvedMessage?: string | null;
18
19
  renderMap?: (args: RenderMapArgs) => React.ReactNode;
19
20
  }>;
20
- export declare function LocationMapView({ addressText, location, zoom, heightPx, showAddressText, showDirections, directionsLabel, renderMap, }: LocationMapViewProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function LocationMapView({ addressText, location, zoom, heightPx, showAddressText, showDirections, directionsLabel, unresolvedMessage, renderMap, }: LocationMapViewProps): import("react/jsx-runtime").JSX.Element;
21
22
  export {};
@@ -0,0 +1,38 @@
1
+ export type BusinessAddressDraft = Readonly<{
2
+ addressLine1?: string | null;
3
+ addressLine2?: string | null;
4
+ locality?: string | null;
5
+ region?: string | null;
6
+ postalCode?: string | null;
7
+ countryCode?: string | null;
8
+ displayAddress?: string | null;
9
+ lat?: number | null;
10
+ lng?: number | null;
11
+ }>;
12
+ export type BusinessAddress = Readonly<{
13
+ addressLine1: string;
14
+ addressLine2: string | null;
15
+ locality: string;
16
+ region: string | null;
17
+ postalCode: string | null;
18
+ countryCode: string;
19
+ displayAddress: string;
20
+ lat: number;
21
+ lng: number;
22
+ }>;
23
+ export type BusinessAddressValidationErrorCode = 'missing_address_line_1' | 'missing_locality' | 'missing_country_code' | 'missing_display_address' | 'missing_latitude' | 'missing_longitude' | 'invalid_latitude' | 'invalid_longitude';
24
+ export type BusinessAddressValidationResult = Readonly<{
25
+ success: true;
26
+ address: BusinessAddress;
27
+ }> | Readonly<{
28
+ success: false;
29
+ errors: readonly BusinessAddressValidationErrorCode[];
30
+ }>;
31
+ export declare function buildBusinessAddressDisplayText(input: BusinessAddressDraft): string | null;
32
+ export declare function validateBusinessAddressDraft(input: BusinessAddressDraft): BusinessAddressValidationResult;
33
+ export declare function isCompleteBusinessAddress(value: BusinessAddressDraft | null | undefined): value is BusinessAddress;
34
+ export declare function businessAddressToAddressedLocation(address: BusinessAddress | null | undefined): Readonly<{
35
+ addressText: string | null;
36
+ lat: number | null;
37
+ lng: number | null;
38
+ }> | null;
@@ -10,6 +10,7 @@ export * from "./booking-date-time";
10
10
  export * from "./person-records";
11
11
  export * from "./rectification";
12
12
  export * from "./location";
13
+ export * from "./business-address";
13
14
  export * from "./result";
14
15
  export { assertNever } from "./assert-never";
15
16
  export { tryAsync } from "./try-async";
@@ -8311,6 +8311,7 @@ export type Database = {
8311
8311
  reply_to_email: string | null;
8312
8312
  sender_address_line_1: string | null;
8313
8313
  sender_address_line_2: string | null;
8314
+ sender_address_source: string;
8314
8315
  sender_city: string | null;
8315
8316
  sender_country: string | null;
8316
8317
  sender_display_name: string | null;
@@ -8332,6 +8333,7 @@ export type Database = {
8332
8333
  reply_to_email?: string | null;
8333
8334
  sender_address_line_1?: string | null;
8334
8335
  sender_address_line_2?: string | null;
8336
+ sender_address_source?: string;
8335
8337
  sender_city?: string | null;
8336
8338
  sender_country?: string | null;
8337
8339
  sender_display_name?: string | null;
@@ -8353,6 +8355,7 @@ export type Database = {
8353
8355
  reply_to_email?: string | null;
8354
8356
  sender_address_line_1?: string | null;
8355
8357
  sender_address_line_2?: string | null;
8358
+ sender_address_source?: string;
8356
8359
  sender_city?: string | null;
8357
8360
  sender_country?: string | null;
8358
8361
  sender_display_name?: string | null;
@@ -11716,6 +11719,7 @@ export type Database = {
11716
11719
  banner_settings: Json;
11717
11720
  billing_settings: Json | null;
11718
11721
  booking_settings: Json;
11722
+ business_address: Json | null;
11719
11723
  created_at: string;
11720
11724
  favicon_asset_id: string | null;
11721
11725
  footer_content_json: Json;
@@ -11742,6 +11746,7 @@ export type Database = {
11742
11746
  banner_settings?: Json;
11743
11747
  billing_settings?: Json | null;
11744
11748
  booking_settings?: Json;
11749
+ business_address?: Json | null;
11745
11750
  created_at?: string;
11746
11751
  favicon_asset_id?: string | null;
11747
11752
  footer_content_json?: Json;
@@ -11768,6 +11773,7 @@ export type Database = {
11768
11773
  banner_settings?: Json;
11769
11774
  billing_settings?: Json | null;
11770
11775
  booking_settings?: Json;
11776
+ business_address?: Json | null;
11771
11777
  created_at?: string;
11772
11778
  favicon_asset_id?: string | null;
11773
11779
  footer_content_json?: Json;
@@ -12010,30 +12016,39 @@ export type Database = {
12010
12016
  };
12011
12017
  site_theme_selections: {
12012
12018
  Row: {
12019
+ button_personality_id: string | null;
12013
12020
  created_at: string;
12014
12021
  id: string;
12015
12022
  is_current: boolean;
12016
12023
  overrides: Json;
12024
+ palette_overrides: Json | null;
12025
+ palette_variant_id: string | null;
12017
12026
  site_id: string;
12018
12027
  theme_id: string;
12019
12028
  updated_at: string;
12020
12029
  user_id: string;
12021
12030
  };
12022
12031
  Insert: {
12032
+ button_personality_id?: string | null;
12023
12033
  created_at?: string;
12024
12034
  id?: string;
12025
12035
  is_current?: boolean;
12026
12036
  overrides?: Json;
12037
+ palette_overrides?: Json | null;
12038
+ palette_variant_id?: string | null;
12027
12039
  site_id: string;
12028
12040
  theme_id: string;
12029
12041
  updated_at?: string;
12030
12042
  user_id: string;
12031
12043
  };
12032
12044
  Update: {
12045
+ button_personality_id?: string | null;
12033
12046
  created_at?: string;
12034
12047
  id?: string;
12035
12048
  is_current?: boolean;
12036
12049
  overrides?: Json;
12050
+ palette_overrides?: Json | null;
12051
+ palette_variant_id?: string | null;
12037
12052
  site_id?: string;
12038
12053
  theme_id?: string;
12039
12054
  updated_at?: string;
@@ -13914,6 +13929,13 @@ export type Database = {
13914
13929
  waitlist_position: number;
13915
13930
  }[];
13916
13931
  };
13932
+ create_media_asset_with_storage_quota: {
13933
+ Args: {
13934
+ p_asset: Json;
13935
+ p_max_bytes: number;
13936
+ };
13937
+ Returns: string;
13938
+ };
13917
13939
  create_order_shipment_atomic: {
13918
13940
  Args: {
13919
13941
  p_carrier_name?: string;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Sequence-numbered runner for optimistic save flows where the user can fire
3
+ * the next action before the previous save resolves. Each invocation gets a
4
+ * fresh sequence number from a shared `nextSequence` callback; the runner
5
+ * only commits success / failure when its sequence is still the latest.
6
+ *
7
+ * Used by the Style configurator: tapping personality A then quickly tapping
8
+ * personality B should land B's save even if A's network round-trip is
9
+ * slower, and A's late-arriving response must not clobber B's local state.
10
+ */
11
+ export type OptimisticActionRun<TSuccess> = Readonly<{
12
+ /**
13
+ * Pure result computed locally before the network call fires (the
14
+ * optimistic "this is what the world will look like" snapshot). Skipped
15
+ * if the runner has already been superseded.
16
+ */
17
+ optimistic?: () => void;
18
+ /** The network call. Resolves with the persisted payload. */
19
+ network: () => Promise<TSuccess>;
20
+ /**
21
+ * Invoked when `network` resolves AND this run is still the latest.
22
+ * Stale runs swallow the success silently — the next run will reconcile.
23
+ */
24
+ onSuccess: (success: TSuccess) => void;
25
+ /**
26
+ * Invoked when `network` rejects AND this run is still the latest. Stale
27
+ * failures are ignored on the same principle.
28
+ */
29
+ onError: (error: unknown) => void;
30
+ }>;
31
+ export type OptimisticActionRunner = Readonly<{
32
+ /** Schedule a new run; returns its sequence number for debugging / tests. */
33
+ run: <TSuccess>(action: OptimisticActionRun<TSuccess>) => Promise<number>;
34
+ /** Force the runner into a known sequence — useful for unmount sentinels. */
35
+ invalidate: () => void;
36
+ /** Read the latest sequence. Test/debug only; UI should not branch on it. */
37
+ current: () => number;
38
+ }>;
39
+ /**
40
+ * Create a runner. The runner is stateful (holds the latest sequence)
41
+ * but the inputs to each `run` call are pure data — so individual actions
42
+ * remain easy to unit-test by stubbing `network`.
43
+ */
44
+ export declare function createOptimisticActionRunner(): OptimisticActionRunner;