@wix/himalaya-cli 0.1534.0 → 0.1535.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.
@@ -123,12 +123,6 @@
123
123
  "kind": "reexport",
124
124
  "jsdoc": "",
125
125
  "decl": "export {\n validate,\n isValid as isValidValue,\n validators,\n validateAll,\n type ValidationFailure,\n type ValidationFailureRule,\n} from \"@himalaya/core/validation\";"
126
- },
127
- {
128
- "name": "'./connectivity.js'",
129
- "kind": "reexport",
130
- "jsdoc": "",
131
- "decl": "export { connectivity, requireConnectivity } from './connectivity.js';"
132
126
  }
133
127
  ]
134
128
  },
@@ -1137,7 +1131,7 @@
1137
1131
  "name": "TopBarConfig",
1138
1132
  "kind": "interface",
1139
1133
  "jsdoc": "/** The shell-owned top bar. The shell paints\n * `ScreenDescriptor.title` and computes the leading slot (back XOR menu) from\n * nav depth; this adds the trailing action cluster + leading/style overrides.\n * Lives on `ScreenDescriptor.topBar` (authoritative) and\n * `NavigationConfig.topBarDefault` (app-level fallback, fully replaced). */",
1140
- "decl": "export interface TopBarConfig {\n /** Trailing (right-edge) actions, authored order = leading→trailing. */\n actions?: TopBarAction[];\n /** Leading override: \"\" | \"auto\" (shell-computed) | \"back\" | \"menu\" | \"none\". */\n leading?: string;\n /** Content-under-bar: \"\" | \"opaque\" (default) | \"transparent\" | \"immersive\". */\n style?: string;\n /** Toolbar items (drawn after the legacy `actions`). */\n items?: ToolbarItem[];\n /** \"\" / \"automatic\" (default) | \"large\" | \"inline\". */\n titleDisplay?: string;\n /** The literal subtitle (the fallback for `subtitlePath`). */\n subtitle?: string;\n /** \"\" / \"visible\" (default) | \"hidden\". */\n visibility?: string;\n /** Bar fill token. iOS 26 keeps the system glass (amendment R12). */\n background?: TokenRef;\n /** \"Native top-bar search\" — the screen's search, drawn by whoever draws its bar natively (an embed's host\n * today: iOS `himalayaEmbedSearch`, Android `ProvideHimalayaEmbedSearch`). Read per screen only. */\n searchable?: SearchableConfig;\n /** amendment — the screen's logo; overrides `NavigationConfig.topBarLogo`. */\n logo?: TopBarLogo;\n /** amendment — the title as a menu. */\n titleMenu?: TopBarTitleMenu;\n /** amendment — live subtitle (`$service:`); `subtitle` is the fallback. */\n subtitlePath?: string;\n /** amendment — \"\" / \"pinned\" (default) | \"hide_on_scroll\". */\n scrollBehavior?: string;\n /** amendment — truthy ⇒ leaving the presentation asks to discard. Unset/unresolved ⇒ false. */\n dirtyPath?: string;\n /** amendment — live `visibility` (`$service:`). Resolves to \"visible\" | \"hidden\";\n * anything else, or unresolved, falls back to `visibility`. Not a truthy boolean. */\n visibilityPath?: string;\n}"
1134
+ "decl": "export interface TopBarConfig {\n /** Trailing (right-edge) actions, authored order = leading→trailing. */\n actions?: TopBarAction[];\n /** Leading override: \"\" | \"auto\" (shell-computed) | \"back\" | \"menu\" | \"none\". */\n leading?: string;\n /** Content-under-bar: \"\" | \"opaque\" (default) | \"transparent\" | \"immersive\". */\n style?: string;\n /** Toolbar items (drawn after the legacy `actions`). */\n items?: ToolbarItem[];\n /** \"\" / \"automatic\" (default) | \"large\" | \"inline\". */\n titleDisplay?: string;\n /** The literal subtitle (the fallback for `subtitlePath`). */\n subtitle?: string;\n /** \"\" / \"visible\" (default) | \"hidden\". */\n visibility?: string;\n /** Bar fill token. iOS 26 keeps the system glass (amendment R12). */\n background?: TokenRef;\n /** \"Native top-bar search\" — the screen's search, drawn by whoever draws its bar natively (an embed's host\n * today: iOS `himalayaEmbedSearch`, Android `ProvideHimalayaEmbedSearch`). Read per screen only. */\n searchable?: SearchableConfig;\n /** amendment — the screen's logo; overrides `NavigationConfig.topBarLogo`. */\n logo?: TopBarLogo;\n /** amendment — the title as a menu. */\n titleMenu?: TopBarTitleMenu;\n /** amendment — live subtitle (`$service:`); `subtitle` is the fallback. */\n subtitlePath?: string;\n /** amendment — \"\" / \"pinned\" (default) | \"hide_on_scroll\". */\n scrollBehavior?: string;\n /** amendment — truthy ⇒ leaving the presentation asks to discard. Unset/unresolved ⇒ false. */\n dirtyPath?: string;\n}"
1141
1135
  },
1142
1136
  {
1143
1137
  "name": "SplashConfig",
@@ -1203,7 +1197,7 @@
1203
1197
  "name": "ToolbarItem",
1204
1198
  "kind": "interface",
1205
1199
  "jsdoc": "/** One top-bar item. Test id `toolbar.<id>`\n * (`toolbar-<id>` on web and React Native). Every tap carries an existing `Action`\n *. Bindings are `$service:` sentinels resolved by the screen host. */",
1206
- "decl": "export interface ToolbarItem {\n id: string;\n /** \"leading\" | \"trailing\" (default) | \"principal\" | \"bottom\" | \"keyboard\" | \"overflow\". */\n placement?: string;\n /** Text button when there is no icon; the accessible name always. */\n label?: string;\n icon?: IconRef;\n onTap?: Action;\n /** \"\" | \"cancel\" | \"confirm\" | \"destructive\". */\n role?: string;\n disabled?: boolean;\n /** OR'd with `disabled`. For Save, bind \"nothing to save\" (e.g. `cannotSave`), never the dirty flag. */\n disabledPath?: string;\n /** Non-empty ⇒ the item opens a menu. */\n menu?: MenuItem[];\n /** \"principal\" only: a custom title view. */\n content?: Component;\n /** Truthy ⇒ a progress indicator replaces the item. Unset/unresolved ⇒ false. */\n loadingPath?: string;\n /** Set ⇒ the item draws an avatar; `label` stays the accessible name (\"Profile\" by default). */\n avatar?: ToolbarAvatar;\n /** Live label; `label` is the fallback. */\n labelPath?: string;\n /** Long press (touch), secondary click (pointer) or the \"More options\" accessibility action.\n * Never also fires `onTap`; ignored while disabled or loading, in More Actions, and with a `menu`. */\n onLongPress?: Action;\n}"
1200
+ "decl": "export interface ToolbarItem {\n id: string;\n /** \"leading\" | \"trailing\" (default) | \"principal\" | \"bottom\" | \"keyboard\" | \"overflow\". */\n placement?: string;\n /** Text button when there is no icon; the accessible name always. */\n label?: string;\n icon?: IconRef;\n onTap?: Action;\n /** \"\" | \"cancel\" | \"confirm\" | \"destructive\". */\n role?: string;\n disabled?: boolean;\n /** OR'd with `disabled`. For Save, bind \"nothing to save\" (e.g. `cannotSave`), never the dirty flag. */\n disabledPath?: string;\n /** Non-empty ⇒ the item opens a menu. */\n menu?: MenuItem[];\n /** \"principal\" only: a custom title view. */\n content?: Component;\n /** Truthy ⇒ a progress indicator replaces the item. Unset/unresolved ⇒ false. */\n loadingPath?: string;\n /** Set ⇒ the item draws an avatar; `label` stays the accessible name (\"Profile\" by default). */\n avatar?: ToolbarAvatar;\n /** Live label; `label` is the fallback. */\n labelPath?: string;\n}"
1207
1201
  },
1208
1202
  {
1209
1203
  "name": "ToolbarAvatar",
@@ -1993,7 +1987,7 @@
1993
1987
  "name": "IAP_CATALOG_KINDS",
1994
1988
  "kind": "const",
1995
1989
  "jsdoc": "/** The Wix entity types `himi store iap` writes into its Wix→Apple mapping, so a mapping\n * backend can serve that export without translating kinds. */",
1996
- "decl": "export const IAP_CATALOG_KINDS = [\"onlineProgram\", \"storesProduct\", \"pricingPlan\", \"bookingsService\", \"eventsTicket\"] as const;"
1990
+ "decl": "export const IAP_CATALOG_KINDS = [\"onlineProgram\", \"storesProduct\", \"pricingPlan\"] as const;"
1997
1991
  },
1998
1992
  {
1999
1993
  "name": "IapCatalogKind",
@@ -2125,19 +2119,7 @@
2125
2119
  "name": "AppleSaleRule",
2126
2120
  "kind": "interface",
2127
2121
  "jsdoc": "/** How the App Store sells one vertical's Wix item: the purchases catalog's `appProductId` for it, and\n * the only product type the purchase flow sells it as. */",
2128
- "decl": "export interface AppleSaleRule {\n appProductId(entityId: string): string;\n productType: \"NON_CONSUMABLE\" | \"CONSUMABLE\";\n}"
2129
- },
2130
- {
2131
- "name": "BOOKINGS_APPLE_SALES_ENABLED",
2132
- "kind": "const",
2133
- "jsdoc": "",
2134
- "decl": "export const BOOKINGS_APPLE_SALES_ENABLED = false;"
2135
- },
2136
- {
2137
- "name": "EVENTS_APPLE_SALES_ENABLED",
2138
- "kind": "const",
2139
- "jsdoc": "",
2140
- "decl": "export const EVENTS_APPLE_SALES_ENABLED = false;"
2122
+ "decl": "export interface AppleSaleRule {\n appProductId(entityId: string): string;\n productType: \"NON_CONSUMABLE\";\n}"
2141
2123
  },
2142
2124
  {
2143
2125
  "name": "STORES_ITEM_PAYMENT_ENABLED",
@@ -2163,17 +2145,11 @@
2163
2145
  "jsdoc": "/** One-time unlimited plans sell through the App Store. Proven live in Sandbox on 2026-10-19: a member's\n * online plan order is charged with one cashier item whose id is the plan id, so StartPayment maps it to the\n * plan's Apple product, and the order reads ACTIVE and PAID. Recurring and time-limited plans stay outside\n * this rule; their Billing lifecycle is unfinished. */",
2164
2146
  "decl": "export const PRICING_PLAN_APPLE_SALES_ENABLED = true;"
2165
2147
  },
2166
- {
2167
- "name": "AppleSaleOptions",
2168
- "kind": "interface",
2169
- "jsdoc": "/**\n * The one definition `himi store iap connect` writes mappings by and the mapping source reads them by,\n * keyed by catalog kind. wix-iap StartPayment maps the cashier order's single item id, and Online\n * Programs builds that order with the program id as the item id; programs are one-time unlocks.\n * Wix Stores and one-time unlimited Pricing Plans join only with their independent switches.\n */",
2170
- "decl": "export interface AppleSaleOptions {\n storesAppleSalesEnabled?: boolean;\n storesItemPaymentEnabled?: boolean;\n pricingPlanAppleSalesEnabled?: boolean;\n bookingsAppleSalesEnabled?: boolean;\n eventsAppleSalesEnabled?: boolean;\n}"
2171
- },
2172
2148
  {
2173
2149
  "name": "appleSaleRules",
2174
2150
  "kind": "function",
2175
- "jsdoc": "/** Resolves runtime sale eligibility independently from the catalog's provisioning support. */",
2176
- "decl": "export function appleSaleRules(options: AppleSaleOptions = {}): Readonly<Record<string, AppleSaleRule>>;"
2151
+ "jsdoc": "/**\n * The one definition `himi store iap connect` writes mappings by and the mapping source reads them by,\n * keyed by catalog kind. wix-iap StartPayment maps the cashier order's single item id, and Online\n * Programs builds that order with the program id as the item id; programs are one-time unlocks.\n * Wix Stores and one-time unlimited Pricing Plans join only with their independent switches.\n */",
2152
+ "decl": "export function appleSaleRules(options: { storesAppleSalesEnabled?: boolean; storesItemPaymentEnabled?: boolean; pricingPlanAppleSalesEnabled?: boolean } = {}): Readonly<Record<string, AppleSaleRule>>;"
2177
2153
  },
2178
2154
  {
2179
2155
  "name": "APPLE_SALE_RULES",
@@ -2181,12 +2157,6 @@
2181
2157
  "jsdoc": "",
2182
2158
  "decl": "export const APPLE_SALE_RULES = appleSaleRules();"
2183
2159
  },
2184
- {
2185
- "name": "APPLE_PROVISIONING_RULES",
2186
- "kind": "const",
2187
- "jsdoc": "/** Catalog setup may precede activation; purchases still require the independent sales switches. */",
2188
- "decl": "export const APPLE_PROVISIONING_RULES: Readonly<Record<string, AppleSaleRule>> = {\n ...APPLE_SALE_RULES, bookingsService: ATTENDANCE_SALE_RULE, eventsTicket: ATTENDANCE_SALE_RULE,\n};"
2189
- },
2190
2160
  {
2191
2161
  "name": "HostCallExpectation",
2192
2162
  "kind": "interface",
@@ -2227,7 +2197,7 @@
2227
2197
  "name": "StartPaymentErrorCode",
2228
2198
  "kind": "type",
2229
2199
  "jsdoc": "",
2230
- "decl": "export type StartPaymentErrorCode = \"NOT_PENDING\" | \"WRONG_PAYMENT_METHOD\" | \"NOT_ORDER_BUYER\" | \"UNSUPPORTED_ORDER\"\n | \"PRODUCT_NOT_AVAILABLE\" | \"ALREADY_OWNED\" | \"APP_NOT_CONFIGURED\" | \"SUBSCRIPTION_NOT_IN_APP\" | \"ALREADY_SUBSCRIBED\";"
2200
+ "decl": "export type StartPaymentErrorCode = \"NOT_PENDING\" | \"WRONG_PAYMENT_METHOD\" | \"NOT_ORDER_BUYER\" | \"UNSUPPORTED_ORDER\"\n | \"PRODUCT_NOT_AVAILABLE\" | \"ALREADY_OWNED\";"
2231
2201
  },
2232
2202
  {
2233
2203
  "name": "StartItemPaymentErrorCode",
@@ -2358,54 +2328,6 @@
2358
2328
  "jsdoc": "/** Whether the host fences protected calls to the captured member (`identityBound`). Web does not. */",
2359
2329
  "decl": "export function readIdentityBound(): boolean;"
2360
2330
  },
2361
- {
2362
- "name": "AppleAttendanceRoute",
2363
- "kind": "type",
2364
- "jsdoc": "",
2365
- "decl": "export type AppleAttendanceRoute = \"appleIap\" | \"wixPayments\" | \"decide\";"
2366
- },
2367
- {
2368
- "name": "BookingAttendance",
2369
- "kind": "interface",
2370
- "jsdoc": "",
2371
- "decl": "export interface BookingAttendance extends AttendancePrice {\n kind: \"bookingsService\";\n type?: string;\n capacity?: number;\n maxParticipantsPerBooking?: number;\n conferencing?: boolean;\n locations?: readonly string[];\n onlineBooking?: boolean;\n onlinePayment?: boolean;\n deposit?: boolean;\n}"
2372
- },
2373
- {
2374
- "name": "TicketAttendance",
2375
- "kind": "interface",
2376
- "jsdoc": "",
2377
- "decl": "export interface TicketAttendance extends AttendancePrice {\n kind: \"eventsTicket\";\n location?: string;\n registration?: string;\n eventStatus?: string;\n saleStatus?: string;\n}"
2378
- },
2379
- {
2380
- "name": "classifyForApple",
2381
- "kind": "function",
2382
- "jsdoc": "/** Delivery metadata decides the route; online booking and online payment alone never do. */",
2383
- "decl": "export function classifyForApple(item: BookingAttendance | TicketAttendance, currency: string): AppleAttendanceRoute;"
2384
- },
2385
- {
2386
- "name": "attendanceCheckoutRoute",
2387
- "kind": "function",
2388
- "jsdoc": "/** Applies platform support and activation switches without sending uncertain iOS offers to web checkout. */",
2389
- "decl": "export function attendanceCheckoutRoute(item: BookingAttendance | TicketAttendance, currency: string, platform: string): \"regular\" | \"appleIap\" | \"blocked\";"
2390
- },
2391
- {
2392
- "name": "bookingAttendanceOf",
2393
- "kind": "function",
2394
- "jsdoc": "/** Preserves missing Wix service fields as unknown so absent metadata cannot authorize a payment route. */",
2395
- "decl": "export function bookingAttendanceOf(raw: unknown): BookingAttendance;"
2396
- },
2397
- {
2398
- "name": "ticketAttendanceOf",
2399
- "kind": "function",
2400
- "jsdoc": "/** Combines event delivery and ticket-definition pricing metadata for conservative route classification. */",
2401
- "decl": "export function ticketAttendanceOf(event: unknown, definition: unknown): TicketAttendance;"
2402
- },
2403
- {
2404
- "name": "availableTicketAttendanceOf",
2405
- "kind": "function",
2406
- "jsdoc": "/** Reads the buyer-visible checkout projection; hidden/off-sale inclusions and unknown pricing stay unresolved. */",
2407
- "decl": "export function availableTicketAttendanceOf(event: unknown, ticket: unknown): TicketAttendance;"
2408
- },
2409
2331
  {
2410
2332
  "name": "ProductType",
2411
2333
  "kind": "type",
@@ -2523,7 +2445,7 @@
2523
2445
  {
2524
2446
  "name": "purchaseForVerification",
2525
2447
  "kind": "function",
2526
- "jsdoc": "/** Apple consumables and non-consumables. The token comes from authenticated backend context.\n * Leaves the transaction unfinished. Never falls back to legacy purchase on old binaries. */",
2448
+ "jsdoc": "/** Apple non-consumables only. The token comes from authenticated backend context.\n * Leaves the transaction unfinished. Never falls back to legacy purchase on old binaries. */",
2527
2449
  "decl": "export async function purchaseForVerification(input: { productId: string; appAccountToken: string }): Promise<VerificationPurchaseResult>;"
2528
2450
  },
2529
2451
  {
@@ -2585,7 +2507,7 @@
2585
2507
  "name": "\"./iap-verticals/index.js\"",
2586
2508
  "kind": "reexport",
2587
2509
  "jsdoc": "",
2588
- "decl": "export { onlineProgramOrders, pricingPlanOrders, storesProductOrders, bookingOrders, eventTicketOrders, classifyCart } from \"./iap-verticals/index.js\";"
2510
+ "decl": "export { onlineProgramOrders, pricingPlanOrders, storesProductOrders, classifyCart } from \"./iap-verticals/index.js\";"
2589
2511
  },
2590
2512
  {
2591
2513
  "name": "\"./order-refs.js\"",
@@ -2681,7 +2603,7 @@
2681
2603
  "name": "IapOrderItem",
2682
2604
  "kind": "interface",
2683
2605
  "jsdoc": "/** One item a screen sells. `reference` is the same catalog reference its price came from. */",
2684
- "decl": "export interface IapOrderItem {\n reference: CatalogReference;\n /** One intentional purchase; reuse on retries, replace only for an explicit new purchase. */\n attemptId?: string;\n /** Ephemeral selection and form answers; never written to order references or screen state. */\n attendance?: {\n amount: string;\n currency: string;\n booking?: { slot: Record<string, unknown>; contactDetails: Record<string, unknown>; formInfo?: Record<string, unknown> };\n ticket?: { eventId: string; buyer: Record<string, unknown>; guests?: Record<string, unknown>[]; buyerSubmission?: Record<string, unknown>; guestSubmissions?: Record<string, unknown>[] };\n };\n /** eCom catalog reference, required for a Wix Stores item. */\n catalogReference?: { appId: string; catalogItemId: string; options?: Record<string, unknown> };\n /** Only 1 is supported. */\n quantity?: number;\n}"
2606
+ "decl": "export interface IapOrderItem {\n reference: CatalogReference;\n /** eCom catalog reference, required for a Wix Stores item. */\n catalogReference?: { appId: string; catalogItemId: string; options?: Record<string, unknown> };\n /** Only 1 is supported. */\n quantity?: number;\n}"
2685
2607
  },
2686
2608
  {
2687
2609
  "name": "VerticalRef",
@@ -2699,7 +2621,7 @@
2699
2621
  "name": "OrderAttempt",
2700
2622
  "kind": "type",
2701
2623
  "jsdoc": "/** `open`: a pending order the cashier can charge. `granted`: the vertical already gives the\n * member access, so nothing is sold. */",
2702
- "decl": "export type OrderAttempt = (\n /** `placed`: the order was created by this call, so it cannot have a charge yet. Only an adapter\n * that never returns an existing order may say so; an order it reuses must be listed first. */\n | { status: \"open\"; cashierOrderId: string; verticalRef: VerticalRef; placed?: boolean }\n | { status: \"granted\" }\n | { status: \"refused\"; reason: OrderFailureCode }\n | { status: \"unavailable\" }\n | { status: \"sessionChanged\" }) & { noOrderCreated?: true };"
2624
+ "decl": "export type OrderAttempt =\n | { status: \"open\"; cashierOrderId: string; verticalRef: VerticalRef }\n | { status: \"granted\" }\n | { status: \"refused\"; reason: OrderFailureCode }\n | { status: \"unavailable\" }\n | { status: \"sessionChanged\" };"
2703
2625
  },
2704
2626
  {
2705
2627
  "name": "AccessRead",
@@ -2711,7 +2633,7 @@
2711
2633
  "name": "IapOrderAdapter",
2712
2634
  "kind": "interface",
2713
2635
  "jsdoc": "/** The only per-vertical code. Every call goes through the session-bound bridge it is given. */",
2714
- "decl": "export interface IapOrderAdapter {\n /** The catalog kind it sells (`onlineProgram`, `pricingPlan`, `storesProduct`, or a custom one). */\n readonly kind: string;\n readonly repeatable?: boolean;\n /** Structural check before any call: one item, quantity 1, a supported shape. */\n eligibility(item: IapOrderItem): IapEligibility;\n /** Opens, or reuses the vertical's own open, order for the signed-in member. */\n /** Repeatable adapters call beforeCreate immediately before their first inventory write,\n * after read-only checks, and abort without writing if it returns false. */\n openOrder(item: IapOrderItem, bridge: SessionBoundBridge, beforeCreate?: () => boolean): Promise<OrderAttempt>;\n /** Re-reads an order opened earlier; `open` only while it can still be paid. */\n reopenOrder(order: { cashierOrderId: string; verticalRef: VerticalRef }, bridge: SessionBoundBridge): Promise<OrderAttempt>;\n /** The vertical's authoritative answer for the order's item and the signed-in member. */\n readAccess(verticalRef: VerticalRef, bridge: SessionBoundBridge): Promise<AccessRead>;\n /** The member's access to an item before any order exists (bought through Wix, say). Read-only:\n * never opens or prepares an order. An adapter without it shows Get access until a sale says otherwise. */\n currentAccess?(item: IapOrderItem, bridge: SessionBoundBridge): Promise<AccessRead>;\n /** When the platform enables StartItemPayment, an eligible item whose order wix-iap places itself\n * instead of `openOrder`. Null for an item outside that shape, which keeps `openOrder`. */\n itemPayment?(i\n/* … */"
2636
+ "decl": "export interface IapOrderAdapter {\n /** The catalog kind it sells (`onlineProgram`, `pricingPlan`, `storesProduct`, or a custom one). */\n readonly kind: string;\n /** Structural check before any call: one item, quantity 1, a supported shape. */\n eligibility(item: IapOrderItem): IapEligibility;\n /** Opens, or reuses the vertical's own open, order for the signed-in member. */\n openOrder(item: IapOrderItem, bridge: SessionBoundBridge): Promise<OrderAttempt>;\n /** Re-reads an order opened earlier; `open` only while it can still be paid. */\n reopenOrder(order: { cashierOrderId: string; verticalRef: VerticalRef }, bridge: SessionBoundBridge): Promise<OrderAttempt>;\n /** The vertical's authoritative answer for the order's item and the signed-in member. */\n readAccess(verticalRef: VerticalRef, bridge: SessionBoundBridge): Promise<AccessRead>;\n /** The member's access to an item before any order exists (bought through Wix, say). Read-only:\n * never opens or prepares an order. An adapter without it shows Get access until a sale says otherwise. */\n currentAccess?(item: IapOrderItem, bridge: SessionBoundBridge): Promise<AccessRead>;\n /** When the platform enables StartItemPayment, an eligible item whose order wix-iap places itself\n * instead of `openOrder`. Null for an item outside that shape, which keeps `openOrder`. */\n itemPayment?(item: IapOrderItem): ItemPayment | null;\n}"
2715
2637
  },
2716
2638
  {
2717
2639
  "name": "OrderPartitionKey",
@@ -2723,7 +2645,7 @@
2723
2645
  "name": "OrderRefStage",
2724
2646
  "kind": "type",
2725
2647
  "jsdoc": "/** `startingItem`: a StartItemPayment was or is about to be sent and its answer is not stored, so\n * the service may have placed an order this device knows nothing of; nothing else is sold for the\n * item until it expires. `held`: Apple charged, and CompletePayment refused the proof without\n * recording it, so the transaction stays unfinished and is retried. `needsSupport`: recorded and\n * refused for good. */",
2726
- "decl": "export type OrderRefStage = \"startingItem\" | \"openingOrder\" | \"ordered\" | \"charged\" | \"started\" | \"submitted\" | \"fulfilled\" | \"held\" | \"needsSupport\";"
2648
+ "decl": "export type OrderRefStage = \"startingItem\" | \"ordered\" | \"charged\" | \"started\" | \"submitted\" | \"held\" | \"needsSupport\";"
2727
2649
  },
2728
2650
  {
2729
2651
  "name": "OrderRef",
@@ -2825,7 +2747,7 @@
2825
2747
  "name": "IapPurchaseCopy",
2826
2748
  "kind": "interface",
2827
2749
  "jsdoc": "/** Labels from the screen's copy pack; the shared layer only chooses between them. */",
2828
- "decl": "export interface IapPurchaseCopy {\n buy: string;\n buyAnother?: string;\n processing: string;\n awaitingApproval: string;\n unavailable: string;\n signInRequired: string;\n retry: string;\n priceChanged: string;\n support: string;\n}"
2750
+ "decl": "export interface IapPurchaseCopy {\n buy: string;\n processing: string;\n awaitingApproval: string;\n unavailable: string;\n signInRequired: string;\n retry: string;\n priceChanged: string;\n support: string;\n}"
2829
2751
  },
2830
2752
  {
2831
2753
  "name": "IapPurchaseFields",
@@ -2912,7 +2834,7 @@
2912
2834
  "name": "StartOptions",
2913
2835
  "kind": "interface",
2914
2836
  "jsdoc": "",
2915
- "decl": "export interface StartOptions {\n /** Groups related activities (e.g. \"order\", \"timer\", \"ride\"). Maps to the iOS\n * ActivityKit attributes type / the Android notification channel + tag. */\n activityType: string;\n /** The widget-safe SDUI tree rendered on the lock screen + Dynamic Island /\n * Live Update notification. */\n content: LiveActivityComponent;\n /** Optional one-line title (Android Live Update headline / accessibility). */\n title?: string;\n /** Mark the activity stale after this many ms (iOS staleDate). 0 ⇒ no hint. */\n staleAfterMs?: number;\n /** Optional per-Dynamic-Island-slot subtrees; omitted slots fall back to title/glyph. */\n regions?: LiveActivityRegions;\n /** Exact record route in the host app. Older binaries may open the app root. */\n deepLink?: string;\n /** Request an ActivityKit push token; the host must register it with its authenticated runtime. */\n pushUpdates?: boolean;\n /**\n * #2050 — the record this activity tracks. Present ⇒ the runtime records a scoped\n * mapping and the host registers an authenticated subscription, so the serve plane\n * can push ordered background frames. Absent ⇒ foreground-only, unchanged.\n *\n * On iOS pair it with `pushUpdates: true`: without the ActivityKit push token there\n * is nothing for the host to register, so the mapping would be recorded and never\n * addressed.\n */\n session?: LiveSessionRef;\n /** Android promotion is opt-in for a user-followed, bounded, time-sensitive\n * activity. The system may still keep it as an ordinary notification. */\n promoted?: boolean;\n /** In an app\n/* … */"
2837
+ "decl": "export interface StartOptions {\n /** Groups related activities (e.g. \"order\", \"timer\", \"ride\"). Maps to the iOS\n * ActivityKit attributes type / the Android notification channel + tag. */\n activityType: string;\n /** The widget-safe SDUI tree rendered on the lock screen + Dynamic Island /\n * Live Update notification. */\n content: LiveActivityComponent;\n /** Optional one-line title (Android Live Update headline / accessibility). */\n title?: string;\n /** Mark the activity stale after this many ms (iOS staleDate). 0 ⇒ no hint. */\n staleAfterMs?: number;\n /** Optional per-Dynamic-Island-slot subtrees; omitted slots fall back to title/glyph. */\n regions?: LiveActivityRegions;\n /** Exact record route in the host app. Older binaries may open the app root. */\n deepLink?: string;\n /** Request an ActivityKit push token; the host must register it with its authenticated runtime. */\n pushUpdates?: boolean;\n /**\n * #2050 — the record this activity tracks. Present ⇒ the runtime records a scoped\n * mapping and the host registers an authenticated subscription, so the serve plane\n * can push ordered background frames. Absent ⇒ foreground-only, unchanged.\n *\n * On iOS pair it with `pushUpdates: true`: without the ActivityKit push token there\n * is nothing for the host to register, so the mapping would be recorded and never\n * addressed.\n */\n session?: LiveSessionRef;\n /** Android promotion is opt-in for a user-followed, bounded, time-sensitive\n * activity. The system may still keep it as an ordinary notification. */\n promoted?: boolean;\n}"
2916
2838
  },
2917
2839
  {
2918
2840
  "name": "UpdateOptions",
@@ -8989,35 +8911,17 @@
8989
8911
  "jsdoc": "",
8990
8912
  "decl": "export interface WixBookingsQuery {\n paging?: WixBookingsPaging;\n filter?: Record<string, unknown>;\n sort?: WixBookingsSort[];\n}"
8991
8913
  },
8992
- {
8993
- "name": "WixBookedSlotResource",
8994
- "kind": "interface",
8995
- "jsdoc": "",
8996
- "decl": "export interface WixBookedSlotResource {\n id?: string;\n name?: string;\n}"
8997
- },
8998
- {
8999
- "name": "WixBookedLocation",
9000
- "kind": "interface",
9001
- "jsdoc": "",
9002
- "decl": "export interface WixBookedLocation {\n id?: string;\n name?: string;\n formattedAddress?: string;\n locationType?: string;\n}"
9003
- },
9004
8914
  {
9005
8915
  "name": "WixBookingSlot",
9006
8916
  "kind": "interface",
9007
8917
  "jsdoc": "",
9008
- "decl": "export interface WixBookingSlot {\n serviceId?: string;\n startDate?: string;\n endDate?: string;\n timezone?: string;\n sessionId?: string;\n scheduleId?: string;\n resource?: WixBookedSlotResource;\n location?: WixBookedLocation;\n}"
9009
- },
9010
- {
9011
- "name": "WixBookedSchedule",
9012
- "kind": "interface",
9013
- "jsdoc": "",
9014
- "decl": "export interface WixBookedSchedule {\n scheduleId?: string;\n serviceId?: string;\n location?: WixBookedLocation;\n timezone?: string;\n firstSessionStart?: string;\n lastSessionEnd?: string;\n}"
8918
+ "decl": "export interface WixBookingSlot {\n serviceId?: string;\n startDate?: string;\n endDate?: string;\n timezone?: string;\n}"
9015
8919
  },
9016
8920
  {
9017
8921
  "name": "WixBookedEntity",
9018
8922
  "kind": "interface",
9019
8923
  "jsdoc": "",
9020
- "decl": "export interface WixBookedEntity {\n title?: string;\n slot?: WixBookingSlot;\n schedule?: WixBookedSchedule;\n}"
8924
+ "decl": "export interface WixBookedEntity {\n title?: string;\n slot?: WixBookingSlot;\n}"
9021
8925
  },
9022
8926
  {
9023
8927
  "name": "WixBookingContactDetails",
@@ -9029,7 +8933,7 @@
9029
8933
  "name": "WixBooking",
9030
8934
  "kind": "interface",
9031
8935
  "jsdoc": "",
9032
- "decl": "export interface WixBooking {\n id: string;\n bookedEntity?: WixBookedEntity;\n contactDetails?: WixBookingContactDetails;\n status?: string;\n paymentStatus?: string;\n startDate?: string;\n endDate?: string;\n totalParticipants?: number;\n createdDate?: string;\n revision?: string;\n}"
8936
+ "decl": "export interface WixBooking {\n id: string;\n bookedEntity?: WixBookedEntity;\n contactDetails?: WixBookingContactDetails;\n status?: string;\n paymentStatus?: string;\n startDate?: string;\n endDate?: string;\n totalParticipants?: number;\n createdDate?: string;\n}"
9033
8937
  },
9034
8938
  {
9035
8939
  "name": "WixBookingsPagingMetadata",
@@ -9059,25 +8963,7 @@
9059
8963
  "name": "WixServiceFixedPayment",
9060
8964
  "kind": "interface",
9061
8965
  "jsdoc": "",
9062
- "decl": "export interface WixServiceFixedPayment {\n price?: WixServiceMoney;\n deposit?: WixServiceMoney;\n fullUpfrontPaymentAllowed?: boolean;\n}"
9063
- },
9064
- {
9065
- "name": "WixServiceVariedPayment",
9066
- "kind": "interface",
9067
- "jsdoc": "",
9068
- "decl": "export interface WixServiceVariedPayment {\n defaultPrice?: WixServiceMoney;\n deposit?: WixServiceMoney;\n minPrice?: WixServiceMoney;\n maxPrice?: WixServiceMoney;\n}"
9069
- },
9070
- {
9071
- "name": "WixServiceCustomPayment",
9072
- "kind": "interface",
9073
- "jsdoc": "",
9074
- "decl": "export interface WixServiceCustomPayment {\n description?: string;\n}"
9075
- },
9076
- {
9077
- "name": "WixServicePaymentOptions",
9078
- "kind": "interface",
9079
- "jsdoc": "",
9080
- "decl": "export interface WixServicePaymentOptions {\n online?: boolean;\n inPerson?: boolean;\n deposit?: boolean;\n pricingPlan?: boolean;\n}"
8966
+ "decl": "export interface WixServiceFixedPayment {\n price?: WixServiceMoney;\n}"
9081
8967
  },
9082
8968
  {
9083
8969
  "name": "WixServiceRateLabel",
@@ -9089,199 +8975,25 @@
9089
8975
  "name": "WixServicePayment",
9090
8976
  "kind": "interface",
9091
8977
  "jsdoc": "",
9092
- "decl": "export interface WixServicePayment {\n rateType?: string;\n fixed?: WixServiceFixedPayment;\n varied?: WixServiceVariedPayment;\n custom?: WixServiceCustomPayment;\n options?: WixServicePaymentOptions;\n rateLabel?: WixServiceRateLabel;\n price?: number;\n currency?: string;\n}"
9093
- },
9094
- {
9095
- "name": "WixServiceDuration",
9096
- "kind": "interface",
9097
- "jsdoc": "",
9098
- "decl": "export interface WixServiceDuration {\n minutes?: number;\n}"
9099
- },
9100
- {
9101
- "name": "WixServiceHourlyConfig",
9102
- "kind": "interface",
9103
- "jsdoc": "",
9104
- "decl": "export interface WixServiceHourlyConfig {\n minDurationInMinutes?: number;\n maxDurationInMinutes?: number;\n}"
9105
- },
9106
- {
9107
- "name": "WixServiceDailyConfig",
9108
- "kind": "interface",
9109
- "jsdoc": "",
9110
- "decl": "export interface WixServiceDailyConfig {\n minDurationInDays?: number;\n maxDurationInDays?: number;\n}"
9111
- },
9112
- {
9113
- "name": "WixServiceDurationRange",
9114
- "kind": "interface",
9115
- "jsdoc": "",
9116
- "decl": "export interface WixServiceDurationRange {\n hourOptions?: WixServiceHourlyConfig;\n dayOptions?: WixServiceDailyConfig;\n unitType?: string;\n}"
8978
+ "decl": "export interface WixServicePayment {\n fixed?: WixServiceFixedPayment;\n rateLabel?: WixServiceRateLabel;\n price?: number;\n currency?: string;\n}"
9117
8979
  },
9118
8980
  {
9119
8981
  "name": "WixServiceAvailabilityConstraints",
9120
8982
  "kind": "interface",
9121
8983
  "jsdoc": "",
9122
- "decl": "export interface WixServiceAvailabilityConstraints {\n durations?: WixServiceDuration[];\n sessionDurations?: number[];\n durationRange?: WixServiceDurationRange;\n}"
8984
+ "decl": "export interface WixServiceAvailabilityConstraints {\n sessionDurations?: number[];\n}"
9123
8985
  },
9124
8986
  {
9125
8987
  "name": "WixServiceSchedule",
9126
8988
  "kind": "interface",
9127
8989
  "jsdoc": "",
9128
- "decl": "export interface WixServiceSchedule {\n id?: string;\n firstSessionStart?: string;\n lastSessionEnd?: string;\n availabilityConstraints?: WixServiceAvailabilityConstraints;\n}"
9129
- },
9130
- {
9131
- "name": "WixServiceImage",
9132
- "kind": "interface",
9133
- "jsdoc": "",
9134
- "decl": "export interface WixServiceImage {\n id?: string;\n url?: string;\n height?: number;\n width?: number;\n altText?: string;\n}"
9135
- },
9136
- {
9137
- "name": "WixServiceMediaItem",
9138
- "kind": "interface",
9139
- "jsdoc": "",
9140
- "decl": "export interface WixServiceMediaItem {\n image?: WixServiceImage;\n}"
9141
- },
9142
- {
9143
- "name": "WixServiceMedia",
9144
- "kind": "interface",
9145
- "jsdoc": "",
9146
- "decl": "export interface WixServiceMedia {\n items?: WixServiceMediaItem[];\n mainMedia?: WixServiceMediaItem;\n coverMedia?: WixServiceMediaItem;\n}"
9147
- },
9148
- {
9149
- "name": "WixServiceStreetAddress",
9150
- "kind": "interface",
9151
- "jsdoc": "",
9152
- "decl": "export interface WixServiceStreetAddress {\n number?: string;\n name?: string;\n apt?: string;\n}"
9153
- },
9154
- {
9155
- "name": "WixServiceAddress",
9156
- "kind": "interface",
9157
- "jsdoc": "",
9158
- "decl": "export interface WixServiceAddress {\n streetAddress?: WixServiceStreetAddress;\n addressLine?: string;\n country?: string;\n subdivision?: string;\n city?: string;\n postalCode?: string;\n formattedAddress?: string;\n}"
9159
- },
9160
- {
9161
- "name": "WixServiceBusinessLocation",
9162
- "kind": "interface",
9163
- "jsdoc": "",
9164
- "decl": "export interface WixServiceBusinessLocation {\n id?: string;\n name?: string;\n default?: boolean;\n address?: WixServiceAddress;\n}"
9165
- },
9166
- {
9167
- "name": "WixServiceCustomLocation",
9168
- "kind": "interface",
9169
- "jsdoc": "",
9170
- "decl": "export interface WixServiceCustomLocation {\n id?: string;\n address?: WixServiceAddress;\n}"
9171
- },
9172
- {
9173
- "name": "WixServiceLocation",
9174
- "kind": "interface",
9175
- "jsdoc": "",
9176
- "decl": "export interface WixServiceLocation {\n id?: string;\n type?: string;\n business?: WixServiceBusinessLocation;\n custom?: WixServiceCustomLocation;\n calculatedAddress?: WixServiceAddress;\n}"
9177
- },
9178
- {
9179
- "name": "WixServiceOnlineBooking",
9180
- "kind": "interface",
9181
- "jsdoc": "",
9182
- "decl": "export interface WixServiceOnlineBooking {\n enabled?: boolean;\n requireManualApproval?: boolean;\n allowMultipleRequests?: boolean;\n}"
9183
- },
9184
- {
9185
- "name": "WixServiceConferencing",
9186
- "kind": "interface",
9187
- "jsdoc": "",
9188
- "decl": "export interface WixServiceConferencing {\n enabled?: boolean;\n}"
9189
- },
9190
- {
9191
- "name": "WixServicePolicyDescription",
9192
- "kind": "interface",
9193
- "jsdoc": "",
9194
- "decl": "export interface WixServicePolicyDescription {\n enabled?: boolean;\n description?: string;\n}"
9195
- },
9196
- {
9197
- "name": "WixServiceLimitEarlyBookingPolicy",
9198
- "kind": "interface",
9199
- "jsdoc": "",
9200
- "decl": "export interface WixServiceLimitEarlyBookingPolicy {\n enabled?: boolean;\n earliestBookingInMinutes?: number;\n}"
9201
- },
9202
- {
9203
- "name": "WixServiceLimitLateBookingPolicy",
9204
- "kind": "interface",
9205
- "jsdoc": "",
9206
- "decl": "export interface WixServiceLimitLateBookingPolicy {\n enabled?: boolean;\n latestBookingInMinutes?: number;\n}"
9207
- },
9208
- {
9209
- "name": "WixServiceBookAfterStartPolicy",
9210
- "kind": "interface",
9211
- "jsdoc": "",
9212
- "decl": "export interface WixServiceBookAfterStartPolicy {\n enabled?: boolean;\n}"
9213
- },
9214
- {
9215
- "name": "WixServiceCancellationPolicy",
9216
- "kind": "interface",
9217
- "jsdoc": "",
9218
- "decl": "export interface WixServiceCancellationPolicy {\n enabled?: boolean;\n limitLatestCancellation?: boolean;\n latestCancellationInMinutes?: number;\n}"
9219
- },
9220
- {
9221
- "name": "WixServiceReschedulePolicy",
9222
- "kind": "interface",
9223
- "jsdoc": "",
9224
- "decl": "export interface WixServiceReschedulePolicy {\n enabled?: boolean;\n limitLatestReschedule?: boolean;\n latestRescheduleInMinutes?: number;\n}"
9225
- },
9226
- {
9227
- "name": "WixServiceWaitlistPolicy",
9228
- "kind": "interface",
9229
- "jsdoc": "",
9230
- "decl": "export interface WixServiceWaitlistPolicy {\n enabled?: boolean;\n capacity?: number;\n reservationTimeInMinutes?: number;\n}"
9231
- },
9232
- {
9233
- "name": "WixServiceParticipantsPolicy",
9234
- "kind": "interface",
9235
- "jsdoc": "",
9236
- "decl": "export interface WixServiceParticipantsPolicy {\n maxParticipantsPerBooking?: number;\n}"
9237
- },
9238
- {
9239
- "name": "WixServiceCancellationWindow",
9240
- "kind": "interface",
9241
- "jsdoc": "",
9242
- "decl": "export interface WixServiceCancellationWindow {\n amount?: WixServiceMoney;\n percentage?: string;\n startInMinutes?: number;\n}"
9243
- },
9244
- {
9245
- "name": "WixServiceCancellationFeePolicy",
9246
- "kind": "interface",
9247
- "jsdoc": "",
9248
- "decl": "export interface WixServiceCancellationFeePolicy {\n enabled?: boolean;\n cancellationWindows?: WixServiceCancellationWindow[];\n}"
9249
- },
9250
- {
9251
- "name": "WixServiceBookingPolicy",
9252
- "kind": "interface",
9253
- "jsdoc": "",
9254
- "decl": "export interface WixServiceBookingPolicy {\n id?: string;\n name?: string;\n customPolicyDescription?: WixServicePolicyDescription;\n limitEarlyBookingPolicy?: WixServiceLimitEarlyBookingPolicy;\n limitLateBookingPolicy?: WixServiceLimitLateBookingPolicy;\n bookAfterStartPolicy?: WixServiceBookAfterStartPolicy;\n cancellationPolicy?: WixServiceCancellationPolicy;\n reschedulePolicy?: WixServiceReschedulePolicy;\n waitlistPolicy?: WixServiceWaitlistPolicy;\n participantsPolicy?: WixServiceParticipantsPolicy;\n cancellationFeePolicy?: WixServiceCancellationFeePolicy;\n}"
9255
- },
9256
- {
9257
- "name": "WixServiceStaffMember",
9258
- "kind": "interface",
9259
- "jsdoc": "",
9260
- "decl": "export interface WixServiceStaffMember {\n staffMemberId?: string;\n name?: string;\n mainMedia?: WixServiceMediaItem;\n}"
9261
- },
9262
- {
9263
- "name": "WixServiceStaffMemberDetails",
9264
- "kind": "interface",
9265
- "jsdoc": "",
9266
- "decl": "export interface WixServiceStaffMemberDetails {\n staffMembers?: WixServiceStaffMember[];\n}"
9267
- },
9268
- {
9269
- "name": "WixServicePageUrl",
9270
- "kind": "interface",
9271
- "jsdoc": "",
9272
- "decl": "export interface WixServicePageUrl {\n relativePath?: string;\n url?: string;\n}"
9273
- },
9274
- {
9275
- "name": "WixServiceUrls",
9276
- "kind": "interface",
9277
- "jsdoc": "",
9278
- "decl": "export interface WixServiceUrls {\n servicePage?: WixServicePageUrl;\n bookingPage?: WixServicePageUrl;\n}"
8990
+ "decl": "export interface WixServiceSchedule {\n availabilityConstraints?: WixServiceAvailabilityConstraints;\n}"
9279
8991
  },
9280
8992
  {
9281
8993
  "name": "WixService",
9282
8994
  "kind": "interface",
9283
8995
  "jsdoc": "",
9284
- "decl": "export interface WixService {\n id: string;\n name?: string;\n description?: string;\n type?: string;\n tagLine?: string;\n defaultCapacity?: number;\n media?: WixServiceMedia;\n duration?: number;\n payment?: WixServicePayment;\n onlineBooking?: WixServiceOnlineBooking;\n conferencing?: WixServiceConferencing;\n locations?: WixServiceLocation[];\n bookingPolicy?: WixServiceBookingPolicy;\n schedule?: WixServiceSchedule;\n staffMemberDetails?: WixServiceStaffMemberDetails;\n urls?: WixServiceUrls;\n price?: number;\n category?: string;\n}"
8996
+ "decl": "export interface WixService {\n id: string;\n name?: string;\n description?: string;\n duration?: number;\n payment?: WixServicePayment;\n schedule?: WixServiceSchedule;\n price?: number;\n category?: string;\n}"
9285
8997
  },
9286
8998
  {
9287
8999
  "name": "WixServicesSearchPaging",
@@ -9313,12 +9025,6 @@
9313
9025
  "jsdoc": "",
9314
9026
  "decl": "export interface WixGetServiceResponse {\n service: WixService;\n}"
9315
9027
  },
9316
- {
9317
- "name": "WixGetServiceOptions",
9318
- "kind": "interface",
9319
- "jsdoc": "",
9320
- "decl": "export interface WixGetServiceOptions {\n conditionalFields?: string[];\n}"
9321
- },
9322
9028
  {
9323
9029
  "name": "WixServiceWrite",
9324
9030
  "kind": "interface",
@@ -9457,13 +9163,13 @@
9457
9163
  "name": "WixServicePayment",
9458
9164
  "kind": "interface",
9459
9165
  "jsdoc": "",
9460
- "decl": "export interface WixServicePayment {\n /** \"FIXED\" | \"CUSTOM\" | \"VARIED\" | \"NO_FEE\". */\n rateType?: string;\n fixed?: { price?: WixServiceMoney; deposit?: WixServiceMoney; fullUpfrontPaymentAllowed?: boolean };\n varied?: { defaultPrice?: WixServiceMoney; deposit?: WixServiceMoney; minPrice?: WixServiceMoney; maxPrice?: WixServiceMoney };\n custom?: { description?: string };\n /** How the customer may pay. A service offers at least one of these. */\n options?: { online?: boolean; inPerson?: boolean; deposit?: boolean; pricingPlan?: boolean };\n rateLabel?: { amount?: string; currency?: string };\n /** @deprecated Legacy flat payment shape. */\n price?: number;\n /** @deprecated Legacy flat payment shape. */\n currency?: string;\n}"
9166
+ "decl": "export interface WixServicePayment {\n fixed?: { price?: WixServiceMoney };\n rateLabel?: { amount?: string; currency?: string };\n /** @deprecated Legacy flat payment shape. */\n price?: number;\n /** @deprecated Legacy flat payment shape. */\n currency?: string;\n}"
9461
9167
  },
9462
9168
  {
9463
9169
  "name": "WixService",
9464
9170
  "kind": "interface",
9465
9171
  "jsdoc": "",
9466
- "decl": "export interface WixService {\n id: string;\n /** Optimistic-concurrency token — required by every v2 write (updateService reads it if omitted). */\n revision?: string;\n name?: string;\n description?: string;\n /** \"APPOINTMENT\" | \"CLASS\" | \"COURSE\". */\n type?: string;\n tagLine?: string;\n defaultCapacity?: number;\n media?: WixServiceMedia;\n /** Session length in minutes. */\n duration?: number;\n /** Raw Bookings v2 response shape. */\n payment?: WixServicePayment;\n onlineBooking?: { enabled?: boolean; requireManualApproval?: boolean; allowMultipleRequests?: boolean };\n conferencing?: { enabled?: boolean };\n locations?: WixServiceLocation[];\n bookingPolicy?: WixServiceBookingPolicy;\n schedule?: {\n id?: string;\n firstSessionStart?: string;\n lastSessionEnd?: string;\n availabilityConstraints?: { durations?: Array<{ minutes?: number }>; sessionDurations?: number[]; durationRange?: WixServiceDurationRange };\n };\n /** Returned only when the request asks for `STAFF_MEMBER_DETAILS` (see `getService`). */\n staffMemberDetails?: WixServiceStaffMemberDetails;\n urls?: WixServiceUrls;\n /** @deprecated Compatibility projection populated by `decodeService`. */\n price?: number;\n /** @deprecated Legacy v1 compatibility field. */\n category?: string;\n}"
9172
+ "decl": "export interface WixService {\n id: string;\n /** Optimistic-concurrency token — required by every v2 write (updateService reads it if omitted). */\n revision?: string;\n name?: string;\n description?: string;\n /** Session length in minutes. */\n duration?: number;\n /** Raw Bookings v2 response shape. */\n payment?: WixServicePayment;\n schedule?: { availabilityConstraints?: { sessionDurations?: number[] } };\n /** @deprecated Compatibility projection populated by `decodeService`. */\n price?: number;\n /** @deprecated Legacy v1 compatibility field. */\n category?: string;\n}"
9467
9173
  },
9468
9174
  {
9469
9175
  "name": "decodeService",
@@ -9542,8 +9248,9 @@
9542
9248
  {
9543
9249
  "name": "getService",
9544
9250
  "kind": "function",
9545
- "jsdoc": "/** Fetch a single service by id — GET /bookings/v2/services/{id}. Visitor-readable\n * (public GA route, not the owner `_api/` gateway). The detail/edit-prefill source.\n * `options.conditionalFields` asks for fields Wix returns only on request\n * (\"STAFF_MEMBER_DETAILS\", \"DISCOUNT_INFO_DETAILS\"), each sent as a repeated\n * `conditionalFields` query parameter. Without `options` the request is the one this\n * function always sent. */",
9546
- "decl": "export async function getService(serviceId: string, options?: WixGetServiceOptions): Promise<WixGetServiceResponse>;"
9251
+ "jsdoc": "/** Fetch a single service by id — GET /bookings/v2/services/{id}. Visitor-readable\n * (public GA route, not the owner `_api/` gateway). The detail/edit-prefill source. */",
9252
+ "decl": "export async function getService(serviceId: string): Promise<WixGetServiceResponse>;",
9253
+ "http": "GET /bookings/v2/services/{…}"
9547
9254
  },
9548
9255
  {
9549
9256
  "name": "WixServiceWrite",
@@ -9659,54 +9366,6 @@
9659
9366
  "decl": "export function cancelBookingAsMember(bookingId: string, revision: string, notify = true): Promise<WixUpdateBookingResponse>;",
9660
9367
  "http": "POST /bookings/v2/bookings/{…}/cancel"
9661
9368
  },
9662
- {
9663
- "name": "WixWaitlistContact",
9664
- "kind": "interface",
9665
- "jsdoc": "",
9666
- "decl": "export interface WixWaitlistContact {\n email: string;\n firstName?: string;\n lastName?: string;\n}"
9667
- },
9668
- {
9669
- "name": "WixWaitlistRegistration",
9670
- "kind": "interface",
9671
- "jsdoc": "",
9672
- "decl": "export interface WixWaitlistRegistration {\n id?: string;\n bookingId?: string;\n waitingResource?: string;\n status?: string;\n availableActions?: { leave?: boolean; enroll?: boolean };\n}"
9673
- },
9674
- {
9675
- "name": "WixWaitlistEntry",
9676
- "kind": "interface",
9677
- "jsdoc": "",
9678
- "decl": "export interface WixWaitlistEntry {\n /** The waitlisted session id. */\n waitingResource?: string;\n registrations?: WixWaitlistRegistration[];\n}"
9679
- },
9680
- {
9681
- "name": "WixRegisterToWaitlistResponse",
9682
- "kind": "interface",
9683
- "jsdoc": "",
9684
- "decl": "export interface WixRegisterToWaitlistResponse {\n registrationId?: string;\n booking?: { id?: string; status?: string };\n}"
9685
- },
9686
- {
9687
- "name": "registerToWaitlist",
9688
- "kind": "function",
9689
- "jsdoc": "/** Register the signed-in member to a full session's waitlist —\n * POST /bookings/v1/waitlist/register. `sessionId` is the availability slot's\n * `sessionId`. Wix answers with an error when the session has no waitlist or it is\n * full, so offer this only while the entry reports `waitingList.openSpots > 0`.\n * @scope member — requires a signed-in site member; `contact.email` is theirs. Only name and\n * email are sent, so a booking form with other required fields can refuse it. */",
9690
- "decl": "export function registerToWaitlist(sessionId: string, contact: WixWaitlistContact): Promise<WixRegisterToWaitlistResponse>;",
9691
- "http": "POST /bookings/v1/waitlist/register",
9692
- "scope": "member"
9693
- },
9694
- {
9695
- "name": "listWaitlists",
9696
- "kind": "function",
9697
- "jsdoc": "/** The waitlists of the given sessions — GET /bookings/v1/waitlist/list (public data).\n * Each registration carries its `bookingId`, which is how a member's own place is found.\n * @scope visitor — an anonymous visitor session is enough. */",
9698
- "decl": "export function listWaitlists(sessionIds: string[]): Promise<{ list?: WixWaitlistEntry[] }>;",
9699
- "http": "GET /bookings/v1/waitlist/list",
9700
- "scope": "visitor"
9701
- },
9702
- {
9703
- "name": "leaveWaitlist",
9704
- "kind": "function",
9705
- "jsdoc": "/** Leave a waitlist — POST /bookings/v1/waitlist/leave. Wix also cancels the pending\n * booking the registration created, and offers the place to the next registrant.\n * @scope member — requires the signed-in member who registered; `registrationId` comes from\n * `listWaitlists`. */",
9706
- "decl": "export function leaveWaitlist(registrationId: string, sessionId: string): Promise<{ registrationId?: string; waitingResource?: string }>;",
9707
- "http": "POST /bookings/v1/waitlist/leave",
9708
- "scope": "member"
9709
- },
9710
9369
  {
9711
9370
  "name": "isBookingPolicyViolation",
9712
9371
  "kind": "function",
@@ -9735,8 +9394,8 @@
9735
9394
  {
9736
9395
  "name": "WixAvailabilityEntry",
9737
9396
  "kind": "interface",
9738
- "jsdoc": "/** Raw v1 availability fields, including capacity for a class or course session. */",
9739
- "decl": "export interface WixAvailabilityEntry {\n slot?: WixBookingSlotFull;\n bookable?: boolean;\n totalSpots?: number;\n openSpots?: number;\n waitingList?: { totalSpots?: number; openSpots?: number };\n}"
9397
+ "jsdoc": "",
9398
+ "decl": "export interface WixAvailabilityEntry { slot?: WixBookingSlotFull; bookable?: boolean }"
9740
9399
  },
9741
9400
  {
9742
9401
  "name": "WixQueryAvailabilityResponse",
@@ -9801,14 +9460,6 @@
9801
9460
  "decl": "export function bookSlot(\n slot: WixBookingSlotFull,\n firstName: string,\n lastName: string,\n email: string,\n options?: WixBookSlotOptions,\n): Promise<WixCreateBookingResponse>;",
9802
9461
  "http": "POST /bookings/v2/bookings"
9803
9462
  },
9804
- {
9805
- "name": "bookSchedule",
9806
- "kind": "function",
9807
- "jsdoc": "/** Book a course as a whole — POST /bookings/v2/bookings with `bookedEntity.schedule.scheduleId`.\n * A course is a schedule, not one of its dated slots, so the customer joins every session.\n * `scheduleId` is the course service's `schedule.id`; `email` is required (the call throws\n * before any request without it). The booking comes back CREATED, which is NOT proof of a\n * reserved place: on a live free test course every session's open count was unchanged after\n * it. Pay for it through a Wix eCommerce checkout exactly as `bookSlot`'s paid chain does, and\n * reuse that same booking if the checkout fails rather than booking again. Check capacity\n * across every upcoming session first; a refusal comes back as an HTTP error.\n * @scope visitor — a Wix Headless anonymous visitor session returned CREATED (verified live\n * 2026-10-29); the Branded Lite time screen calls it for a signed-in member. */",
9808
- "decl": "export function bookSchedule(\n scheduleId: string,\n firstName: string,\n lastName: string,\n email: string,\n options?: WixBookSlotOptions,\n): Promise<WixCreateBookingResponse>;",
9809
- "http": "POST /bookings/v2/bookings",
9810
- "scope": "visitor"
9811
- },
9812
9463
  {
9813
9464
  "name": "WixBookingAdditionalField",
9814
9465
  "kind": "interface",
@@ -16190,30 +15841,6 @@
16190
15841
  "decl": "export async function getCurrentCart(): Promise<WixCartDetail>;",
16191
15842
  "http": "GET /ecom/v1/carts/current"
16192
15843
  },
16193
- {
16194
- "name": "addCouponToCurrentCart",
16195
- "kind": "function",
16196
- "jsdoc": "/** Add a coupon to the visitor/member's current cart — POST\n * /ecom/v2/carts/current/add-coupon. Wix validates it against the current cart.\n * @scope visitor — uses the active shopper's cart; Wix rejects an invalid coupon. */",
16197
- "decl": "export function addCouponToCurrentCart(code: string): Promise<{ cart?: WixCartDetail }>;",
16198
- "http": "POST /ecom/v2/carts/current/add-coupon",
16199
- "scope": "visitor"
16200
- },
16201
- {
16202
- "name": "removeCouponFromCurrentCart",
16203
- "kind": "function",
16204
- "jsdoc": "/** Remove a coupon from the current cart — POST /ecom/v2/carts/current/remove-coupon.\n * @scope visitor — uses the active shopper's cart; a missing coupon ID is rejected. */",
16205
- "decl": "export function removeCouponFromCurrentCart(couponId: string): Promise<{ cart?: WixCartDetail }>;",
16206
- "http": "POST /ecom/v2/carts/current/remove-coupon",
16207
- "scope": "visitor"
16208
- },
16209
- {
16210
- "name": "calculateCurrentCart",
16211
- "kind": "function",
16212
- "jsdoc": "/** Recalculate the current cart after a coupon change.\n * @scope visitor — uses the active shopper's cart and returns its updated totals. */",
16213
- "decl": "export function calculateCurrentCart(): Promise<{ cart?: WixCartDetail }>;",
16214
- "http": "POST /ecom/v2/carts/current/calculate",
16215
- "scope": "visitor"
16216
- },
16217
15844
  {
16218
15845
  "name": "WixRemoveLineItemsResponse",
16219
15846
  "kind": "interface",
@@ -16514,127 +16141,6 @@
16514
16141
  "kind": "function",
16515
16142
  "jsdoc": "/** Make a saved payment method the member's primary one. The service declares this\n * as a GET (`@wix/auto_sdk_payments_saved-payment-methods` `markSavedPaymentMethodPrimary`). */",
16516
16143
  "decl": "export function markSavedPaymentMethodPrimary(savedPaymentMethodId: string): Promise<Record<string, never>>;"
16517
- },
16518
- {
16519
- "name": "WixCartV2Money",
16520
- "kind": "interface",
16521
- "jsdoc": "/** A Cart V2 money value — a decimal string, never a formatted one. */",
16522
- "decl": "export interface WixCartV2Money {\n amount?: string;\n convertedAmount?: string;\n}"
16523
- },
16524
- {
16525
- "name": "WixCartV2Address",
16526
- "kind": "interface",
16527
- "jsdoc": "/** The address shape Cart V2 takes and returns. `subdivision` is ISO 3166-2 (`US-CA`). */",
16528
- "decl": "export interface WixCartV2Address {\n country?: string;\n subdivision?: string;\n city?: string;\n postalCode?: string;\n addressLine?: string;\n addressLine2?: string;\n formattedAddress?: string;\n}"
16529
- },
16530
- {
16531
- "name": "WixCartV2LineItem",
16532
- "kind": "interface",
16533
- "jsdoc": "/** One Cart V2 line. The catalog reference is under `source` (not top-level, as in V1),\n * the image under `attributes`, and the name under `name` (not `productName`). */",
16534
- "decl": "export interface WixCartV2LineItem {\n id?: string;\n name?: { original?: string; translated?: string };\n quantityInfo?: { requestedQuantity?: number; confirmedQuantity?: number; availableQuantity?: number };\n pricing?: { unitPrice?: WixCartV2Money; totalPrice?: WixCartV2Money };\n source?: { catalogReference?: WixCatalogReference; rootCatalogItemId?: string };\n attributes?: { image?: { url?: string } };\n /** `IN_STOCK` | `PARTIALLY_IN_STOCK` | `OUT_OF_STOCK` | `REMOVED_FROM_CATALOG`. */\n status?: string;\n}"
16535
- },
16536
- {
16537
- "name": "WixCartV2DeliveryMethod",
16538
- "kind": "interface",
16539
- "jsdoc": "",
16540
- "decl": "export interface WixCartV2DeliveryMethod {\n /** `PICKUP|ASAP`, `DELIVERY|ASAP`, or `<TYPE>|<startEpochMs>|<endEpochMs>` for Restaurants. */\n code?: string;\n appId?: string;\n title?: { original?: string; translated?: string };\n pickup?: boolean;\n}"
16541
- },
16542
- {
16543
- "name": "WixCartV2",
16544
- "kind": "interface",
16545
- "jsdoc": "",
16546
- "decl": "export interface WixCartV2 {\n id?: string;\n revision?: string;\n lineItems?: WixCartV2LineItem[];\n subtotal?: WixCartV2Money;\n deliveryInfo?: { address?: WixCartV2Address; method?: WixCartV2DeliveryMethod };\n businessInfo?: { currencyCode?: string; languageCode?: string };\n customerInfo?: { currencyCode?: string };\n orderPlaced?: boolean;\n}"
16547
- },
16548
- {
16549
- "name": "WixCartV2Violation",
16550
- "kind": "interface",
16551
- "jsdoc": "",
16552
- "decl": "export interface WixCartV2Violation {\n /** `ERROR` | `WARNING`. */\n severity?: string;\n scope?: string;\n code?: string;\n description?: string;\n}"
16553
- },
16554
- {
16555
- "name": "WixCartV2Summary",
16556
- "kind": "interface",
16557
- "jsdoc": "",
16558
- "decl": "export interface WixCartV2Summary {\n priceSummary?: {\n subtotal?: WixCartV2Money;\n discount?: WixCartV2Money;\n delivery?: WixCartV2Money;\n additionalFees?: WixCartV2Money;\n tax?: WixCartV2Money;\n total?: WixCartV2Money;\n };\n violations?: WixCartV2Violation[];\n}"
16559
- },
16560
- {
16561
- "name": "WixCartV2Response",
16562
- "kind": "interface",
16563
- "jsdoc": "",
16564
- "decl": "export interface WixCartV2Response { cart?: WixCartV2 }"
16565
- },
16566
- {
16567
- "name": "WixEstimateCartV2Response",
16568
- "kind": "interface",
16569
- "jsdoc": "",
16570
- "decl": "export interface WixEstimateCartV2Response { cart?: WixCartV2; summary?: WixCartV2Summary }"
16571
- },
16572
- {
16573
- "name": "WixCatalogItemInput",
16574
- "kind": "interface",
16575
- "jsdoc": "/** One catalog item to add: what it is (`catalogReference`) and how many. */",
16576
- "decl": "export interface WixCatalogItemInput {\n catalogReference: WixCatalogReference;\n quantity: number;\n}"
16577
- },
16578
- {
16579
- "name": "WixCartV2QuantityUpdate",
16580
- "kind": "interface",
16581
- "jsdoc": "/** A quantity change for one existing line. */",
16582
- "decl": "export interface WixCartV2QuantityUpdate {\n lineItemId: string;\n quantity: number;\n}"
16583
- },
16584
- {
16585
- "name": "ecomApplicationErrorCode",
16586
- "kind": "function",
16587
- "jsdoc": "/** The Wix application error code a rejection carries (`DELIVERY_METHOD_NOT_FOUND`, …), or \"\".\n * Read the same way as the empty-cart check: structurally, from the native `[CODE]` prefix,\n * or from a cut web-bridge body in its canonical shape — never from prose. */",
16588
- "decl": "export function ecomApplicationErrorCode(error: unknown): string;"
16589
- },
16590
- {
16591
- "name": "getCurrentCartV2",
16592
- "kind": "function",
16593
- "jsdoc": "/** Read the current cart — GET /ecom/v2/carts/current. No cart yet is a successful read of an\n * empty one: Wix answers 200 `{}` (or 404 `CURRENT_CART_NOT_FOUND`), resolved as `{ lineItems: [] }`.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16594
- "decl": "export async function getCurrentCartV2(): Promise<WixCartV2>;",
16595
- "scope": "visitor"
16596
- },
16597
- {
16598
- "name": "addLineItemsToCurrentCartV2",
16599
- "kind": "function",
16600
- "jsdoc": "/** Add catalog items to the current cart, creating it when there is none — POST\n * /ecom/v2/carts/current/add-line-items `{ catalogItems }`. Adding an item already in the cart\n * raises that line's quantity. Wix can drop an item it refuses and still answer 200, so read\n * the returned cart for the line (and its `status`) rather than trusting the status code.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16601
- "decl": "export function addLineItemsToCurrentCartV2(catalogItems: WixCatalogItemInput[]): Promise<WixCartV2Response>;",
16602
- "scope": "visitor"
16603
- },
16604
- {
16605
- "name": "updateLineItemsInCurrentCartV2",
16606
- "kind": "function",
16607
- "jsdoc": "/** Set line quantities — POST /ecom/v2/carts/current/update-line-items\n * `{ lineItems: [{ lineItemId, quantity: { newQuantity } }] }`.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16608
- "decl": "export function updateLineItemsInCurrentCartV2(updates: WixCartV2QuantityUpdate[]): Promise<WixCartV2Response>;",
16609
- "scope": "visitor"
16610
- },
16611
- {
16612
- "name": "removeLineItemsFromCurrentCartV2",
16613
- "kind": "function",
16614
- "jsdoc": "/** Remove lines — POST /ecom/v2/carts/current/remove-line-items `{ lineItemIds }`.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16615
- "decl": "export function removeLineItemsFromCurrentCartV2(lineItemIds: string[]): Promise<WixCartV2Response>;",
16616
- "scope": "visitor"
16617
- },
16618
- {
16619
- "name": "updateCurrentCartV2DeliveryAddress",
16620
- "kind": "function",
16621
- "jsdoc": "/** Set the cart's delivery address — PATCH /ecom/v2/carts/current\n * `{ cart: { deliveryInfo: { address } } }`. Restaurants needs one even for pickup (the\n * restaurant's country is enough there); without it setting a method answers 428\n * `DELIVERY_METHOD_MISSING_ADDRESS`.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16622
- "decl": "export function updateCurrentCartV2DeliveryAddress(address: WixCartV2Address): Promise<WixCartV2Response>;",
16623
- "scope": "visitor"
16624
- },
16625
- {
16626
- "name": "setDeliveryMethodForCurrentCartV2",
16627
- "kind": "function",
16628
- "jsdoc": "/** Choose how the cart is fulfilled — POST /ecom/v2/carts/current/set-delivery-method\n * `{ deliveryMethod: { code } }`. 400 `DELIVERY_METHOD_NOT_FOUND` means no method of that code\n * serves the cart's address (for Restaurants delivery: the address is outside every area).\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16629
- "decl": "export function setDeliveryMethodForCurrentCartV2(code: string, appId?: string): Promise<WixCartV2Response>;",
16630
- "scope": "visitor"
16631
- },
16632
- {
16633
- "name": "estimateCurrentCartV2",
16634
- "kind": "function",
16635
- "jsdoc": "/** Totals and blocking violations for the current cart — POST /ecom/v2/carts/current/estimate,\n * always with `calculateDelivery` and `calculateTax` (a plain estimate reports a valid method as\n * no longer available). No cart yet → `{ cart: { lineItems: [] } }`, not a throw.\n * @scope visitor — the cart belongs to the session (visitor or member) that calls it. */",
16636
- "decl": "export async function estimateCurrentCartV2(): Promise<WixEstimateCartV2Response>;",
16637
- "scope": "visitor"
16638
16144
  }
16639
16145
  ]
16640
16146
  },
@@ -18039,8 +17545,8 @@
18039
17545
  {
18040
17546
  "name": "WixEventFieldset",
18041
17547
  "kind": "type",
18042
- "jsdoc": "/** Events v3 response fieldsets (`RequestedFields`). A bare read returns the base fieldset;\n * each value adds fields: `DETAILS` → `shortDescription`, `mainImage`, `calendarUrls`;\n * `TEXTS` → the Ricos `description`; `REGISTRATION` → `registration`; `URLS` → `eventPageUrl`;\n * `FORM` → `form`, the published registration controls and inputs. */",
18043
- "decl": "export type WixEventFieldset = \"DETAILS\" | \"TEXTS\" | \"REGISTRATION\" | \"URLS\" | \"FORM\";"
17548
+ "jsdoc": "/** Events v3 response fieldsets (`RequestedFields`). A bare read returns the base fieldset;\n * each value adds fields: `DETAILS` → `shortDescription`, `mainImage`, `calendarUrls`;\n * `TEXTS` → the Ricos `description`; `REGISTRATION` → `registration`; `URLS` → `eventPageUrl`. */",
17549
+ "decl": "export type WixEventFieldset = \"DETAILS\" | \"TEXTS\" | \"REGISTRATION\" | \"URLS\";"
18044
17550
  },
18045
17551
  {
18046
17552
  "name": "WixEventRichContent",
@@ -18147,7 +17653,7 @@
18147
17653
  "name": "WixAvailableTicket",
18148
17654
  "kind": "interface",
18149
17655
  "jsdoc": "",
18150
- "decl": "export interface WixAvailableTicket {\n id?: string;\n eventId?: string;\n name?: string;\n description?: string;\n price?: WixTicketPrice;\n free?: boolean;\n limitPerCheckout?: number;\n orderIndex?: number;\n saleStatus?: string;\n state?: string[];\n pricing?: { pricingType?: string; fixedPrice?: WixTicketPrice };\n dashboard?: { hidden?: boolean };\n}"
17656
+ "decl": "export interface WixAvailableTicket {\n id?: string;\n name?: string;\n description?: string;\n price?: WixTicketPrice;\n free?: boolean;\n limitPerCheckout?: number;\n orderIndex?: number;\n saleStatus?: string;\n}"
18151
17657
  },
18152
17658
  {
18153
17659
  "name": "WixQueryAvailableTicketsResponse",
@@ -18155,14 +17661,6 @@
18155
17661
  "jsdoc": "",
18156
17662
  "decl": "export interface WixQueryAvailableTicketsResponse {\n definitions?: WixAvailableTicket[];\n}"
18157
17663
  },
18158
- {
18159
- "name": "getTicketDefinition",
18160
- "kind": "function",
18161
- "jsdoc": "/** Read management pricing/visibility for a required ticket-definition ID; absence is not a free offer.\n * Authorization errors propagate and must block checkout.\n * @scope owner — Wix documents app/user identity with Manage Ticket Definitions permission.\n * Member checkout uses queryAvailableTickets; LiftGear member reads returned 403 here.\n * @see https://dev.wix.com/docs/api-reference/business-solutions/events/event-management/ticket-definitions-v3/get-ticket-definition\n */",
18162
- "decl": "export function getTicketDefinition(id: string): Promise<{ ticketDefinition?: { id?: string; eventId?: string; hidden?: boolean; saleStatus?: string; pricingMethod?: { pricingType?: string; fixedPrice?: { value?: string; currency?: string } } } }>;",
18163
- "http": "GET /events/v3/ticket-definitions/{…}",
18164
- "scope": "owner"
18165
- },
18166
17664
  {
18167
17665
  "name": "WixTicketQuantity",
18168
17666
  "kind": "interface",
@@ -24344,72 +23842,6 @@
24344
23842
  "jsdoc": "/** POST /restaurants/menus/v1/sections/query — menu sections (perm\n * RESTAURANTS.SECTION_READ; visitor-readable on sites with the Menus app). */",
24345
23843
  "decl": "export function querySections(\n req: WixSectionQueryRequest = {} as WixSectionQueryRequest,\n): Promise<WixQuerySectionsResponse>;",
24346
23844
  "http": "POST /restaurants/menus/v1/sections/query"
24347
- },
24348
- {
24349
- "name": "WixRestaurantsAddress",
24350
- "kind": "interface",
24351
- "jsdoc": "/** An address as the Restaurants services return it. `subdivision` is ISO 3166-2 (`US-CA`). */",
24352
- "decl": "export interface WixRestaurantsAddress {\n country?: string;\n subdivision?: string;\n city?: string;\n postalCode?: string;\n addressLine?: string;\n formattedAddress?: string;\n}"
24353
- },
24354
- {
24355
- "name": "WixOperation",
24356
- "kind": "interface",
24357
- "jsdoc": "/** A Restaurants ordering operation (a \"ordering page\": hours, fulfillment methods, status). */",
24358
- "decl": "export interface WixOperation {\n id: string;\n name?: string;\n /** The site's default operation. */\n default?: boolean;\n /** `ENABLED` takes orders; `DISABLED` and `PAUSED_UNTIL` (see `pausedUntilOptions.time`) do not. */\n onlineOrderingStatus?: string;\n pausedUntilOptions?: { time?: string };\n /** `PICKUP` | `DELIVERY`. */\n defaultFulfillmentType?: string;\n /** The fulfillment methods this operation offers — filter `listFulfillmentMethods` by these. */\n fulfillmentIds?: string[];\n businessLocationId?: string;\n}"
24359
- },
24360
- {
24361
- "name": "WixListOperationsResponse",
24362
- "kind": "interface",
24363
- "jsdoc": "",
24364
- "decl": "export interface WixListOperationsResponse {\n operations: WixOperation[];\n}"
24365
- },
24366
- {
24367
- "name": "listOperations",
24368
- "kind": "function",
24369
- "jsdoc": "/** GET /restaurants-operations/v1/operations — every ordering operation on the site.\n * @scope visitor — an anonymous visitor session is enough. */",
24370
- "decl": "export function listOperations(): Promise<WixListOperationsResponse>;",
24371
- "http": "GET /restaurants-operations/v1/operations",
24372
- "scope": "visitor"
24373
- },
24374
- {
24375
- "name": "WixFulfillmentMethod",
24376
- "kind": "interface",
24377
- "jsdoc": "/** A pickup or delivery method. `fee` and `minOrderPrice` are decimal strings; a missing\n * `fee` is 0. Only `enabled` methods may be offered. */",
24378
- "decl": "export interface WixFulfillmentMethod {\n id: string;\n name?: string;\n /** `PICKUP` | `DELIVERY`. */\n type?: string;\n enabled?: boolean;\n fee?: string;\n minOrderPrice?: string;\n pickupOptions?: { address?: WixRestaurantsAddress; instructions?: string };\n deliveryOptions?: { deliveryTimeInMinutes?: number; freeDeliveryThreshold?: string };\n businessLocationId?: string;\n}"
24379
- },
24380
- {
24381
- "name": "WixListFulfillmentMethodsResponse",
24382
- "kind": "interface",
24383
- "jsdoc": "",
24384
- "decl": "export interface WixListFulfillmentMethodsResponse {\n fulfillmentMethods: WixFulfillmentMethod[];\n pagingMetadata?: { count?: number; hasNext?: boolean; cursors?: { next?: string } };\n}"
24385
- },
24386
- {
24387
- "name": "listFulfillmentMethods",
24388
- "kind": "function",
24389
- "jsdoc": "/** GET /fulfillment-methods/v1/fulfillment-methods — every pickup/delivery method on the site.\n * There is no operation filter: keep the ids in the operation's `fulfillmentIds`.\n * @scope visitor — an anonymous visitor session is enough. */",
24390
- "decl": "export function listFulfillmentMethods(\n opts: { limit?: number; cursor?: string } = {},\n): Promise<WixListFulfillmentMethodsResponse>;",
24391
- "http": "GET /fulfillment-methods/v1/fulfillment-methods${query.length ?",
24392
- "scope": "visitor"
24393
- },
24394
- {
24395
- "name": "WixFulfillmentTimeSlot",
24396
- "kind": "interface",
24397
- "jsdoc": "/** The earliest orderable slot for one fulfillment type. An `ASAP` slot is ordered with the\n * code `<TYPE>|ASAP`; a `PREORDER` slot with `<TYPE>|<startEpochMs>|<endEpochMs>`. */",
24398
- "decl": "export interface WixFulfillmentTimeSlot {\n /** Wix spells this field with one \"l\": `PICKUP` | `DELIVERY`. */\n fulfilmentType?: string;\n timeSlot?: { startTime?: string; endTime?: string; orderSchedulingType?: string };\n fulfillmentInfo?: Array<{ fee?: string; minOrderPrice?: string; maxTime?: number }>;\n}"
24399
- },
24400
- {
24401
- "name": "WixFirstAvailableTimeSlotsResponse",
24402
- "kind": "interface",
24403
- "jsdoc": "",
24404
- "decl": "export interface WixFirstAvailableTimeSlotsResponse {\n timeslotsPerFulfillmentType: WixFulfillmentTimeSlot[];\n}"
24405
- },
24406
- {
24407
- "name": "getFirstAvailableTimeSlotPerFulfillmentType",
24408
- "kind": "function",
24409
- "jsdoc": "/** GET /restaurants-operations/v1/operations/{operationId}/first-available-time-slot-per-fulfillment-type\n * — the earliest orderable slot per type. Only orderable slots come back, so a type that is\n * missing cannot be ordered now. Delivery is judged against `deliveryAddress` when given.\n * @scope visitor — an anonymous visitor session is enough. */",
24410
- "decl": "export function getFirstAvailableTimeSlotPerFulfillmentType(\n operationId: string,\n deliveryAddress?: WixRestaurantsAddress,\n): Promise<WixFirstAvailableTimeSlotsResponse>;",
24411
- "http": "GET /restaurants-operations/v1/operations/{…}/first-available-time-slot-per-fulfillment-type${query.length ?",
24412
- "scope": "visitor"
24413
23845
  }
24414
23846
  ]
24415
23847
  },
@@ -25268,7 +24700,7 @@
25268
24700
  "name": "StoreProduct",
25269
24701
  "kind": "interface",
25270
24702
  "jsdoc": "",
25271
- "decl": "export interface StoreProduct {\n id?: string;\n productType?: string;\n name?: string;\n slug?: string;\n description?: string;\n plainDescription?: string;\n /** Both gallery layouts: V1 `mainMedia`/`items`, V3 `main`/`itemsInfo.items`. */\n media?: {\n mainMedia?: WixMediaSlot;\n main?: WixMediaSlot;\n items?: WixMediaSlot[];\n itemsInfo?: { items?: WixMediaSlot[] };\n };\n price?: { formatted?: { price?: string }; price?: number; currency?: string };\n priceData?: { formatted?: { price?: string }; price?: number; currency?: string };\n currency?: string;\n actualPriceRange?: {\n minValue?: { amount?: string; formattedAmount?: string; currency?: string };\n maxValue?: { amount?: string; formattedAmount?: string; currency?: string };\n };\n /** Catalog V3 original price, when the actual price is discounted. */\n compareAtPriceRange?: {\n minValue?: { amount?: string; formattedAmount?: string; currency?: string };\n maxValue?: { amount?: string; formattedAmount?: string; currency?: string };\n };\n /** Option groups, both spellings: V1 `productOptions`, V3 `options`. Declared\n * because the wire carries them on BOTH catalogs and this type denying them is\n * what let every template product screen drop the colour/size picker. Shapes\n * differ per catalog, so read them with `productOptions()` from ./options. */\n productOptions?: unknown[];\n options?: unknown[];\n /** V3 purchasable variants. The cart addresses a V3 option choice by `variantId`,\n * which `cartOptionsPayload()` resolves out of this. */\n variantsInfo?: { variants?: unknown[] };\n /\n/* … */"
24703
+ "decl": "export interface StoreProduct {\n id?: string;\n productType?: string;\n name?: string;\n slug?: string;\n description?: string;\n plainDescription?: string;\n /** Both gallery layouts: V1 `mainMedia`/`items`, V3 `main`/`itemsInfo.items`. */\n media?: {\n mainMedia?: WixMediaSlot;\n main?: WixMediaSlot;\n items?: WixMediaSlot[];\n itemsInfo?: { items?: WixMediaSlot[] };\n };\n price?: { formatted?: { price?: string }; price?: number; currency?: string };\n priceData?: { formatted?: { price?: string }; price?: number; currency?: string };\n currency?: string;\n actualPriceRange?: {\n minValue?: { amount?: string; formattedAmount?: string; currency?: string };\n maxValue?: { amount?: string; formattedAmount?: string; currency?: string };\n };\n /** Option groups, both spellings: V1 `productOptions`, V3 `options`. Declared\n * because the wire carries them on BOTH catalogs and this type denying them is\n * what let every template product screen drop the colour/size picker. Shapes\n * differ per catalog, so read them with `productOptions()` from ./options. */\n productOptions?: unknown[];\n options?: unknown[];\n /** V3 purchasable variants. The cart addresses a V3 option choice by `variantId`,\n * which `cartOptionsPayload()` resolves out of this. */\n variantsInfo?: { variants?: unknown[] };\n}"
25272
24704
  },
25273
24705
  {
25274
24706
  "name": "StoreProductsResponse",
@@ -25307,12 +24739,6 @@
25307
24739
  "jsdoc": "/**\n * EVERY image on the product, sized, in wire order — the gallery a detail screen\n * pages through, not just the one tile `productImage` returns.\n *\n * It reads both catalog layouts (V1 `media.items`, V3 `media.itemsInfo.items`) and\n * falls back to the primary image when the product carries no gallery, so a caller\n * always gets a non-empty list for a product that has any image at all. Empty slots\n * and duplicates are dropped.\n *\n * Exported because the gallery union was being re-derived by hand in ~10 template\n * workers, each free to miss a layout — which is exactly how a V3 store silently\n * lost its thumbnails. Defaults to the LIST budget like `productImage`; pass\n * `WIX_DETAIL_IMAGE` for a full-bleed pager, or `null` for the stored originals.\n */",
25308
24740
  "decl": "export function productGallery(p: StoreProduct, size: WixImageSize | null = WIX_LIST_IMAGE): string[];"
25309
24741
  },
25310
- {
25311
- "name": "normalizeFormattedPrice",
25312
- "kind": "function",
25313
- "jsdoc": "/** Formats Wix-provided price text consistently for display. A recognized symbol after an\n * English-style number moves before the amount; locale-specific decimal and grouping formats\n * remain unchanged. */",
25314
- "decl": "export function normalizeFormattedPrice(formatted: string): string;"
25315
- },
25316
24742
  {
25317
24743
  "name": "plainText",
25318
24744
  "kind": "function",
@@ -25438,7 +24864,7 @@
25438
24864
  "name": "WixCollectionsMetadata",
25439
24865
  "kind": "interface",
25440
24866
  "jsdoc": "",
25441
- "decl": "export interface WixCollectionsMetadata {\n items?: number;\n count?: number;\n offset?: number;\n total?: number;\n}"
24867
+ "decl": "export interface WixCollectionsMetadata {\n items?: number;\n offset?: number;\n}"
25442
24868
  },
25443
24869
  {
25444
24870
  "name": "WixQueryCollectionsRequest",
@@ -25557,7 +24983,7 @@
25557
24983
  "name": "queryStoreCategories",
25558
24984
  "kind": "function",
25559
24985
  "jsdoc": "/** V3 visitor read: list store categories (the V3 replacement for `queryCollections`).\n * POST /categories/v1/categories/query — `treeReference.appNamespace` is REQUIRED. */",
25560
- "decl": "export function queryStoreCategories(limit = 50, cursor?: string): Promise<StoreCategoriesResponse>;",
24986
+ "decl": "export function queryStoreCategories(limit = 50): Promise<StoreCategoriesResponse>;",
25561
24987
  "http": "POST /categories/v1/categories/query"
25562
24988
  },
25563
24989
  {