@wix/app-extensions 1.0.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.
@@ -0,0 +1,2514 @@
1
+ /** Component data */
2
+ interface ComponentData extends ComponentDataDataOneOf {
3
+ /**
4
+ * Create a widget iframe that users can display on their site. We recommend submitting a proposal before using iframes in your app.
5
+ * Learn More: https://devforum.wix.com/en/article/widget-components
6
+ */
7
+ widgetComponentData?: WidgetComponentData;
8
+ /**
9
+ * Display an iframe as a page on a user's site.
10
+ * Learn More: https://dev.wix.com/docs/build-apps/developer-tools/extensions/iframes/guide-to-page-extensions
11
+ */
12
+ pageComponentData?: PageComponentData;
13
+ /**
14
+ * Open an iframe in the Dashboard, or add a link to a page on your platform.
15
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/external-links/about-external-link-extensions
16
+ */
17
+ dashboardComponentData?: DashboardComponentData;
18
+ /**
19
+ * Use an invisible iframe to track activity. It’s added to every page on the site (max. 1).
20
+ * Learn More: https://devforum.wix.com/en/article/worker-components
21
+ */
22
+ workerComponentData?: WorkerComponentData;
23
+ /**
24
+ * Inject a script into a site’s HTML code.
25
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/embedded-scripts/about-embedded-scripts
26
+ */
27
+ embeddedScriptComponentData?: EmbeddedScriptComponentData;
28
+ /**
29
+ * Extend a site’s CMS to store and manage custom data.
30
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/data-collections/about-data-collections-extensions
31
+ */
32
+ dataComponent?: DataComponent;
33
+ /**
34
+ * Display a widget that fits into a predefined slot in a Wix app.
35
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-plugins/about-site-plugin-extensions
36
+ */
37
+ widgetPlugin?: WidgetPluginComponentData;
38
+ /**
39
+ * Provide custom shipping rates to a site's cart and checkout.
40
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/shipping-rates-integration-service-plugin/introduction
41
+ */
42
+ ecomShippingRates?: ShippingRatesConfig;
43
+ /** Extend a Wix entity with custom fields for your app */
44
+ dataExtensions?: DataExtensionsComponentData;
45
+ /**
46
+ * Become a Wix catalog provider and integrate any external repository of sellable items with the Wix eCommerce platform.
47
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/catalog-service-plugin/introduction
48
+ */
49
+ ecomCatalog?: CatalogSPIConfig;
50
+ /**
51
+ * Implement gift card benefits such as balance retrieval, redemption, and voiding transactions.
52
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/gift-cards-service-plugin/introduction
53
+ */
54
+ giftCardsProvider?: GiftCardProviderConfig;
55
+ /**
56
+ * Provide SEO keyword suggestions to site collaborators, report quota usage, and provide a page where users can upgrade their plan.
57
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/marketing/seo-keywords-suggestions-v-1/introduction
58
+ */
59
+ seoKeywordsSuggestions?: SeoKeywordsSuggestionsSPIConfig;
60
+ /**
61
+ * Configure a page for your app that will be embedded in the Wix Dashboard.
62
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-pages/about-dashboard-page-extensions
63
+ */
64
+ backOfficePage?: BackOfficePage;
65
+ /**
66
+ * Provide custom additional fees that are added to a site's cart and checkout.
67
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/additional-fees-service-plugin/introduction
68
+ */
69
+ ecomAdditionalFees?: AdditionalFeesSPIConfig;
70
+ /** Bookings Pricing Provider SPI */
71
+ bookingsPricingProvider?: BookingsPricingProviderConfig;
72
+ /**
73
+ * Apply custom charges to a site based on usage of your app's services.
74
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/app-management/apps/custom-charges-spi/introduction
75
+ */
76
+ premiumCustomCharges?: CustomChargesConfig;
77
+ /**
78
+ * Validate items in a site's cart and checkout based on custom logic.
79
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/validations-integration-spi/introduction
80
+ */
81
+ ecomValidations?: ValidationsSPIConfig;
82
+ /**
83
+ * Build a tool that adds functionality to the Wix editors.
84
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/editor-extensions/about-editor-extensions
85
+ */
86
+ editorAddon?: EditorAddon;
87
+ /** External Database component */
88
+ externalDatabaseProvider?: ExternalDatabaseSpiConfig;
89
+ /**
90
+ * Integrate your service with Wix's payment process to allow merchants to request and use your services on their Wix sites.
91
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/payment-settings-integration-service-plugin/introduction
92
+ */
93
+ ecomPaymentSettings?: PaymentSettingsSPIConfig;
94
+ /**
95
+ * Add a site page that displays selected widgets.
96
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-pages/about-site-page-extensions
97
+ */
98
+ unifiedPage?: UnifiedPage;
99
+ /** Create a reusable modal that can be utilized across multiple pages within your app and in other applications. */
100
+ backOfficeModal?: BackOfficeModal;
101
+ /**
102
+ * Display a draggable widget on a site using a self-hosted custom element.
103
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-widgets/about-site-widget-extensions
104
+ */
105
+ customElementWidget?: CustomElementWidget;
106
+ /**
107
+ * Integrate any external inventory with the Wix eCommerce platform.
108
+ * Learn More: https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/catalogs/inventory-service-plugin/introduction
109
+ */
110
+ ecomInventory?: InventorySpiConfig;
111
+ /**
112
+ * Restriction service plugin for editing products managed by third-party fulfillment apps, such as dropshipping or print-on-demand services
113
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/stores/service-plugins/product-restrictions-v3/introduction
114
+ */
115
+ storesProductRestrictions?: ProductRestrictionsConfig;
116
+ /** Bookings Staff Sorting Provider SPI */
117
+ staffSortingProvider?: StaffSortingProviderConfig;
118
+ }
119
+ /** @oneof */
120
+ interface ComponentDataDataOneOf {
121
+ /**
122
+ * Create a widget iframe that users can display on their site. We recommend submitting a proposal before using iframes in your app.
123
+ * Learn More: https://devforum.wix.com/en/article/widget-components
124
+ */
125
+ widgetComponentData?: WidgetComponentData;
126
+ /**
127
+ * Display an iframe as a page on a user's site.
128
+ * Learn More: https://dev.wix.com/docs/build-apps/developer-tools/extensions/iframes/guide-to-page-extensions
129
+ */
130
+ pageComponentData?: PageComponentData;
131
+ /**
132
+ * Open an iframe in the Dashboard, or add a link to a page on your platform.
133
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/external-links/about-external-link-extensions
134
+ */
135
+ dashboardComponentData?: DashboardComponentData;
136
+ /**
137
+ * Use an invisible iframe to track activity. It’s added to every page on the site (max. 1).
138
+ * Learn More: https://devforum.wix.com/en/article/worker-components
139
+ */
140
+ workerComponentData?: WorkerComponentData;
141
+ /**
142
+ * Inject a script into a site’s HTML code.
143
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/embedded-scripts/about-embedded-scripts
144
+ */
145
+ embeddedScriptComponentData?: EmbeddedScriptComponentData;
146
+ /**
147
+ * Extend a site’s CMS to store and manage custom data.
148
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/data-collections/about-data-collections-extensions
149
+ */
150
+ dataComponent?: DataComponent;
151
+ /**
152
+ * Display a widget that fits into a predefined slot in a Wix app.
153
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-plugins/about-site-plugin-extensions
154
+ */
155
+ widgetPlugin?: WidgetPluginComponentData;
156
+ /**
157
+ * Provide custom shipping rates to a site's cart and checkout.
158
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/shipping-rates-integration-service-plugin/introduction
159
+ */
160
+ ecomShippingRates?: ShippingRatesConfig;
161
+ /** Extend a Wix entity with custom fields for your app */
162
+ dataExtensions?: DataExtensionsComponentData;
163
+ /**
164
+ * Become a Wix catalog provider and integrate any external repository of sellable items with the Wix eCommerce platform.
165
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/catalog-service-plugin/introduction
166
+ */
167
+ ecomCatalog?: CatalogSPIConfig;
168
+ /**
169
+ * Implement gift card benefits such as balance retrieval, redemption, and voiding transactions.
170
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/gift-cards-service-plugin/introduction
171
+ */
172
+ giftCardsProvider?: GiftCardProviderConfig;
173
+ /**
174
+ * Provide SEO keyword suggestions to site collaborators, report quota usage, and provide a page where users can upgrade their plan.
175
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/marketing/seo-keywords-suggestions-v-1/introduction
176
+ */
177
+ seoKeywordsSuggestions?: SeoKeywordsSuggestionsSPIConfig;
178
+ /**
179
+ * Configure a page for your app that will be embedded in the Wix Dashboard.
180
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-pages/about-dashboard-page-extensions
181
+ */
182
+ backOfficePage?: BackOfficePage;
183
+ /**
184
+ * Provide custom additional fees that are added to a site's cart and checkout.
185
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/additional-fees-service-plugin/introduction
186
+ */
187
+ ecomAdditionalFees?: AdditionalFeesSPIConfig;
188
+ /** Bookings Pricing Provider SPI */
189
+ bookingsPricingProvider?: BookingsPricingProviderConfig;
190
+ /**
191
+ * Apply custom charges to a site based on usage of your app's services.
192
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/app-management/apps/custom-charges-spi/introduction
193
+ */
194
+ premiumCustomCharges?: CustomChargesConfig;
195
+ /**
196
+ * Validate items in a site's cart and checkout based on custom logic.
197
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/validations-integration-spi/introduction
198
+ */
199
+ ecomValidations?: ValidationsSPIConfig;
200
+ /**
201
+ * Build a tool that adds functionality to the Wix editors.
202
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/editor-extensions/about-editor-extensions
203
+ */
204
+ editorAddon?: EditorAddon;
205
+ /** External Database component */
206
+ externalDatabaseProvider?: ExternalDatabaseSpiConfig;
207
+ /**
208
+ * Integrate your service with Wix's payment process to allow merchants to request and use your services on their Wix sites.
209
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/payment-settings-integration-service-plugin/introduction
210
+ */
211
+ ecomPaymentSettings?: PaymentSettingsSPIConfig;
212
+ /**
213
+ * Add a site page that displays selected widgets.
214
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-pages/about-site-page-extensions
215
+ */
216
+ unifiedPage?: UnifiedPage;
217
+ /** Create a reusable modal that can be utilized across multiple pages within your app and in other applications. */
218
+ backOfficeModal?: BackOfficeModal;
219
+ /**
220
+ * Display a draggable widget on a site using a self-hosted custom element.
221
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-widgets/about-site-widget-extensions
222
+ */
223
+ customElementWidget?: CustomElementWidget;
224
+ /**
225
+ * Integrate any external inventory with the Wix eCommerce platform.
226
+ * Learn More: https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/catalogs/inventory-service-plugin/introduction
227
+ */
228
+ ecomInventory?: InventorySpiConfig;
229
+ /**
230
+ * Restriction service plugin for editing products managed by third-party fulfillment apps, such as dropshipping or print-on-demand services
231
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/stores/service-plugins/product-restrictions-v3/introduction
232
+ */
233
+ storesProductRestrictions?: ProductRestrictionsConfig;
234
+ /** Bookings Staff Sorting Provider SPI */
235
+ staffSortingProvider?: StaffSortingProviderConfig;
236
+ }
237
+ /** An iframe to be displayed on the user’s site */
238
+ interface WidgetComponentData {
239
+ /** Allow users to resize and move the widget, or pin it to a specific position on all pages of the site. */
240
+ fixedPositionOption?: FixedPositionOptions;
241
+ /** Widget will automatically be stretched to this width after installing it */
242
+ widgetWidthType?: WidgetWidthTypeWithLiterals;
243
+ /**
244
+ * Widget width size
245
+ * @max 9999
246
+ */
247
+ width?: number | null;
248
+ /**
249
+ * Widget width height
250
+ * @max 9999
251
+ */
252
+ height?: number | null;
253
+ /**
254
+ * A public link to the widget endpoint
255
+ * @format WEB_URL
256
+ */
257
+ widgetEndpointUrl?: string | null;
258
+ /** A public link to the mobile endpoint */
259
+ widgetMobileEndpointUrl?: string | null;
260
+ /** A public link to the settings endpoint */
261
+ settingsEndpointUrl?: string | null;
262
+ /** A public link to the SEO endpoint */
263
+ seoEndpointUrl?: string | null;
264
+ /** Product display data for this component */
265
+ widgetDisplay?: WidgetDisplay;
266
+ /** When true, this is the default component */
267
+ default?: boolean;
268
+ /** When this is turned on, this page will be added to the site when installing the app, regardless of whether it's the default component or not */
269
+ essential?: boolean;
270
+ /** Published state for this widget */
271
+ published?: boolean;
272
+ /** When true, allow this widget to be added only once */
273
+ addOnlyOnce?: boolean;
274
+ /**
275
+ * This ID is used to identify your widget endpoint in a Wix site. You can use this ID when using methods of the Wix SDK
276
+ * @readonly
277
+ */
278
+ tpaWidgetId?: string;
279
+ /** Where this should be rendered */
280
+ position?: Position;
281
+ /** Article id in settings panel */
282
+ helpId?: string | null;
283
+ /** Default Mobile Height */
284
+ defaultMobileHeight?: number | null;
285
+ /** Min Mobile Height */
286
+ minMobileHeight?: number | null;
287
+ /** Mobile Settings Enabled */
288
+ mobileSettingsEnabled?: boolean;
289
+ /** Mobile article id in settings panel */
290
+ mobileHelpId?: string | null;
291
+ /**
292
+ * Editor setting version. optional values: 1 (old - deprecated) or 2 (new). default value is 2
293
+ * @min 1
294
+ * @max 2
295
+ */
296
+ settingsVersion?: number | null;
297
+ /** If setting version is 1, this will be the public link to the settings endpoint */
298
+ settingsEndpointUrlV1?: string | null;
299
+ /** A public link to the settings endpoint on ADI editor */
300
+ onBoardingSettingsEndpointUrl?: string | null;
301
+ /** The sub pages list for this component to be rendered in */
302
+ subPages?: SubPage[];
303
+ /** If this component should be stretched in relation to a form factor (desktop, tablet, mobile) */
304
+ isStretched?: IsStretched;
305
+ /** Any margins this page should have in relation to a form factor (desktop, tablet, mobile) */
306
+ margins?: Margins;
307
+ /** Any docking this page (horizontal / vertical) should have in relation to a form factor (desktop, tablet, mobile) */
308
+ docking?: Docking;
309
+ /** The height of this page in relation to a form factor (desktop, tablet, mobile) */
310
+ heightBreakPoints?: Height;
311
+ /** The width of this page in relation to a form factor (desktop, tablet, mobile) */
312
+ widthBreakPoints?: ApiWidth;
313
+ /** Keep default and let users stretch widget to full width (GFPP) */
314
+ addStretchButton?: boolean;
315
+ /** toggle to mark whether the editor should revoke an app that contains this component. */
316
+ excludeFromAutoRevoke?: boolean;
317
+ /** should be <%=serviceUrl('your_artifact_id', '<resource-path>')%>, this field will later be used to trasform the settings url field in both the component and the **derived widget** */
318
+ settingsEndpointUrlTemplate?: string | null;
319
+ /** should be <%=serviceUrl('your_artifact_id', '<resource-path>')%>, this field will later be used to trasform the settings url field in both the component and the **derived widget** */
320
+ settingsEndpointUrlV1Template?: string | null;
321
+ }
322
+ /** Allow users to resize and move the widget, or pin it to a specific position on all pages of the site. */
323
+ interface FixedPositionOptions {
324
+ /** Vertical widget position in the browser window */
325
+ widgetVertical?: WidgetVerticalWithLiterals;
326
+ /** Horizontal widget position in the browser window */
327
+ widgetHorizontal?: WidgetHorizontalWithLiterals;
328
+ }
329
+ /** Vertical widget position in the browser window */
330
+ declare enum WidgetVertical {
331
+ NONE_VERTICAL = "NONE_VERTICAL",
332
+ TOP = "TOP",
333
+ CENTER_VERTICAL = "CENTER_VERTICAL",
334
+ BOTTOM = "BOTTOM"
335
+ }
336
+ /** @enumType */
337
+ type WidgetVerticalWithLiterals = WidgetVertical | 'NONE_VERTICAL' | 'TOP' | 'CENTER_VERTICAL' | 'BOTTOM';
338
+ /** Horizontal widget position in the browser window */
339
+ declare enum WidgetHorizontal {
340
+ NONE_HORIZONTAL = "NONE_HORIZONTAL",
341
+ LEFT = "LEFT",
342
+ CENTER_HORIZONTAL = "CENTER_HORIZONTAL",
343
+ RIGHT = "RIGHT"
344
+ }
345
+ /** @enumType */
346
+ type WidgetHorizontalWithLiterals = WidgetHorizontal | 'NONE_HORIZONTAL' | 'LEFT' | 'CENTER_HORIZONTAL' | 'RIGHT';
347
+ /** Widget will automatically be stretched to this width after installing it */
348
+ declare enum WidgetWidthType {
349
+ NONE_TYPE = "NONE_TYPE",
350
+ /** A custom width for the widget */
351
+ CUSTOM = "CUSTOM",
352
+ /** Full width of the browser window */
353
+ FULL = "FULL"
354
+ }
355
+ /** @enumType */
356
+ type WidgetWidthTypeWithLiterals = WidgetWidthType | 'NONE_TYPE' | 'CUSTOM' | 'FULL';
357
+ interface WidgetDisplay {
358
+ name?: string;
359
+ /**
360
+ * short description about the widget
361
+ * @maxLength 300
362
+ */
363
+ shortDescription?: string | null;
364
+ /** images showing off how the widget looks */
365
+ images?: string[];
366
+ /** optional, if no order exist for all components, will be decided by order in array (non-deterministic) */
367
+ order?: number | null;
368
+ price?: number | null;
369
+ variationId?: string | null;
370
+ }
371
+ interface Position {
372
+ region?: RegionWithLiterals;
373
+ }
374
+ declare enum Region {
375
+ no_region = "no_region",
376
+ header = "header",
377
+ pageContainer = "pageContainer",
378
+ footer = "footer"
379
+ }
380
+ /** @enumType */
381
+ type RegionWithLiterals = Region | 'no_region' | 'header' | 'pageContainer' | 'footer';
382
+ interface SubPage {
383
+ /** The path of the subpage */
384
+ key?: string;
385
+ /** If it's sub entities are enumerable for querying (for example, a search endpoint is not enumerable) */
386
+ enumerable?: boolean;
387
+ /** Should hide inner routes of this sub page from floating dynamic pages navigation bar */
388
+ hideFromFloatingNavBar?: boolean;
389
+ /** Should hide this sub page from selections in link panel */
390
+ hideFromLinkPanel?: boolean;
391
+ }
392
+ interface IsStretched {
393
+ desktop?: boolean | null;
394
+ tablet?: boolean | null;
395
+ mobile?: boolean | null;
396
+ }
397
+ interface Margins {
398
+ desktop?: DisplayProperties;
399
+ tablet?: DisplayProperties;
400
+ mobile?: DisplayProperties;
401
+ }
402
+ interface DisplayProperties {
403
+ top?: DisplayValue;
404
+ right?: DisplayValue;
405
+ bottom?: DisplayValue;
406
+ left?: DisplayValue;
407
+ }
408
+ interface DisplayValue {
409
+ type?: UnitTypeWithLiterals;
410
+ value?: number | null;
411
+ }
412
+ declare enum UnitType {
413
+ NO_UNIT = "NO_UNIT",
414
+ AUTO = "AUTO",
415
+ PX = "PX",
416
+ VH = "VH",
417
+ VW = "VW",
418
+ PERCENTAGE = "PERCENTAGE"
419
+ }
420
+ /** @enumType */
421
+ type UnitTypeWithLiterals = UnitType | 'NO_UNIT' | 'AUTO' | 'PX' | 'VH' | 'VW' | 'PERCENTAGE';
422
+ interface Docking {
423
+ desktop?: DockingProperties;
424
+ tablet?: DockingProperties;
425
+ mobile?: DockingProperties;
426
+ }
427
+ interface DockingProperties {
428
+ horizontal?: HorizontalDockingWithLiterals;
429
+ vertical?: VerticalDockingWithLiterals;
430
+ }
431
+ declare enum HorizontalDocking {
432
+ NO_HDOCKING = "NO_HDOCKING",
433
+ LEFT_DOCKING = "LEFT_DOCKING",
434
+ HCENTER = "HCENTER",
435
+ RIGHT_DOCKING = "RIGHT_DOCKING"
436
+ }
437
+ /** @enumType */
438
+ type HorizontalDockingWithLiterals = HorizontalDocking | 'NO_HDOCKING' | 'LEFT_DOCKING' | 'HCENTER' | 'RIGHT_DOCKING';
439
+ declare enum VerticalDocking {
440
+ NO_VDOCKING = "NO_VDOCKING",
441
+ TOP_DOCKING = "TOP_DOCKING",
442
+ VCENTER = "VCENTER",
443
+ BOTTOM_DOCKING = "BOTTOM_DOCKING"
444
+ }
445
+ /** @enumType */
446
+ type VerticalDockingWithLiterals = VerticalDocking | 'NO_VDOCKING' | 'TOP_DOCKING' | 'VCENTER' | 'BOTTOM_DOCKING';
447
+ interface Height {
448
+ desktop?: DisplayValue;
449
+ tablet?: DisplayValue;
450
+ mobile?: DisplayValue;
451
+ }
452
+ interface ApiWidth {
453
+ desktop?: DisplayValue;
454
+ tablet?: DisplayValue;
455
+ mobile?: DisplayValue;
456
+ }
457
+ /** An iframe to be displayed as a full page on the user’s site */
458
+ interface PageComponentData {
459
+ /** Hide this page from the user’s site menu */
460
+ isHidden?: boolean;
461
+ /** Show in pages menu */
462
+ showInPanel?: boolean | null;
463
+ /** Set page to full width */
464
+ isFullWidth?: boolean;
465
+ /** Keep default and let users stretch page to full width (GFPP) */
466
+ addStrechButton?: boolean;
467
+ /**
468
+ * A public link to the page endpoint
469
+ * @format WEB_URL
470
+ */
471
+ pageEndpointUrl?: string | null;
472
+ /** A public link to the mobile endpoint */
473
+ pageMobileEndpointUrl?: string | null;
474
+ /** A public link to the settings endpoint */
475
+ settingsEndpointUrl?: string | null;
476
+ /** A public link to the SEO endpoint */
477
+ seoEndpointUrl?: string | null;
478
+ /**
479
+ * When true, this is the default component
480
+ * Main visual component. One components must be default (no more than 1 component)
481
+ */
482
+ default?: boolean;
483
+ /**
484
+ * Second visual component
485
+ * When this is turned on, this page will be added to the site when installing the app, regardless of whether it's the default component or not
486
+ */
487
+ essential?: boolean;
488
+ /** Published state for this page */
489
+ published?: boolean;
490
+ /**
491
+ * This ID is used to identify your page endpoint in a Wix site. You can use this ID when using methods of the Wix SDK
492
+ * @readonly
493
+ */
494
+ tpaWidgetId?: string;
495
+ /** Article id in settings panel */
496
+ helpId?: string | null;
497
+ /** Default Mobile Height */
498
+ defaultMobileHeight?: number | null;
499
+ /** Min Mobile Height */
500
+ minMobileHeight?: number | null;
501
+ /** Mobile Settings Enabled */
502
+ mobileSettingsEnabled?: boolean;
503
+ /** Mobile article id in settings panel */
504
+ mobileHelpId?: string | null;
505
+ /**
506
+ * Editor setting version. optional values: 1 (old - deprecated) or 2 (new). default value is 2
507
+ * @min 1
508
+ * @max 2
509
+ */
510
+ settingsVersion?: number | null;
511
+ /** If setting version is 1, this will be the public link to the settings endpoint */
512
+ settingsEndpointUrlV1?: string | null;
513
+ /** A public link to the settings endpoint on ADI editor */
514
+ onBoardingSettingsEndpointUrl?: string | null;
515
+ /** The padding to use in different views */
516
+ padding?: Padding;
517
+ /** The sub pages list for this component to be rendered in */
518
+ subPages?: SubPage[];
519
+ /** toggle to mark whether the editor should revoke an app that contains this component. */
520
+ excludeFromAutoRevoke?: boolean;
521
+ /** Options to mark whether this page is replacing other page or is replaced by other page. */
522
+ pageReplaceOptions?: PageReplaceOptions;
523
+ /** Elements in the editor can be linked to this page (a button for example) */
524
+ linkable?: boolean | null;
525
+ /** Should add the page to site menu. defaults to true (will add the page to site menu) */
526
+ addToSiteMenu?: boolean | null;
527
+ /** Should allow multiple instances of the page (allow duplicate the page). defaults to false (will not allow multiple instances of the page) */
528
+ multiInstanceEnabled?: boolean;
529
+ /**
530
+ * short description about the page
531
+ * @maxLength 300
532
+ */
533
+ shortDescription?: string | null;
534
+ }
535
+ interface Padding {
536
+ desktop?: DisplayProperties;
537
+ tablet?: DisplayProperties;
538
+ mobile?: DisplayProperties;
539
+ }
540
+ interface PageReplaceOptions extends PageReplaceOptionsOptionsOneOf {
541
+ replacingOptions?: ReplacingOptions;
542
+ replaceableOptions?: ReplaceableOptions;
543
+ type?: ReplacementTypeWithLiterals;
544
+ }
545
+ /** @oneof */
546
+ interface PageReplaceOptionsOptionsOneOf {
547
+ replacingOptions?: ReplacingOptions;
548
+ replaceableOptions?: ReplaceableOptions;
549
+ }
550
+ interface PageReplace {
551
+ /**
552
+ * The app id of the page the app can replace
553
+ * @format GUID
554
+ */
555
+ appId?: string;
556
+ /**
557
+ * The page id the app can replace
558
+ * @format GUID
559
+ */
560
+ pageId?: string;
561
+ }
562
+ declare enum ReplacementType {
563
+ UNKNOWN_REPLACEMENT = "UNKNOWN_REPLACEMENT",
564
+ REPLACING = "REPLACING",
565
+ REPLACEABLE = "REPLACEABLE"
566
+ }
567
+ /** @enumType */
568
+ type ReplacementTypeWithLiterals = ReplacementType | 'UNKNOWN_REPLACEMENT' | 'REPLACING' | 'REPLACEABLE';
569
+ interface ReplacingOptions {
570
+ /** describe the page and application id that this page will replace. */
571
+ pageReplace?: PageReplace;
572
+ }
573
+ interface ReplaceableOptions {
574
+ /** toggle to mark whether this page can be replaced by other page or app. */
575
+ isReplaceable?: boolean;
576
+ }
577
+ /** The types of public APIs exposed by the Plugin */
578
+ declare enum PluginInterface {
579
+ /** No public APIs exposed */
580
+ NONE_INTERFACE = "NONE_INTERFACE",
581
+ /** The slot requires the REVIEWS interface to be implemented by the plugin. The plugin specifies the implementation of the REVIEWS interface */
582
+ REVIEWS = "REVIEWS",
583
+ /** The slot requires the RATINGS_SUMMARY interface to be implemented by the plugin. The plugin specifies the implementation of the RATINGS_SUMMARY interface */
584
+ RATINGS_SUMMARY = "RATINGS_SUMMARY",
585
+ /** The slot requires the RATINGS_SUMMARY_OOI_LIST interface to be implemented by the plugin. The plugin specifies the implementation of the RATINGS_SUMMARY_OOI_LIST interface */
586
+ RATINGS_SUMMARY_OOI_LIST = "RATINGS_SUMMARY_OOI_LIST",
587
+ /** The slot requires the BOOKINGS_SERVICE interface to be implemented by the plugin. The plugin specifies the implementation of the BOOKINGS_SERVICE interface */
588
+ BOOKINGS_SERVICE = "BOOKINGS_SERVICE",
589
+ /** The slot requires the BOOKINGS_FORM interface to be implemented by the plugin. The plugin specifies the implementation of the BOOKINGS_FORM interface */
590
+ BOOKINGS_FORM = "BOOKINGS_FORM",
591
+ /** The slot requires the BASE interface to be implemented by the plugin. The plugin specifies the implementation of the BASE interface */
592
+ BASE = "BASE",
593
+ /** The slot requires the EVENT interface to be implemented by the plugin. The plugin specifies the implementation of the EVENT interface */
594
+ EVENT = "EVENT",
595
+ /** The slot requires the PRODUCT interface to be implemented by the plugin. The plugin specifies the implementation of the PRODUCT interface */
596
+ PRODUCT = "PRODUCT",
597
+ /** The slot requires the CHECKOUT interface to be implemented by the plugin. The plugin specifies the implementation of the CHECKOUT interface */
598
+ CHECKOUT = "CHECKOUT",
599
+ /** The slot requires the CATEGORY interface to be implemented by the plugin. The plugin specifies the implementation of the CATEGORY interface */
600
+ CATEGORY = "CATEGORY",
601
+ /** The slot requires the BOOKINGS_CALENDAR interface to be implemented by the plugin. The plugin specifies the implementation of the BOOKINGS_CALENDAR interface */
602
+ BOOKINGS_CALENDAR = "BOOKINGS_CALENDAR",
603
+ /** The slot requires the CART interface to be implemented by the plugin. The plugin specifies the implementation of the CART interface */
604
+ CART = "CART"
605
+ }
606
+ /** @enumType */
607
+ type PluginInterfaceWithLiterals = PluginInterface | 'NONE_INTERFACE' | 'REVIEWS' | 'RATINGS_SUMMARY' | 'RATINGS_SUMMARY_OOI_LIST' | 'BOOKINGS_SERVICE' | 'BOOKINGS_FORM' | 'BASE' | 'EVENT' | 'PRODUCT' | 'CHECKOUT' | 'CATEGORY' | 'BOOKINGS_CALENDAR' | 'CART';
608
+ /**
609
+ * An iframe that opens in the user’s Wix Dashboard,
610
+ * or add a link to open the page directly in your platform.
611
+ */
612
+ interface DashboardComponentData {
613
+ /**
614
+ * The dashboard url.
615
+ * @format WEB_URL
616
+ */
617
+ url?: string;
618
+ /**
619
+ * External or Internal dashboard.
620
+ * The user’s Wix Dashboard (recommended) or your platform or site
621
+ */
622
+ embedded?: boolean;
623
+ /**
624
+ * A settings page for users to customize your dashboard
625
+ * @maxLength 300
626
+ */
627
+ settingsPageUrl?: string | null;
628
+ /** @maxLength 300 */
629
+ checkStatusUrl?: string | null;
630
+ published?: boolean | null;
631
+ hideWixSideMenu?: boolean | null;
632
+ }
633
+ /** An invisible iframe to track site activity. It’ll be added to every page on the user’s site */
634
+ interface WorkerComponentData {
635
+ /**
636
+ * A public link to the worker endpoint
637
+ * @format WEB_URL
638
+ */
639
+ workerEndpointUrl?: string;
640
+ }
641
+ /** Defines the main preset per breakpoint for the widget. */
642
+ interface MainPresets {
643
+ /** The main desktop preset. */
644
+ desktopPresetId?: string;
645
+ /** The main tablet preset. */
646
+ tabletPresetId?: string;
647
+ /** The main mobile preset. */
648
+ mobilePresetId?: string;
649
+ }
650
+ interface BaseInfo {
651
+ /**
652
+ * The name of the component
653
+ * @minLength 1
654
+ * @maxLength 30
655
+ */
656
+ name?: string;
657
+ /** The internal id of the component by the own app */
658
+ id?: string;
659
+ /**
660
+ * The description of the component by the own app
661
+ * @maxLength 130
662
+ */
663
+ description?: string;
664
+ /** Reference to help articles about the widget */
665
+ helpResources?: HelpResources;
666
+ }
667
+ interface HelpResources {
668
+ /**
669
+ * The Wix Answers' article related to the component (chosen by own app)
670
+ * @format GUID
671
+ */
672
+ articleId?: string;
673
+ }
674
+ interface WidgetInstallationSettings extends WidgetInstallationSettingsTargetContainerOneOf {
675
+ /** Which static container should the widget be installed at */
676
+ staticContainer?: StaticContainerWithLiterals;
677
+ /**
678
+ * Deprecated, autoAdd should be mapped to static_container HOMEPAGE, essential should be mapped to container. Shared installation settings for unified components
679
+ * @deprecated Deprecated, autoAdd should be mapped to static_container HOMEPAGE, essential should be mapped to container. Shared installation settings for unified components
680
+ * @replacedBy static_container
681
+ * @targetRemovalDate 2026-02-26
682
+ */
683
+ base?: BaseInstallation;
684
+ /**
685
+ * Deprecated, default_preset should be mapped to presets, region is not relevant. Widget installation settings for unified components
686
+ * @deprecated Deprecated, default_preset should be mapped to presets, region is not relevant. Widget installation settings for unified components
687
+ * @replacedBy presets
688
+ * @targetRemovalDate 2026-02-26
689
+ */
690
+ widget?: WidgetInstallation;
691
+ /** Default presets per breakpoint with which the widget should be installed */
692
+ presets?: DefaultPresets;
693
+ }
694
+ /** @oneof */
695
+ interface WidgetInstallationSettingsTargetContainerOneOf {
696
+ /** Which static container should the widget be installed at */
697
+ staticContainer?: StaticContainerWithLiterals;
698
+ }
699
+ interface BaseInstallation {
700
+ /** Auto add component to stage */
701
+ autoAdd?: boolean;
702
+ /** Mark component as essential for the existence of the app (force to delete the whole app) */
703
+ essential?: boolean;
704
+ /** Max instances of the component that can be on site */
705
+ maxInstances?: number | null;
706
+ }
707
+ interface WidgetInstallation {
708
+ /** Preset should be selected defaultly with installation */
709
+ defaultPreset?: MainPresets;
710
+ /** Region of widget */
711
+ region?: RegionTypeWithLiterals;
712
+ }
713
+ declare enum RegionType {
714
+ HEADER = "HEADER",
715
+ BODY = "BODY",
716
+ FOOTER = "FOOTER"
717
+ }
718
+ /** @enumType */
719
+ type RegionTypeWithLiterals = RegionType | 'HEADER' | 'BODY' | 'FOOTER';
720
+ interface DefaultPresets {
721
+ /**
722
+ * Default preset ID in small (mobile) breakpoint
723
+ * @minLength 1
724
+ * @maxLength 50
725
+ */
726
+ small?: string | null;
727
+ /**
728
+ * Deprecated, use default - Default preset ID in large (desktop) breakpoint
729
+ * @minLength 1
730
+ * @maxLength 50
731
+ * @deprecated Deprecated, use default - Default preset ID in large (desktop) breakpoint
732
+ * @replacedBy default
733
+ * @targetRemovalDate 2025-12-02
734
+ */
735
+ large?: string | null;
736
+ /**
737
+ * Default preset ID
738
+ * @minLength 1
739
+ * @maxLength 50
740
+ */
741
+ default?: string | null;
742
+ }
743
+ declare enum StaticContainer {
744
+ UNKNOWN_CONTAINER = "UNKNOWN_CONTAINER",
745
+ /** Widget should be installed in the homepage */
746
+ HOMEPAGE = "HOMEPAGE"
747
+ }
748
+ /** @enumType */
749
+ type StaticContainerWithLiterals = StaticContainer | 'UNKNOWN_CONTAINER' | 'HOMEPAGE';
750
+ /** Inject third party scripts into the user’s site */
751
+ interface EmbeddedScriptComponentData {
752
+ /** The script */
753
+ template?: string;
754
+ /** A name that’s unique to this component. Names can include letters and the hyphen (-) character only */
755
+ name?: string;
756
+ /** What category of pages this will be embedded on (single, many, none) */
757
+ pages?: EmbeddedScriptPagesWithLiterals;
758
+ /** Where in the HTML this should be embedded */
759
+ placement?: EmbeddedScriptPlacementWithLiterals;
760
+ /** An article explaining how to activate the script */
761
+ connectArticleUrl?: string;
762
+ /** Type of script you are injecting. This will be used for GDPR and cookie consent purposes */
763
+ embedCategory?: EmbedCategoryWithLiterals;
764
+ /**
765
+ * if the script should be loaded once - default and only supported value is true
766
+ * @readonly
767
+ */
768
+ loadOnce?: boolean;
769
+ /** allow developers to decide if their app script can be install on free sites */
770
+ allowedForFreeSite?: boolean;
771
+ /**
772
+ * The runtime dependencies array to declare the widget packages.
773
+ * @maxSize 50
774
+ */
775
+ dependencies?: WixDependency[];
776
+ }
777
+ /** Category of pages this will be embedded on (single, many, none) */
778
+ declare enum EmbeddedScriptPages {
779
+ /** It will not be embedded */
780
+ NONE_PAGES = "NONE_PAGES",
781
+ /** It will be embedded once */
782
+ ONCE = "ONCE",
783
+ /** It will be embedded multiple times on specific pages */
784
+ SPECIFIC_PAGES = "SPECIFIC_PAGES"
785
+ }
786
+ /** @enumType */
787
+ type EmbeddedScriptPagesWithLiterals = EmbeddedScriptPages | 'NONE_PAGES' | 'ONCE' | 'SPECIFIC_PAGES';
788
+ /** Where that embed will be rendered */
789
+ declare enum EmbeddedScriptPlacement {
790
+ /** It will not be rendered */
791
+ NONE_PLACEMENT = "NONE_PLACEMENT",
792
+ /** In the document head */
793
+ HEAD = "HEAD",
794
+ /** Prepended before all children already rendered in the body tag */
795
+ BODY_START = "BODY_START",
796
+ /** Appended after the last child already rendered in the body tag */
797
+ BODY_END = "BODY_END"
798
+ }
799
+ /** @enumType */
800
+ type EmbeddedScriptPlacementWithLiterals = EmbeddedScriptPlacement | 'NONE_PLACEMENT' | 'HEAD' | 'BODY_START' | 'BODY_END';
801
+ /** Embed category defined for Privacy regulation compliance in EU and CCPA in the US */
802
+ declare enum EmbedCategory {
803
+ /** Not categorized yet */
804
+ UNKNOWN = "UNKNOWN",
805
+ /** Must load regardless of policy */
806
+ ESSENTIAL = "ESSENTIAL",
807
+ /** Adds optional functionality to the site */
808
+ FUNCTIONAL = "FUNCTIONAL",
809
+ /** Adds analytics abilities to the site */
810
+ ANALYTICS = "ANALYTICS",
811
+ /** Adds advertising content or advertising tracking to the site */
812
+ ADVERTISING = "ADVERTISING"
813
+ }
814
+ /** @enumType */
815
+ type EmbedCategoryWithLiterals = EmbedCategory | 'UNKNOWN' | 'ESSENTIAL' | 'FUNCTIONAL' | 'ANALYTICS' | 'ADVERTISING';
816
+ interface WixDependency {
817
+ /**
818
+ * The fully qualified package name from npm, example: @wix/frontend-location
819
+ * @minLength 2
820
+ * @maxLength 100
821
+ */
822
+ packageName?: string;
823
+ /** The major version of the package (this may be a detail included in the package name, but is conventional in NPM with semver semantics */
824
+ version?: number;
825
+ }
826
+ declare enum ExtensionType {
827
+ NONE_EXTENSION = "NONE_EXTENSION",
828
+ PAYMENTS_GATEWAY_EXTENSION = "PAYMENTS_GATEWAY_EXTENSION",
829
+ COUPONS_EXTENSION = "COUPONS_EXTENSION",
830
+ DROPSHIPPING_EXTENSION = "DROPSHIPPING_EXTENSION",
831
+ FULFILMENT_EXTENSION = "FULFILMENT_EXTENSION",
832
+ DROPSHIPPING_SUPPLIER_EXTENSION = "DROPSHIPPING_SUPPLIER_EXTENSION",
833
+ FULFILLMENT_CENTER_EXTENSION = "FULFILLMENT_CENTER_EXTENSION",
834
+ RESTAURANTS_POS_EXTENSION = "RESTAURANTS_POS_EXTENSION",
835
+ ART_STORE_EXTENSION = "ART_STORE_EXTENSION",
836
+ ASCEND_AUTOMATION_EXTENSION = "ASCEND_AUTOMATION_EXTENSION",
837
+ CONTACT_LABELS_EXTENSION = "CONTACT_LABELS_EXTENSION"
838
+ }
839
+ /** @enumType */
840
+ type ExtensionTypeWithLiterals = ExtensionType | 'NONE_EXTENSION' | 'PAYMENTS_GATEWAY_EXTENSION' | 'COUPONS_EXTENSION' | 'DROPSHIPPING_EXTENSION' | 'FULFILMENT_EXTENSION' | 'DROPSHIPPING_SUPPLIER_EXTENSION' | 'FULFILLMENT_CENTER_EXTENSION' | 'RESTAURANTS_POS_EXTENSION' | 'ART_STORE_EXTENSION' | 'ASCEND_AUTOMATION_EXTENSION' | 'CONTACT_LABELS_EXTENSION';
841
+ /** An extension for adding data collections to a site when the app is installed. */
842
+ interface DataComponent {
843
+ /**
844
+ * Data collections automatically added to a site when the app is installed.
845
+ * @maxSize 100
846
+ */
847
+ collections?: Collection[];
848
+ }
849
+ interface Field extends FieldTypeOptionsOneOf {
850
+ /** Metadata for a reference field. */
851
+ referenceOptions?: ReferenceOptions;
852
+ /** Metadata for a multi-reference field. */
853
+ multiReferenceOptions?: MultiReferenceOptions;
854
+ /** Metadata for an object field. */
855
+ objectOptions?: ObjectOptions;
856
+ /** Metadata for an array field. */
857
+ arrayOptions?: ArrayOptions;
858
+ /**
859
+ * Required. Unique identifier for the field. For example, `firstName`.
860
+ * @minLength 1
861
+ * @maxLength 1000
862
+ */
863
+ key?: string;
864
+ /**
865
+ * Field's display name when displayed in the CMS. For example, `First Name`.
866
+ * @minLength 1
867
+ * @maxLength 1000
868
+ */
869
+ displayName?: string | null;
870
+ /**
871
+ * Required. Field's data type.
872
+ *
873
+ * Learn more about [data types in Wix Data](https://dev.wix.com/docs/rest/business-solutions/cms/data-types-in-wix-data).
874
+ */
875
+ type?: FieldTypeWithLiterals;
876
+ /** Whether the field is encrypted. */
877
+ encrypted?: boolean;
878
+ /**
879
+ * Field description.
880
+ * @maxLength 16000
881
+ */
882
+ description?: string | null;
883
+ }
884
+ /** @oneof */
885
+ interface FieldTypeOptionsOneOf {
886
+ /** Metadata for a reference field. */
887
+ referenceOptions?: ReferenceOptions;
888
+ /** Metadata for a multi-reference field. */
889
+ multiReferenceOptions?: MultiReferenceOptions;
890
+ /** Metadata for an object field. */
891
+ objectOptions?: ObjectOptions;
892
+ /** Metadata for an array field. */
893
+ arrayOptions?: ArrayOptions;
894
+ }
895
+ declare enum FieldType {
896
+ UNKNOWN_FIELD_TYPE = "UNKNOWN_FIELD_TYPE",
897
+ /** Plain-text string. */
898
+ TEXT = "TEXT",
899
+ /** Number. */
900
+ NUMBER = "NUMBER",
901
+ /** Date string in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DD`. */
902
+ DATE = "DATE",
903
+ /** [JavaScript Date object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) (SDK) or an object in the following format: `"someFieldKey": { "$date": "YYYY-MM-DDTHH:mm:ss.sssZ"}`. */
904
+ DATETIME = "DATETIME",
905
+ /** Web URL or a [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URL. */
906
+ IMAGE = "IMAGE",
907
+ /** Boolean `true` or `false` value. */
908
+ BOOLEAN = "BOOLEAN",
909
+ /** Web URL or a [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URL. */
910
+ DOCUMENT = "DOCUMENT",
911
+ /** URL in one of the following formats: `http://`, `https://`, `ftp://`, `mailto:`, `sms:`, `tel:`. */
912
+ URL = "URL",
913
+ /** [Rich-text](https://dev.wix.com/docs/rest/articles/getting-started/rich-text) string that may contain a subset of HTML tags. */
914
+ RICH_TEXT = "RICH_TEXT",
915
+ /** Web URL or a [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URL. */
916
+ VIDEO = "VIDEO",
917
+ /** Any field type. */
918
+ ANY = "ANY",
919
+ /** Array of strings. */
920
+ ARRAY_STRING = "ARRAY_STRING",
921
+ /** Array of documents: web or [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URLs. */
922
+ ARRAY_DOCUMENT = "ARRAY_DOCUMENT",
923
+ /** Web URL or a [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URL. */
924
+ AUDIO = "AUDIO",
925
+ /** Time string in `hh:mm:ss.SSS` format. */
926
+ TIME = "TIME",
927
+ /** Language codes in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format. These may include country codes in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#officially_assigned_code_elements) format. */
928
+ LANGUAGE = "LANGUAGE",
929
+ /** [Rich content](https://dev.wix.com/docs/ricos/getting-started/introduction). */
930
+ RICH_CONTENT = "RICH_CONTENT",
931
+ /** Array of web or [Media Manager](https://dev.wix.com/docs/rest/assets/media/media-manager/introduction) URLs. */
932
+ MEDIA_GALLERY = "MEDIA_GALLERY",
933
+ /** Physical [address object](https://dev.wix.com/docs/api-reference/business-solutions/cms/data-types-in-wix-data#address-object). */
934
+ ADDRESS = "ADDRESS",
935
+ /**
936
+ * Reference to another item in another collection. See [Query Referenced Data Items](https://dev.wix.com/docs/api-reference/business-solutions/cms/data-items/query-referenced-data-items) to learn about item references.
937
+ *
938
+ * If you select this type, then you must pass the `referencedCollectionId` field as well.
939
+ */
940
+ REFERENCE = "REFERENCE",
941
+ /** References to multiple items in another collection. See [Query Referenced Data Items](https://dev.wix.com/docs/api-reference/business-solutions/cms/data-items/query-referenced-data-items) to learn about item references. */
942
+ MULTI_REFERENCE = "MULTI_REFERENCE",
943
+ /** JSON object. */
944
+ OBJECT = "OBJECT",
945
+ /** Array. */
946
+ ARRAY = "ARRAY"
947
+ }
948
+ /** @enumType */
949
+ type FieldTypeWithLiterals = FieldType | 'UNKNOWN_FIELD_TYPE' | 'TEXT' | 'NUMBER' | 'DATE' | 'DATETIME' | 'IMAGE' | 'BOOLEAN' | 'DOCUMENT' | 'URL' | 'RICH_TEXT' | 'VIDEO' | 'ANY' | 'ARRAY_STRING' | 'ARRAY_DOCUMENT' | 'AUDIO' | 'TIME' | 'LANGUAGE' | 'RICH_CONTENT' | 'MEDIA_GALLERY' | 'ADDRESS' | 'REFERENCE' | 'MULTI_REFERENCE' | 'OBJECT' | 'ARRAY';
950
+ interface ObjectOptions {
951
+ /**
952
+ * Fields within the object.
953
+ * @maxSize 1000
954
+ */
955
+ fields?: ObjectField[];
956
+ }
957
+ interface ArrayOptions extends ArrayOptionsElementTypeOptionsOneOf {
958
+ /** Metadata for an object field. */
959
+ objectOptions?: ObjectOptions;
960
+ /** Metadata for an array field. */
961
+ arrayOptions?: ArrayOptions;
962
+ /** Element's data type. */
963
+ elementType?: FieldTypeWithLiterals;
964
+ }
965
+ /** @oneof */
966
+ interface ArrayOptionsElementTypeOptionsOneOf {
967
+ /** Metadata for an object field. */
968
+ objectOptions?: ObjectOptions;
969
+ /** Metadata for an array field. */
970
+ arrayOptions?: ArrayOptions;
971
+ }
972
+ interface ObjectField extends ObjectFieldTypeOptionsOneOf {
973
+ /** Metadata for an object field. */
974
+ objectOptions?: ObjectOptions;
975
+ /** Metadata for an array field. */
976
+ arrayOptions?: ArrayOptions;
977
+ /**
978
+ * Field ID.
979
+ * @minLength 1
980
+ * @maxLength 1000
981
+ */
982
+ key?: string;
983
+ /**
984
+ * Display name for the field.
985
+ * @minLength 1
986
+ * @maxLength 1000
987
+ */
988
+ displayName?: string | null;
989
+ /**
990
+ * Field type.
991
+ *
992
+ * Learn more about [data types in Wix Data](https://dev.wix.com/docs/rest/business-solutions/cms/data-types-in-wix-data).
993
+ */
994
+ type?: FieldTypeWithLiterals;
995
+ }
996
+ /** @oneof */
997
+ interface ObjectFieldTypeOptionsOneOf {
998
+ /** Metadata for an object field. */
999
+ objectOptions?: ObjectOptions;
1000
+ /** Metadata for an array field. */
1001
+ arrayOptions?: ArrayOptions;
1002
+ }
1003
+ interface ReferenceOptions {
1004
+ /**
1005
+ * Referenced collection ID.
1006
+ * @minLength 1
1007
+ * @maxLength 256
1008
+ */
1009
+ referencedCollectionId?: string;
1010
+ }
1011
+ interface MultiReferenceOptions {
1012
+ /**
1013
+ * Referenced collection ID.
1014
+ * @minLength 1
1015
+ * @maxLength 256
1016
+ */
1017
+ referencedCollectionId?: string;
1018
+ }
1019
+ /** Data permissions defined by access level for each action. */
1020
+ interface DataPermissions {
1021
+ /** Required. Access level required to read data items. */
1022
+ itemRead?: AccessLevelWithLiterals;
1023
+ /** Required. Access level required to insert data items. */
1024
+ itemInsert?: AccessLevelWithLiterals;
1025
+ /** Required. Access level required to update data items. */
1026
+ itemUpdate?: AccessLevelWithLiterals;
1027
+ /** Required. Access level required to remove data items. */
1028
+ itemRemove?: AccessLevelWithLiterals;
1029
+ }
1030
+ /**
1031
+ * Describes who can perform certain action.
1032
+ * Each level includes all levels below it (except UNDEFINED).
1033
+ */
1034
+ declare enum AccessLevel {
1035
+ /** Not set. */
1036
+ UNDEFINED = "UNDEFINED",
1037
+ /** Anyone, including site visitors. */
1038
+ ANYONE = "ANYONE",
1039
+ /** Any signed-in user, including site members and collaborators. */
1040
+ SITE_MEMBER = "SITE_MEMBER",
1041
+ /** Any signed-in user, but site members only have access to their own items. */
1042
+ SITE_MEMBER_AUTHOR = "SITE_MEMBER_AUTHOR",
1043
+ /** Site collaborator that has a role with CMS access permission. */
1044
+ CMS_EDITOR = "CMS_EDITOR",
1045
+ /** CMS administrators and users or roles granted special access. */
1046
+ PRIVILEGED = "PRIVILEGED"
1047
+ }
1048
+ /** @enumType */
1049
+ type AccessLevelWithLiterals = AccessLevel | 'UNDEFINED' | 'ANYONE' | 'SITE_MEMBER' | 'SITE_MEMBER_AUTHOR' | 'CMS_EDITOR' | 'PRIVILEGED';
1050
+ interface Index {
1051
+ /**
1052
+ * Fields for which the index is defined.
1053
+ *
1054
+ * Max: 3 fields (for a unique index: 1 field)
1055
+ * @minSize 1
1056
+ * @maxSize 3
1057
+ */
1058
+ fields?: IndexField[];
1059
+ /**
1060
+ * Whether the index enforces uniqueness of values in the field for which it is defined.
1061
+ * If `true`, the index can have only one field.
1062
+ *
1063
+ * Default: `false`
1064
+ */
1065
+ unique?: boolean;
1066
+ }
1067
+ /**
1068
+ * Order determines how values are ordered in the index. This is important when
1069
+ * ordering and/or range querying by indexed fields.
1070
+ */
1071
+ declare enum Order {
1072
+ ASC = "ASC",
1073
+ DESC = "DESC"
1074
+ }
1075
+ /** @enumType */
1076
+ type OrderWithLiterals = Order | 'ASC' | 'DESC';
1077
+ interface IndexField {
1078
+ /**
1079
+ * Path of the field to index. For example: `title` or `options.price`.
1080
+ * @minLength 1
1081
+ * @maxLength 128
1082
+ */
1083
+ path?: string;
1084
+ /**
1085
+ * Sort order for the index. Base on how the data is regularly queried.
1086
+ *
1087
+ * Default: `ASC`
1088
+ */
1089
+ order?: OrderWithLiterals;
1090
+ }
1091
+ interface Collection {
1092
+ /**
1093
+ * Required. Collection ID suffix. The app namespace is automatically prepended in the CMS.
1094
+ * For example, the full ID for `my-products-1` becomes `@company/app-name/my-products-1`.
1095
+ * @maxLength 256
1096
+ */
1097
+ idSuffix?: string;
1098
+ /**
1099
+ * Collection's display name as shown in the CMS. For example, `My First Collection`.
1100
+ * @minLength 1
1101
+ * @maxLength 1000
1102
+ */
1103
+ displayName?: string | null;
1104
+ /**
1105
+ * Field whose value the CMS displays to represent the collection item when referenced in a different collection.
1106
+ * @minLength 1
1107
+ * @maxLength 1000
1108
+ */
1109
+ displayField?: string | null;
1110
+ /**
1111
+ * Required. Collection's field structure.
1112
+ * @minSize 1
1113
+ * @maxSize 1000
1114
+ */
1115
+ fields?: Field[];
1116
+ /** Required. Levels of permission for accessing and modifying data, defined by the lowest role needed to perform each action. */
1117
+ dataPermissions?: DataPermissions;
1118
+ /**
1119
+ * Indexes defined for the collection. An index is a map of a collection's data, organized according to specific fields to increase query speed.
1120
+ * @maxSize 3
1121
+ */
1122
+ indexes?: Index[];
1123
+ /**
1124
+ * Optional initial data to populate the collection with.
1125
+ * @maxSize 1000
1126
+ */
1127
+ initialData?: Record<string, any>[] | null;
1128
+ }
1129
+ /** A component to be rendered within Widget Slots */
1130
+ interface WidgetPluginComponentData {
1131
+ /**
1132
+ * ID of the widget used for the plugin component.
1133
+ * @format GUID
1134
+ */
1135
+ referenceComponentId?: string;
1136
+ /** APIs implemented by the Plugin's widget. */
1137
+ pluginInterfaces?: PluginInterfaceWithLiterals[];
1138
+ /** Marketing information about the plugin. */
1139
+ marketData?: PluginMarketData;
1140
+ /** List of placements where the plugin is allowed to be installed. */
1141
+ placements?: PluginPlacement[];
1142
+ /** Widget plugin installation settings. */
1143
+ installation?: PluginInstallationSettings;
1144
+ }
1145
+ /** Marketing information about the plugin. */
1146
+ interface PluginMarketData {
1147
+ /**
1148
+ * Plugin name.
1149
+ * @minLength 1
1150
+ * @maxLength 50
1151
+ */
1152
+ name?: string;
1153
+ /**
1154
+ * Plugin description.
1155
+ * @maxLength 130
1156
+ */
1157
+ description?: string;
1158
+ /**
1159
+ * Plugin logo. 35x35px in JPG or PNG format.
1160
+ * @format WEB_URL
1161
+ */
1162
+ logoUrl?: string | null;
1163
+ }
1164
+ /** Combination of IDs that uniquely identify a slot in the app component. */
1165
+ interface PluginPlacement {
1166
+ /**
1167
+ * Slot app definition ID.
1168
+ * @format GUID
1169
+ */
1170
+ appDefinitionId?: string;
1171
+ /**
1172
+ * Slot app component ID.
1173
+ * @format GUID
1174
+ */
1175
+ widgetId?: string;
1176
+ /**
1177
+ * Slot ID.
1178
+ * @minLength 1
1179
+ */
1180
+ slotId?: string;
1181
+ }
1182
+ interface PluginInstallationSettings {
1183
+ /** Shared installation settings for unified components */
1184
+ base?: BaseInstallation;
1185
+ }
1186
+ interface ShippingRatesConfig {
1187
+ /**
1188
+ * Base URI where the endpoints are called.
1189
+ * Wix eCommerce appends the endpoint path to the base URI.
1190
+ * For example, to call the Get Shipping Rates endpoint at `https://my-shipping-provider.com/v1/getRates`,
1191
+ * the base URI you provide here is `https://my-shipping-provider.com/`.
1192
+ * @minLength 1
1193
+ */
1194
+ deploymentUri?: string;
1195
+ /**
1196
+ * Human-readable name of the shipping provider.
1197
+ * @minLength 1
1198
+ * @maxLength 64
1199
+ */
1200
+ name?: string;
1201
+ /**
1202
+ * Description of the shipping provider.
1203
+ * @maxLength 200
1204
+ */
1205
+ description?: string | null;
1206
+ /**
1207
+ * URL to more info about the shipping provider.
1208
+ * @maxLength 200
1209
+ */
1210
+ learnMoreUrl?: string | null;
1211
+ /**
1212
+ * URL to reach the shipping provider app's dashboard.
1213
+ * @minLength 1
1214
+ * @maxLength 2048
1215
+ * @format WEB_URL
1216
+ */
1217
+ dashboardUrl?: string | null;
1218
+ /** Whether to require the site owner to define a fallback/default rate. Set to `true` if you do not provide rates as part of the integration. */
1219
+ fallbackDefinitionMandatory?: boolean;
1220
+ /**
1221
+ * Thumbnail image of the shipping rates provider. Displayed in the shipping settings section in the Dashboard.
1222
+ * The URL must be of an image uploaded to the [Wix Media Manager](https://support.wix.com/en/article/wix-media-uploading-media-to-the-media-manager).
1223
+ * @format WEB_URL
1224
+ */
1225
+ thumbnailUrl?: string | null;
1226
+ }
1227
+ interface SpiBaseUri {
1228
+ /**
1229
+ * Base URI where the methods are called. Wix appends the path to the `baseUri`.
1230
+ * For example, to call the Get Shipping Rates method at `https://my-shipping-provider.com/v1/getRates`, the base URI you provide here is `https://my-shipping-provider.com/`.
1231
+ * @minLength 6
1232
+ * @maxLength 2048
1233
+ */
1234
+ baseUri?: string;
1235
+ /** Alternate, custom URIs to replace the default URIs for specific service plugin methods. */
1236
+ alternativeUris?: AlternativeUri[];
1237
+ }
1238
+ interface AlternativeUri {
1239
+ /**
1240
+ * Name of the method to create a custom URI for.
1241
+ *
1242
+ * For `methodName`, use the name of the method in PascalCase.
1243
+ * For example, for Get Shipping Rates use `GetShippingRates`.
1244
+ * @minLength 3
1245
+ * @maxLength 128
1246
+ */
1247
+ methodName?: string;
1248
+ /**
1249
+ * Custom URI that Wix uses to call your server for this method. The path-suffix documented in the method will not be appended to this URI.
1250
+ * Must be a secured endpoint beginning with `https://`. For example, `https://www.my-shipping-provider.com/my-shipping-rates`.
1251
+ * @minLength 6
1252
+ * @maxLength 2048
1253
+ */
1254
+ absoluteUri?: string;
1255
+ }
1256
+ /** A component holding schema of Data Extensions */
1257
+ interface DataExtensionsComponentData {
1258
+ /** FQDN of the entity that the application extends */
1259
+ fqdn?: string;
1260
+ /** Schema of the extended fields in JSON Schema compatible format */
1261
+ schema?: Record<string, any> | null;
1262
+ /**
1263
+ * Extension point for this schema. empty string or "ROOT" means regular top level schema
1264
+ * @maxLength 20
1265
+ */
1266
+ extensionPoint?: string;
1267
+ }
1268
+ interface CatalogSPIConfig {
1269
+ /** Base URI which Wix eCommerce will call to access Catalog service plugin endpoints. For example, to call the Get Catalog Items endpoint at `https://my-external-catalog.com/get-catalog-items`, the base URI you provide here is `https://my-external-catalog.com`. */
1270
+ deploymentUri?: string;
1271
+ /** Configuration details for discounts applied to all items in the catalog. */
1272
+ allItemsDiscount?: DiscountConfig;
1273
+ /** Configuration details for discounts applied to specific items in the catalog. */
1274
+ specificItemsDiscount?: DiscountConfig;
1275
+ }
1276
+ interface DiscountConfig {
1277
+ /**
1278
+ * Whether the discount is enabled.
1279
+ *
1280
+ * Default: `false`.
1281
+ */
1282
+ enabled?: boolean;
1283
+ /**
1284
+ * Translation key for text to display to the site owner.
1285
+ * @minLength 5
1286
+ * @maxLength 100
1287
+ */
1288
+ translationKey?: string;
1289
+ }
1290
+ /** List of back-office hosting platforms */
1291
+ declare enum BackOfficeHostingPlatforms {
1292
+ NO_HOSTING_PLATFORM = "NO_HOSTING_PLATFORM",
1293
+ /** Site Dashboard (The Wix Dashboard) */
1294
+ BUSINESS_MANAGER = "BUSINESS_MANAGER",
1295
+ /** User Account Dashboard */
1296
+ ACCOUNT_MANAGER = "ACCOUNT_MANAGER",
1297
+ /** Internal: Dev center */
1298
+ DEV_CENTER = "DEV_CENTER",
1299
+ /** Enterprise dashboard (available to enterprise accounts only) */
1300
+ ENTERPRISE = "ENTERPRISE",
1301
+ /** Partners dashboard (available to partners accounts only) */
1302
+ PARTNERS_DASHBOARD = "PARTNERS_DASHBOARD",
1303
+ /** Employee only financial support dashboard */
1304
+ FINANCIALS_INTERNAL_BO = "FINANCIALS_INTERNAL_BO",
1305
+ /** FED Guild POC dashboard */
1306
+ FED_GUILD_POC = "FED_GUILD_POC",
1307
+ /** Studio dashboard */
1308
+ STUDIO_DASHBOARD = "STUDIO_DASHBOARD",
1309
+ /** Channels dashboard (available to channels accounts only) */
1310
+ CHANNELS = "CHANNELS",
1311
+ /** Wix internal dashboard for data tools (proffesional data consumers, i.e Business Analysts, Data Engineers...) */
1312
+ DATA_TOOLS = "DATA_TOOLS",
1313
+ /** Internal back-office for payment service provider management */
1314
+ PSP_BACKOFFICE = "PSP_BACKOFFICE",
1315
+ /** Rise.ai account dashboard */
1316
+ RISE_PLATFORM_ACCOUNT_DASHBOARD = "RISE_PLATFORM_ACCOUNT_DASHBOARD",
1317
+ /** Enterprise demo dashboard (available to possible enterprise accounts for demo purposes) */
1318
+ DEMO_DASHBOARD_ENTERPRISE = "DEMO_DASHBOARD_ENTERPRISE",
1319
+ /** A new AI scheduling assistant product dashboard (codename: "Nownia") */
1320
+ AI_SCHEDULING_ASSISTANT_DASHBOARD = "AI_SCHEDULING_ASSISTANT_DASHBOARD",
1321
+ /** Employee only getting paid cluster dashboard */
1322
+ GETTING_PAID = "GETTING_PAID",
1323
+ /** Wix internal dashboard for data (non proffesional data consumers, i.e any Wix Employee that has a need for BI data) */
1324
+ DATA = "DATA",
1325
+ /** Dashboard for viral forms/lite events/etc */
1326
+ LITE_DASHBOARD = "LITE_DASHBOARD",
1327
+ /** Picasso AI application POC */
1328
+ PICASSO_EDITOR = "PICASSO_EDITOR",
1329
+ /** Base44 Host Dashboard POC */
1330
+ BASE44_DASHBOARD_POC = "BASE44_DASHBOARD_POC",
1331
+ /** Wixel Editor */
1332
+ WIXEL_EDITOR = "WIXEL_EDITOR",
1333
+ /** Base44 Platform */
1334
+ BASE44_PLATFORM = "BASE44_PLATFORM",
1335
+ /** Payments by Wix Back Office */
1336
+ PAYMENTS_BO = "PAYMENTS_BO"
1337
+ }
1338
+ /** @enumType */
1339
+ type BackOfficeHostingPlatformsWithLiterals = BackOfficeHostingPlatforms | 'NO_HOSTING_PLATFORM' | 'BUSINESS_MANAGER' | 'ACCOUNT_MANAGER' | 'DEV_CENTER' | 'ENTERPRISE' | 'PARTNERS_DASHBOARD' | 'FINANCIALS_INTERNAL_BO' | 'FED_GUILD_POC' | 'STUDIO_DASHBOARD' | 'CHANNELS' | 'DATA_TOOLS' | 'PSP_BACKOFFICE' | 'RISE_PLATFORM_ACCOUNT_DASHBOARD' | 'DEMO_DASHBOARD_ENTERPRISE' | 'AI_SCHEDULING_ASSISTANT_DASHBOARD' | 'GETTING_PAID' | 'DATA' | 'LITE_DASHBOARD' | 'PICASSO_EDITOR' | 'BASE44_DASHBOARD_POC' | 'WIXEL_EDITOR' | 'BASE44_PLATFORM' | 'PAYMENTS_BO';
1340
+ interface GiftCardProviderConfig {
1341
+ /** The URL of the SPI implementation */
1342
+ deploymentUri?: string;
1343
+ }
1344
+ interface SeoKeywordsSuggestionsSPIConfig {
1345
+ /**
1346
+ * Base URL of your SEO implementation. Wix sends API requests to endpoints implemented using this URL.
1347
+ * @minLength 1
1348
+ */
1349
+ baseUri?: string;
1350
+ /**
1351
+ * URL of the page where users can purchase a paid plan. Wix offers a link to this page when you respond with a value of `false` in quota's `paidPlan` property.
1352
+ * @format WEB_URL
1353
+ */
1354
+ upgradeUrl?: string | null;
1355
+ /**
1356
+ * List of countries you support for SEO analysis.
1357
+ * 2-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) format.
1358
+ * @format COUNTRY
1359
+ * @minSize 1
1360
+ * @maxSize 250
1361
+ */
1362
+ supportedCountryCodes?: string[];
1363
+ /** Whether there is a quota limit in the service. When `true`, the response includes the quota object. */
1364
+ quotaEnabled?: boolean | null;
1365
+ /**
1366
+ * Your website's landing page.
1367
+ * @format WEB_URL
1368
+ */
1369
+ landingPageUrl?: string;
1370
+ }
1371
+ /** A page in one of the back-office platforms */
1372
+ interface BackOfficePage extends BackOfficePageAssetOneOf {
1373
+ /** @format WEB_URL */
1374
+ iframeUrl?: string;
1375
+ /** The route of the page, must be a valid URL path, relative to the app namespace or app id */
1376
+ routePath?: string;
1377
+ /** Routes that redirect to this page, these paths should include the original path including the namespace or app id */
1378
+ previousRoutePaths?: string[];
1379
+ /**
1380
+ * Page title, also used as sidebar entry label
1381
+ * @minLength 1
1382
+ */
1383
+ title?: string;
1384
+ /** False by default, if true, sidebar will be hidden when loading the page */
1385
+ fullPage?: boolean;
1386
+ /**
1387
+ * Optional: category this page belongs to
1388
+ * @format GUID
1389
+ */
1390
+ pageCategoryId?: string | null;
1391
+ /** Should the page be shown or hidden in the sidebar, by default a link to the page will be shown */
1392
+ hideInSidebar?: boolean;
1393
+ /** Sidebar order within the category and app, lower priority means the page is earlier, by default priority is 0, meaning newer pages will appear first */
1394
+ priority?: number;
1395
+ /**
1396
+ * Which page is active in sidebar when this page is loaded
1397
+ * @format GUID
1398
+ */
1399
+ activeSidebarPageId?: string | null;
1400
+ /** general component data */
1401
+ metaData?: ComponentMetaData;
1402
+ /**
1403
+ * [Wix Design System icon](https://www.wix-pages.com/wix-design-system-employees/?path=/story/foundations-icons--icons).
1404
+ * Use the full size key. The icon will be rendered in an appropriate size.
1405
+ * @minLength 3
1406
+ * @maxLength 50
1407
+ */
1408
+ iconKey?: string | null;
1409
+ /**
1410
+ * Anchors for direct navigation to specific sections of the page
1411
+ * @maxSize 50
1412
+ */
1413
+ pageAnchors?: PageAnchor[];
1414
+ /**
1415
+ * Determines how the page layout is rendered.
1416
+ * Allowed values: "standard_view", "builder_view", "expanded_view", default: "standard_view".
1417
+ */
1418
+ layoutMode?: LayoutModeWithLiterals;
1419
+ }
1420
+ /** @oneof */
1421
+ interface BackOfficePageAssetOneOf {
1422
+ /** @format WEB_URL */
1423
+ iframeUrl?: string;
1424
+ }
1425
+ interface ComponentMetaData {
1426
+ /**
1427
+ * @minLength 1
1428
+ * @maxLength 200
1429
+ */
1430
+ title?: string | null;
1431
+ /**
1432
+ * @minLength 1
1433
+ * @maxLength 200
1434
+ */
1435
+ description?: string | null;
1436
+ /**
1437
+ * Searchable keywords
1438
+ * @maxSize 100
1439
+ */
1440
+ keywords?: Keywords[];
1441
+ /** Is searchable */
1442
+ searchable?: boolean;
1443
+ }
1444
+ interface Keywords {
1445
+ /** Keyword ID */
1446
+ id?: string;
1447
+ /**
1448
+ * @minLength 1
1449
+ * @maxLength 200
1450
+ */
1451
+ value?: string;
1452
+ }
1453
+ interface PageAnchor {
1454
+ /**
1455
+ * A URL path relative to the page route for direct navigation to a specific section
1456
+ * @minLength 1
1457
+ * @maxLength 100
1458
+ */
1459
+ relativeUrl?: string;
1460
+ /**
1461
+ * [Wix Design System icon](https://www.wix-pages.com/wix-design-system-employees/?path=/story/foundations-icons--icons).
1462
+ * Use the full size key. The icon will be rendered in an appropriate size.
1463
+ * @minLength 3
1464
+ * @maxLength 50
1465
+ */
1466
+ iconKey?: string | null;
1467
+ /** metadata for the page anchor */
1468
+ metaData?: AnchorMetaData;
1469
+ /**
1470
+ * anchor ID
1471
+ * @maxLength 50
1472
+ */
1473
+ id?: string;
1474
+ }
1475
+ interface AnchorMetaData {
1476
+ /**
1477
+ * @minLength 1
1478
+ * @maxLength 200
1479
+ */
1480
+ title?: string | null;
1481
+ /**
1482
+ * @minLength 1
1483
+ * @maxLength 200
1484
+ */
1485
+ description?: string | null;
1486
+ /**
1487
+ * anchor keywords
1488
+ * @maxSize 100
1489
+ */
1490
+ keywords?: Keywords[];
1491
+ }
1492
+ declare enum LayoutMode {
1493
+ STANDARD_VIEW = "STANDARD_VIEW",
1494
+ BUILDER_VIEW = "BUILDER_VIEW",
1495
+ EXPANDED_VIEW = "EXPANDED_VIEW"
1496
+ }
1497
+ /** @enumType */
1498
+ type LayoutModeWithLiterals = LayoutMode | 'STANDARD_VIEW' | 'BUILDER_VIEW' | 'EXPANDED_VIEW';
1499
+ interface AdditionalFeesSPIConfig {
1500
+ /**
1501
+ * Base URI where the endpoints are called.
1502
+ * Wix eCommerce appends the endpoint path to the base URI.
1503
+ * For example, to call the Calculate Additional Fees endpoint at `https://my-additional-fees.com/v1/calculateAdditionalFees`,
1504
+ * the base URI you provide here is `https://my-additional-fees.com/`.
1505
+ */
1506
+ deploymentUri?: string;
1507
+ }
1508
+ interface BookingsPricingProviderConfig {
1509
+ /** URI where the SPI Implementer is deployed */
1510
+ deploymentUri?: string;
1511
+ /** User-friendly name of the pricing provider */
1512
+ pricingProviderName?: string;
1513
+ }
1514
+ /** Component type */
1515
+ declare enum ComponentType {
1516
+ NONE = "NONE",
1517
+ STUDIO = "STUDIO",
1518
+ PLATFORM = "PLATFORM",
1519
+ WORKER = "WORKER",
1520
+ DASHBOARD = "DASHBOARD",
1521
+ WIDGET = "WIDGET",
1522
+ PAGE = "PAGE",
1523
+ DASHBOARD_PLATFORM = "DASHBOARD_PLATFORM",
1524
+ STUDIO_WIDGET = "STUDIO_WIDGET",
1525
+ EMBEDDED_SCRIPT = "EMBEDDED_SCRIPT",
1526
+ EXTENSION = "EXTENSION",
1527
+ SNIPPET_SOLUTION = "SNIPPET_SOLUTION",
1528
+ DATA_COMPONENT = "DATA_COMPONENT",
1529
+ WEB = "WEB",
1530
+ DC_CONFIG = "DC_CONFIG",
1531
+ WIDGET_OUT_OF_IFRAME = "WIDGET_OUT_OF_IFRAME",
1532
+ PAGE_OUT_OF_IFRAME = "PAGE_OUT_OF_IFRAME",
1533
+ STATIC_FILE = "STATIC_FILE",
1534
+ APP_CONFIG = "APP_CONFIG",
1535
+ MULTIPLE_DASHBOARDS = "MULTIPLE_DASHBOARDS",
1536
+ PAYMENTS_GATEWAY = "PAYMENTS_GATEWAY",
1537
+ CODE_PACKAGE = "CODE_PACKAGE",
1538
+ AUTOMATION_TRIGGER = "AUTOMATION_TRIGGER",
1539
+ INVOICES_ACTIONS = "INVOICES_ACTIONS",
1540
+ DASHBOARD_APPLICATION = "DASHBOARD_APPLICATION",
1541
+ CONTACT_LABELS = "CONTACT_LABELS",
1542
+ WIDGET_PLUGIN = "WIDGET_PLUGIN",
1543
+ CROSS_SELL = "CROSS_SELL",
1544
+ LOCAL_DELIVERY = "LOCAL_DELIVERY",
1545
+ PAYMENT_PROVIDER = "PAYMENT_PROVIDER",
1546
+ ECOM_MEMBERSHIPS = "ECOM_MEMBERSHIPS",
1547
+ ECOM_LINE_ITEMS_ENRICHER = "ECOM_LINE_ITEMS_ENRICHER",
1548
+ ECOM_SHIPPING_RATES = "ECOM_SHIPPING_RATES",
1549
+ SHIPPING_LABEL_CARRIER = "SHIPPING_LABEL_CARRIER",
1550
+ RESTAURANTS_POS = "RESTAURANTS_POS",
1551
+ FICTIONAL_SHIPPING_PROVIDER = "FICTIONAL_SHIPPING_PROVIDER",
1552
+ ALERT_ENRICHER = "ALERT_ENRICHER",
1553
+ DATA_EXTENSIONS = "DATA_EXTENSIONS",
1554
+ GENERIC_HOOKS = "GENERIC_HOOKS",
1555
+ AUTOMATIONS_ACTION_PROVIDER = "AUTOMATIONS_ACTION_PROVIDER",
1556
+ ECOM_CATALOG = "ECOM_CATALOG",
1557
+ BACK_OFFICE_EXTENSION_CONTAINER = "BACK_OFFICE_EXTENSION_CONTAINER",
1558
+ BACK_OFFICE_EXTENSION = "BACK_OFFICE_EXTENSION",
1559
+ AUTOMATIONS_TRIGGER_PROVIDER = "AUTOMATIONS_TRIGGER_PROVIDER",
1560
+ IDENTITY_PRE_REGISTRATION = "IDENTITY_PRE_REGISTRATION",
1561
+ PREMIUM_PRODUCTS_PATHS = "PREMIUM_PRODUCTS_PATHS",
1562
+ ECOM_CUSTOM_SCOPE = "ECOM_CUSTOM_SCOPE",
1563
+ GIFT_CARDS_PROVIDER = "GIFT_CARDS_PROVIDER",
1564
+ DEALER_EXTERNAL_FILTER_PROVIDER = "DEALER_EXTERNAL_FILTER_PROVIDER",
1565
+ ECOM_DROPSHIPPING_PROVIDER = "ECOM_DROPSHIPPING_PROVIDER",
1566
+ INVOICES_PROVIDER = "INVOICES_PROVIDER",
1567
+ SEO_KEYWORDS_SUGGESTIONS = "SEO_KEYWORDS_SUGGESTIONS",
1568
+ ECOM_DISCOUNTS_TRIGGER = "ECOM_DISCOUNTS_TRIGGER",
1569
+ MULTILINGUAL_CONTENT_PROVIDER = "MULTILINGUAL_CONTENT_PROVIDER",
1570
+ APPLICATION_AUTOMATION = "APPLICATION_AUTOMATION",
1571
+ BACK_OFFICE_SIDEBAR_CATEGORY = "BACK_OFFICE_SIDEBAR_CATEGORY",
1572
+ BACK_OFFICE_PAGE = "BACK_OFFICE_PAGE",
1573
+ ECOM_ADDITIONAL_FEES = "ECOM_ADDITIONAL_FEES",
1574
+ PING_USER_NOTIFICATION = "PING_USER_NOTIFICATION",
1575
+ ECOM_RECOMMENDATIONS_PROVIDER = "ECOM_RECOMMENDATIONS_PROVIDER",
1576
+ BOOKINGS_PRICING_PROVIDER = "BOOKINGS_PRICING_PROVIDER",
1577
+ IDENTITY_AUTHENTICATOR = "IDENTITY_AUTHENTICATOR",
1578
+ IDENTITY_IDP_CONNECTOR = "IDENTITY_IDP_CONNECTOR",
1579
+ ITEMS_SELECTION_PROVIDER = "ITEMS_SELECTION_PROVIDER",
1580
+ PORTFOLIO_SYNCED_PROJECTS_PROVIDER = "PORTFOLIO_SYNCED_PROJECTS_PROVIDER",
1581
+ COMMUNICATION_CHANNEL = "COMMUNICATION_CHANNEL",
1582
+ IDENTITY_POST_LOGIN = "IDENTITY_POST_LOGIN",
1583
+ BACK_OFFICE_WIDGET = "BACK_OFFICE_WIDGET",
1584
+ SOCIAL_MARKETING_DESIGN = "SOCIAL_MARKETING_DESIGN",
1585
+ FORMS_SUBMISSIONS_PROVIDER = "FORMS_SUBMISSIONS_PROVIDER",
1586
+ WIX_OFFERING = "WIX_OFFERING",
1587
+ DEV_CENTER_TESTING_COMPONENT = "DEV_CENTER_TESTING_COMPONENT",
1588
+ COMPONENTS_VALIDATOR_PROVIDER = "COMPONENTS_VALIDATOR_PROVIDER",
1589
+ COMPONENTS_TRANSLATIONS_ADDITIONAL_FIELDS_PROVIDER = "COMPONENTS_TRANSLATIONS_ADDITIONAL_FIELDS_PROVIDER",
1590
+ FORMS_SCHEMA_PROVIDER = "FORMS_SCHEMA_PROVIDER",
1591
+ BOOKINGS_EXTERNAL_CALENDAR_PROVIDER = "BOOKINGS_EXTERNAL_CALENDAR_PROVIDER",
1592
+ ECOM_DEFAULT_TAXATION_CATEGORY = "ECOM_DEFAULT_TAXATION_CATEGORY",
1593
+ VIEWER_DYNAMIC_SITE_STRUCTURE_PROVIDER = "VIEWER_DYNAMIC_SITE_STRUCTURE_PROVIDER",
1594
+ PING_UOU_NOTIFICATION = "PING_UOU_NOTIFICATION",
1595
+ HEADLESS_OAUTH = "HEADLESS_OAUTH",
1596
+ ECOM_TAX_CALCULATOR_SPI = "ECOM_TAX_CALCULATOR_SPI",
1597
+ COMMENTS_MODERATION_PROVIDER = "COMMENTS_MODERATION_PROVIDER",
1598
+ GRID_APP_FILES_TRANSFORMER = "GRID_APP_FILES_TRANSFORMER",
1599
+ BENEFIT_PROGRAMS_POLICY_PROVIDER = "BENEFIT_PROGRAMS_POLICY_PROVIDER",
1600
+ PREMIUM_CUSTOM_CHARGES = "PREMIUM_CUSTOM_CHARGES",
1601
+ ECOM_VALIDATIONS = "ECOM_VALIDATIONS",
1602
+ COMPONENT_REFERENCE_DATA_PROVIDER = "COMPONENT_REFERENCE_DATA_PROVIDER",
1603
+ WIX_REVIEWS_PRODUCT_CATALOG = "WIX_REVIEWS_PRODUCT_CATALOG",
1604
+ SOCIAL_MARKETING_DESIGNS_PROVIDER = "SOCIAL_MARKETING_DESIGNS_PROVIDER",
1605
+ GOOGLE_BUSINESS_PROFILE_FEATURE_PROVIDER = "GOOGLE_BUSINESS_PROFILE_FEATURE_PROVIDER",
1606
+ COMMENTS_FILTER_PROVIDER = "COMMENTS_FILTER_PROVIDER",
1607
+ BILLING_TAX_ID_VALIDATOR = "BILLING_TAX_ID_VALIDATOR",
1608
+ PING_SETTINGS_GROUP = "PING_SETTINGS_GROUP",
1609
+ FORMS_SPAM_SUBMISSIONS_PROVIDER = "FORMS_SPAM_SUBMISSIONS_PROVIDER",
1610
+ EDITOR_ADDON = "EDITOR_ADDON",
1611
+ EXTERNAL_DATABASE_PROVIDER = "EXTERNAL_DATABASE_PROVIDER",
1612
+ ECOM_PAYMENT_SETTINGS = "ECOM_PAYMENT_SETTINGS",
1613
+ NOTIFICATION_TOPIC = "NOTIFICATION_TOPIC",
1614
+ NOTIFICATION_PREFERENCES_FILTER_PROVIDER = "NOTIFICATION_PREFERENCES_FILTER_PROVIDER",
1615
+ BOOKINGS_RESOURCE_TYPES_PROVIDER = "BOOKINGS_RESOURCE_TYPES_PROVIDER",
1616
+ PRICING_PLANS_FORM_CONFIGURATION = "PRICING_PLANS_FORM_CONFIGURATION",
1617
+ USER_NOTIFICATION = "USER_NOTIFICATION",
1618
+ CONTACT_NOTIFICATION = "CONTACT_NOTIFICATION",
1619
+ UNIFIED_PAGE = "UNIFIED_PAGE",
1620
+ AVAILABILITY_TIME_SLOTS_CONFIGURATION_PROVIDER = "AVAILABILITY_TIME_SLOTS_CONFIGURATION_PROVIDER",
1621
+ PROPOSAL_EDITOR_PROVIDER = "PROPOSAL_EDITOR_PROVIDER",
1622
+ CUSTOM_TABLE_RESERVATIONS_PROVIDER = "CUSTOM_TABLE_RESERVATIONS_PROVIDER",
1623
+ COMMENTS_CONTEXT_PROVIDER = "COMMENTS_CONTEXT_PROVIDER",
1624
+ FORMS_SPAM_SUBMISSION_REPORTS_PROVIDER = "FORMS_SPAM_SUBMISSION_REPORTS_PROVIDER",
1625
+ AUTOMATIONS_VELO_ACTION_PROVIDER = "AUTOMATIONS_VELO_ACTION_PROVIDER",
1626
+ CALENDAR_EVENT_TYPE_PROVIDER = "CALENDAR_EVENT_TYPE_PROVIDER",
1627
+ /** Reserved - previously was `SERVICE_AVAILABILITY_POLICY_PROVIDER` */
1628
+ RESERVED = "RESERVED",
1629
+ SMS_ACTION_MESSAGE = "SMS_ACTION_MESSAGE",
1630
+ BOOKING_POLICY_PROVIDER = "BOOKING_POLICY_PROVIDER",
1631
+ MULTI_SERVICE_BOOKING_POLICY_PROVIDER = "MULTI_SERVICE_BOOKING_POLICY_PROVIDER",
1632
+ AI_ASSISTANT = "AI_ASSISTANT",
1633
+ FORMS_SUBMISSIONS_EXTENSION_PROVIDER = "FORMS_SUBMISSIONS_EXTENSION_PROVIDER",
1634
+ MULTILINGUAL_TRANSLATION_SCHEMA = "MULTILINGUAL_TRANSLATION_SCHEMA",
1635
+ TAX_CALCULATION_PROVIDER = "TAX_CALCULATION_PROVIDER",
1636
+ TAX_GROUPS_PROVIDER = "TAX_GROUPS_PROVIDER",
1637
+ BACK_OFFICE_MODAL = "BACK_OFFICE_MODAL",
1638
+ DEPLOYMENT_PIPELINE_PROVIDER = "DEPLOYMENT_PIPELINE_PROVIDER",
1639
+ CUSTOM_ELEMENT_WIDGET = "CUSTOM_ELEMENT_WIDGET",
1640
+ BACK_OFFICE_EXTENSION_WIDGET = "BACK_OFFICE_EXTENSION_WIDGET",
1641
+ BACK_OFFICE_EXTENSION_MENU_ITEM = "BACK_OFFICE_EXTENSION_MENU_ITEM",
1642
+ FORM_TEMPLATE = "FORM_TEMPLATE",
1643
+ NOTIFICATION_CONTENT = "NOTIFICATION_CONTENT",
1644
+ BROADCAST_LIST = "BROADCAST_LIST",
1645
+ PARTNERS_PAYOUTS = "PARTNERS_PAYOUTS",
1646
+ WIX_REVIEWS_ENTITY_CATALOG = "WIX_REVIEWS_ENTITY_CATALOG",
1647
+ VELO_PUBLISH_PIPELINE_TASK_PROVIDER = "VELO_PUBLISH_PIPELINE_TASK_PROVIDER",
1648
+ FUNCTIONS_SHOP_PRICE_PROVIDER = "FUNCTIONS_SHOP_PRICE_PROVIDER",
1649
+ FUNCTION = "FUNCTION",
1650
+ ECOM_CHECKOUT_CONTENT = "ECOM_CHECKOUT_CONTENT",
1651
+ COMMUNICATION_CHANNEL_PROVIDER = "COMMUNICATION_CHANNEL_PROVIDER",
1652
+ WEBHOOK = "WEBHOOK",
1653
+ TOPOLOGY = "TOPOLOGY",
1654
+ LOYALTY_CUSTOM_REWARDS = "LOYALTY_CUSTOM_REWARDS",
1655
+ FUNCTION_RECIPE = "FUNCTION_RECIPE",
1656
+ BACK_OFFICE_EXTERNAL_URL = "BACK_OFFICE_EXTERNAL_URL",
1657
+ IDENTITY_FACTOR = "IDENTITY_FACTOR",
1658
+ ECOM_DISCOUNTS = "ECOM_DISCOUNTS",
1659
+ VELO_CUSTOM_CSS = "VELO_CUSTOM_CSS",
1660
+ DEALER_ADAPTIVE_COMPONENT_PROVIDER = "DEALER_ADAPTIVE_COMPONENT_PROVIDER",
1661
+ AI_ASSISTANT_ACTION = "AI_ASSISTANT_ACTION",
1662
+ ECOM_INVENTORY = "ECOM_INVENTORY",
1663
+ MONITORING = "MONITORING",
1664
+ PAPI_PROVIDER = "PAPI_PROVIDER",
1665
+ UNIFIED_LIGHTBOX = "UNIFIED_LIGHTBOX",
1666
+ FORMS_EXTENSION_PROVIDER = "FORMS_EXTENSION_PROVIDER",
1667
+ MULTILINGUAL_TRANSLATION_SCHEMA_GROUP = "MULTILINGUAL_TRANSLATION_SCHEMA_GROUP",
1668
+ PANEL = "PANEL",
1669
+ PREMIUM_PURCHASE_VALIDATIONS = "PREMIUM_PURCHASE_VALIDATIONS",
1670
+ BROWSER_STORAGE = "BROWSER_STORAGE",
1671
+ SDK_DEFINITION = "SDK_DEFINITION",
1672
+ SITE_WIDGET_SLOT = "SITE_WIDGET_SLOT",
1673
+ CALENDAR_EVENT_VALIDATION_PROVIDER = "CALENDAR_EVENT_VALIDATION_PROVIDER",
1674
+ CLIENT_SIDE_SERVICE = "CLIENT_SIDE_SERVICE",
1675
+ BILLING_SETTINGS = "BILLING_SETTINGS",
1676
+ PATTERNS_WIZARD = "PATTERNS_WIZARD",
1677
+ APPLICATION_PROFILE = "APPLICATION_PROFILE",
1678
+ TEXT_TO_SPEECH_ACTION_MESSAGE = "TEXT_TO_SPEECH_ACTION_MESSAGE",
1679
+ AUDIENCE_PROVIDER = "AUDIENCE_PROVIDER",
1680
+ PRICING_PLANS_PRICE = "PRICING_PLANS_PRICE",
1681
+ PRICING_PLAN_START_DATE_LIMITS = "PRICING_PLAN_START_DATE_LIMITS",
1682
+ PRICING_PLAN_START_DATE_RULES = "PRICING_PLAN_START_DATE_RULES",
1683
+ EVENTS_TICKET_RESERVATIONS = "EVENTS_TICKET_RESERVATIONS",
1684
+ PAYMENTS_DISPUTE_SERVICE_PLUGIN = "PAYMENTS_DISPUTE_SERVICE_PLUGIN",
1685
+ PRICING_PLANS_FEES = "PRICING_PLANS_FEES",
1686
+ EDITOR_REACT_COMPONENT = "EDITOR_REACT_COMPONENT",
1687
+ SUPPLIERS_HUB_MARKETPLACE = "SUPPLIERS_HUB_MARKETPLACE",
1688
+ FORM_SCHEMA_DYNAMIC_VALUES = "FORM_SCHEMA_DYNAMIC_VALUES",
1689
+ BLOG_PAYWALL_PROVIDER = "BLOG_PAYWALL_PROVIDER",
1690
+ LOYALTY_CUSTOM_REWARDS_V2 = "LOYALTY_CUSTOM_REWARDS_V2",
1691
+ STORES_PRODUCT_RESTRICTIONS = "STORES_PRODUCT_RESTRICTIONS",
1692
+ FORM_SUBMISSION_MODERATION = "FORM_SUBMISSION_MODERATION",
1693
+ EVENTS_EVENT_BADGES = "EVENTS_EVENT_BADGES",
1694
+ BILLING_OPERATION = "BILLING_OPERATION",
1695
+ BACK_OFFICE_CUSTOMIZATION = "BACK_OFFICE_CUSTOMIZATION",
1696
+ COMPONENT_ENRICHER_PROVIDER = "COMPONENT_ENRICHER_PROVIDER",
1697
+ BACK_OFFICE_RESTRICTED_CUSTOMIZATION = "BACK_OFFICE_RESTRICTED_CUSTOMIZATION",
1698
+ EDITOR_APP_PREVIEWS_POC = "EDITOR_APP_PREVIEWS_POC",
1699
+ LEGENDS_PERSONA_CONFIGURATION = "LEGENDS_PERSONA_CONFIGURATION",
1700
+ WIX_HOSTING_APP_DEPLOYMENT_PROVIDER = "WIX_HOSTING_APP_DEPLOYMENT_PROVIDER",
1701
+ BACKEND_WORKER = "BACKEND_WORKER",
1702
+ EVENT_TIME_SLOTS_CONFIGURATION_PROVIDER = "EVENT_TIME_SLOTS_CONFIGURATION_PROVIDER",
1703
+ WIX_HOSTING_APP_ENVIRONMENT_PROVIDER = "WIX_HOSTING_APP_ENVIRONMENT_PROVIDER",
1704
+ SDK_EXPORTS = "SDK_EXPORTS",
1705
+ VIEWER_SERVICE = "VIEWER_SERVICE",
1706
+ WIX_PAYMENTS_PROVIDER_ACCOUNT_SERVICE_PLUGIN = "WIX_PAYMENTS_PROVIDER_ACCOUNT_SERVICE_PLUGIN",
1707
+ CONTACTS_SEGMENTS_V2_FILTER_PROVIDER = "CONTACTS_SEGMENTS_V2_FILTER_PROVIDER",
1708
+ ANALYTICS_PRODUCT_CATALOG = "ANALYTICS_PRODUCT_CATALOG",
1709
+ SITE_MIGRATION = "SITE_MIGRATION",
1710
+ RESTAURANTS_POS_PROVIDER_SETTINGS_SERVICE_PLUGIN = "RESTAURANTS_POS_PROVIDER_SETTINGS_SERVICE_PLUGIN",
1711
+ WIX_VIBE_CODING_INSTRUCTIONS = "WIX_VIBE_CODING_INSTRUCTIONS",
1712
+ TAX_EXEMPT_GROUPS_PROVIDER = "TAX_EXEMPT_GROUPS_PROVIDER",
1713
+ BOOKING_AUTOMATIONS_CONFIGURATION = "BOOKING_AUTOMATIONS_CONFIGURATION",
1714
+ WIX_VIBE_COMPONENT = "WIX_VIBE_COMPONENT",
1715
+ WIXEL = "WIXEL",
1716
+ STAFF_SORTING_PROVIDER = "STAFF_SORTING_PROVIDER",
1717
+ FUNCTION_ECOM_DISCOUNT_TRIGGER_ELIGIBILITY_PROVIDER = "FUNCTION_ECOM_DISCOUNT_TRIGGER_ELIGIBILITY_PROVIDER",
1718
+ FUNCTIONS_ASSISTANT_TOOLS = "FUNCTIONS_ASSISTANT_TOOLS",
1719
+ SITE_MAP_INFO_PROVIDER = "SITE_MAP_INFO_PROVIDER",
1720
+ WIX_AI_GATEWAY_CALLBACK = "WIX_AI_GATEWAY_CALLBACK",
1721
+ URL_MAPPER_PROVIDER = "URL_MAPPER_PROVIDER",
1722
+ PROVIDER_SUPPRESSION_SERVICE_PLUGIN = "PROVIDER_SUPPRESSION_SERVICE_PLUGIN",
1723
+ ECOM_FORMS = "ECOM_FORMS",
1724
+ EDITOR_CONTEXT_PROVIDER = "EDITOR_CONTEXT_PROVIDER",
1725
+ EDITOR_FUNCTION_LIBRARY = "EDITOR_FUNCTION_LIBRARY",
1726
+ BOOKINGS_PLATFORM_CONFIGURATION = "BOOKINGS_PLATFORM_CONFIGURATION",
1727
+ BOOKINGS_VALIDATION_PROVIDER = "BOOKINGS_VALIDATION_PROVIDER",
1728
+ APP_ROUTER = "APP_ROUTER",
1729
+ WIXEL_BINDING = "WIXEL_BINDING",
1730
+ SHUB_MARKETPLACE_PROVIDER = "SHUB_MARKETPLACE_PROVIDER"
1731
+ }
1732
+ interface CustomChargesConfig {
1733
+ /**
1734
+ * Base URI where the endpoints are called. Wix appends the endpoint path to the base URI.
1735
+ *
1736
+ * For example, to call the Premium Custom Charges endpoint at `https://custom-charges.com/v1/premium-custom-charges`, the base URI you provide here is `https://custom-charges.com/`.
1737
+ */
1738
+ baseUri?: SpiBaseUri;
1739
+ }
1740
+ interface ValidationsSPIConfig {
1741
+ /** Whether to validate the cart page in addition to the checkout page. Default: `false` */
1742
+ validateInCart?: boolean;
1743
+ /**
1744
+ * Required. Base URI where the endpoints are called. Wix appends the endpoint path to the base URI.
1745
+ * For example, to call the Get Validation Violations endpoint at `https://my-validations.com/v1/get-violations`, the base URI you provide here is `https://my-validations.com`.
1746
+ * @minLength 1
1747
+ */
1748
+ deploymentUri?: string;
1749
+ }
1750
+ /** Editor Add-on component */
1751
+ interface EditorAddon {
1752
+ /**
1753
+ * Deprecated, use editor_script
1754
+ * @format WEB_URL
1755
+ * @deprecated Deprecated, use editor_script
1756
+ * @replacedBy editor_script
1757
+ * @targetRemovalDate 2025-06-01
1758
+ */
1759
+ editorScriptUrl?: string;
1760
+ /** Tool panel configuration. */
1761
+ toolPanelConfig?: ToolPanelConfig;
1762
+ /** Information to display in the addons market. */
1763
+ marketData?: AddonMarketData;
1764
+ /**
1765
+ * Optional, path to a Javascript file that will run in Editor environment
1766
+ * @format WEB_URL
1767
+ */
1768
+ editorScript?: string | null;
1769
+ /** Toggle to mark whether the editor should revoke an app that contains this component. */
1770
+ excludeFromAutoRevoke?: boolean;
1771
+ }
1772
+ interface InitialPosition {
1773
+ /** Offset from the left. For example, `"50px"`. */
1774
+ x?: string;
1775
+ /** Offset from the top. For example, `"50px"`. */
1776
+ y?: string;
1777
+ }
1778
+ interface ToolPanelConfig {
1779
+ /**
1780
+ * Iframe URL that hosts the add-on tool panel's content.
1781
+ * @format WEB_URL
1782
+ */
1783
+ url?: string;
1784
+ /** Addon tool panel width. */
1785
+ width?: string;
1786
+ /** Addon tool panel height. */
1787
+ height?: string;
1788
+ /**
1789
+ * Initial position of the opened panel.
1790
+ * Offset from top left corner of the container.
1791
+ */
1792
+ initialPosition?: InitialPosition;
1793
+ }
1794
+ interface AddonMarketData {
1795
+ /**
1796
+ * Addon name.
1797
+ * @minLength 5
1798
+ */
1799
+ name?: string;
1800
+ /**
1801
+ * Deprecated, use teaser
1802
+ * @minLength 10
1803
+ * @deprecated
1804
+ * @replacedBy teaser
1805
+ * @targetRemovalDate 2025-06-01
1806
+ */
1807
+ description?: string;
1808
+ /**
1809
+ * URL source of the addon's icon. Must be 36px x 36px in JPG or PNG format.
1810
+ * @format WEB_URL
1811
+ */
1812
+ iconUrl?: string | null;
1813
+ /** Author's name. */
1814
+ author?: string;
1815
+ /**
1816
+ * Addon teaser.
1817
+ * @minLength 10
1818
+ * @maxLength 60
1819
+ */
1820
+ teaser?: string | null;
1821
+ }
1822
+ interface ExternalDatabaseSpiConfig {
1823
+ /** The URI where the service provider is deployed. */
1824
+ uriConfig?: SpiBaseUri;
1825
+ /** The namespace of the external database. This can be used to access collections within the database, for example `namespace/collectionId`. */
1826
+ namespace?: string;
1827
+ }
1828
+ interface PaymentSettingsSPIConfig {
1829
+ /**
1830
+ * Base URI where the endpoints are called. Wix eCommerce appends the endpoint path to the base URI.
1831
+ * For example, to call the Get Payment Settings endpoint at `https://my-payment-settings.com/v1/payment-settings`, the base URI you provide here is `https://my-payment-settings.com/`.
1832
+ */
1833
+ deploymentUri?: string;
1834
+ /**
1835
+ * The fallback value that is used for [`requires3dSecure`](https://support.wix.com/en/article/about-3d-secure-3ds-payments-with-third-party-payment-providers) if the service plugin call fails.
1836
+ *
1837
+ * Default: `false`
1838
+ */
1839
+ fallbackValueForRequires3dSecure?: boolean;
1840
+ }
1841
+ interface UnifiedPage {
1842
+ /** Base info of component by shared logic of unified components */
1843
+ base?: BaseInfo;
1844
+ /**
1845
+ * Page installation settings
1846
+ * @deprecated Page installation settings
1847
+ * @replacedBy editor_settings
1848
+ * @targetRemovalDate 2026-02-26
1849
+ */
1850
+ installation?: PageInstallationSettings;
1851
+ /** Page replacing options (replacer \ replacing \ none) */
1852
+ pageReplace?: PageReplaceOptions;
1853
+ /** Content of page */
1854
+ content?: PageContent;
1855
+ /** Settings for how the page integrates with the editor */
1856
+ editorSettings?: UnifiedPageEditorSettings;
1857
+ }
1858
+ interface PageInstallationSettings {
1859
+ /** Shared installation settings for unified components */
1860
+ base?: BaseInstallation;
1861
+ /** Page installation settings for unified components */
1862
+ page?: PageInstallation;
1863
+ }
1864
+ interface PageInstallation {
1865
+ /**
1866
+ * slug of the page (last part of url that point to the page)
1867
+ * @minLength 1
1868
+ * @maxLength 200
1869
+ */
1870
+ slug?: string;
1871
+ /** Should add page to site menu */
1872
+ addToSiteMenu?: boolean;
1873
+ /** Can page be linked through link panel */
1874
+ linkable?: boolean;
1875
+ }
1876
+ interface PageContent {
1877
+ /** Widgets to add as content in page */
1878
+ widgets?: WidgetAsContent[];
1879
+ }
1880
+ interface WidgetAsContent {
1881
+ /**
1882
+ * GUID of widget to use as content of page
1883
+ * @format GUID
1884
+ */
1885
+ widgetGuid?: string;
1886
+ /** The preset should be used */
1887
+ preset?: MainPresets;
1888
+ /** Mark widget as essential for the existence of the app (force to delete the whole app) */
1889
+ essential?: boolean | null;
1890
+ }
1891
+ interface UnifiedPageEditorSettings {
1892
+ /** Basic editor settings that are relevant to all page types */
1893
+ base?: PageEditorSettings;
1894
+ /**
1895
+ * slug of the page (last part of url that point to the page)
1896
+ * @minLength 1
1897
+ * @maxLength 200
1898
+ */
1899
+ slug?: string | null;
1900
+ }
1901
+ interface PageEditorSettings {
1902
+ /** Add the page to the site menu */
1903
+ addToSiteMenu?: boolean | null;
1904
+ /** Can a page be linked through the link panel */
1905
+ linkable?: boolean | null;
1906
+ /** Can a page be duplicated in the editor (if no essential widget is added in the container) */
1907
+ duplicatable?: boolean | null;
1908
+ }
1909
+ /** A modal in one of the back-office platforms */
1910
+ interface BackOfficeModal extends BackOfficeModalContentOneOf {
1911
+ /**
1912
+ * Iframe URL that hosts the modal's content.
1913
+ * @format WEB_URL
1914
+ */
1915
+ iframeUrl?: string;
1916
+ /**
1917
+ * Platform that hosts the modal.
1918
+ *
1919
+ * Must be `"BUSINESS_MANAGER"`.
1920
+ */
1921
+ hostingPlatform?: BackOfficeHostingPlatformsWithLiterals;
1922
+ /**
1923
+ * Modal title.
1924
+ * @minLength 1
1925
+ */
1926
+ title?: string;
1927
+ /**
1928
+ * Initial width of the modal while loading, in pixels.
1929
+ * Width may be adjusted dynamically based on the content of the modal or limited by the size of the modal's container.
1930
+ * @max 9999
1931
+ */
1932
+ width?: number | null;
1933
+ /**
1934
+ * Initial height of the modal while loading, in pixels.
1935
+ * Height may be adjusted dynamically based on the content of the modal or limited by the size of the modal's container.
1936
+ * @max 9999
1937
+ */
1938
+ height?: number | null;
1939
+ /** general component data */
1940
+ metaData?: ComponentMetaData;
1941
+ /**
1942
+ * [Wix Design System icon](https://www.wix-pages.com/wix-design-system-employees/?path=/story/foundations-icons--icons).
1943
+ * Use the full size key. The icon will be rendered in an appropriate size.
1944
+ * @minLength 3
1945
+ * @maxLength 50
1946
+ */
1947
+ iconKey?: string | null;
1948
+ }
1949
+ /** @oneof */
1950
+ interface BackOfficeModalContentOneOf {
1951
+ /**
1952
+ * Iframe URL that hosts the modal's content.
1953
+ * @format WEB_URL
1954
+ */
1955
+ iframeUrl?: string;
1956
+ }
1957
+ interface CustomElementWidget {
1958
+ /** Base info of component by shared logic of unified components */
1959
+ base?: BaseInfo;
1960
+ /** Unified widget installation settings */
1961
+ installation?: WidgetInstallationSettings;
1962
+ /** The extension data for this component */
1963
+ widgetData?: WidgetData;
1964
+ /** The widget's editor behaviors */
1965
+ behaviors?: EditorBehaviors;
1966
+ /** The size of the widget */
1967
+ size?: WidgetSize;
1968
+ /**
1969
+ * The runtime dependencies array to declare the widget packages.
1970
+ * @maxSize 50
1971
+ */
1972
+ dependencies?: WixDependency[];
1973
+ /**
1974
+ * The array of this widget's presets
1975
+ * @maxSize 50
1976
+ */
1977
+ presets?: Preset[];
1978
+ }
1979
+ interface WidgetData {
1980
+ /**
1981
+ * The script url that should render on the widget
1982
+ * @format WEB_URL
1983
+ */
1984
+ scriptUrl?: string;
1985
+ /**
1986
+ * Unique tag name to use in order to connect your JS script to your web component
1987
+ * @minLength 2
1988
+ * @maxLength 64
1989
+ */
1990
+ tagName?: string;
1991
+ /** Type of JavaScript modularization approach used in the custom element */
1992
+ scriptType?: CustomElementScriptTypeWithLiterals;
1993
+ }
1994
+ declare enum CustomElementScriptType {
1995
+ NONE = "NONE",
1996
+ /** CommonJS modularization approach */
1997
+ COMMON_JS = "COMMON_JS",
1998
+ /** ES Module modularization approach */
1999
+ ES_MODULE = "ES_MODULE"
2000
+ }
2001
+ /** @enumType */
2002
+ type CustomElementScriptTypeWithLiterals = CustomElementScriptType | 'NONE' | 'COMMON_JS' | 'ES_MODULE';
2003
+ interface EditorBehaviors {
2004
+ /** The settings behavior definition for the widget */
2005
+ settings?: SettingsPanel;
2006
+ /** The dashboard behavior definition for the widget */
2007
+ dashboard?: Dashboard;
2008
+ }
2009
+ interface SettingsPanel {
2010
+ /**
2011
+ * The settings panel URL for this component
2012
+ * @format WEB_URL
2013
+ */
2014
+ settingsUrl?: string | null;
2015
+ }
2016
+ interface Dashboard {
2017
+ /**
2018
+ * The dashboard page guid for the widget manage of the widget
2019
+ * @format GUID
2020
+ */
2021
+ dashboardPageComponentId?: string;
2022
+ }
2023
+ interface WidgetSize {
2024
+ /** define the size of the widget's height */
2025
+ height?: WidgetSizeHeight;
2026
+ /** define the size of the widget's width */
2027
+ width?: WidgetSizeWidth;
2028
+ }
2029
+ declare enum HeightMode {
2030
+ UNKNOWN = "UNKNOWN",
2031
+ /** Height is calculated by content */
2032
+ AUTO = "AUTO",
2033
+ /** Height is fixed require size in px */
2034
+ FIXED = "FIXED"
2035
+ }
2036
+ /** @enumType */
2037
+ type HeightModeWithLiterals = HeightMode | 'UNKNOWN' | 'AUTO' | 'FIXED';
2038
+ interface WidgetSizeHeight {
2039
+ /** Height calculation mode */
2040
+ heightMode?: HeightModeWithLiterals;
2041
+ /**
2042
+ * Default height in pixels
2043
+ * @max 9999
2044
+ */
2045
+ defaultHeight?: number;
2046
+ }
2047
+ interface WidgetSizeWidth {
2048
+ /** Boolean to set stretch, will place the widget stretched to the full width of the container */
2049
+ allowStretch?: boolean;
2050
+ /**
2051
+ * Default width in pixels
2052
+ * @max 9999
2053
+ */
2054
+ defaultWidth?: number;
2055
+ /** Boolean to set stretch by default on installation, if true will place the widget stretched to the full width of the container */
2056
+ stretchByDefault?: boolean;
2057
+ }
2058
+ interface Preset {
2059
+ /**
2060
+ * The id of the preset
2061
+ * @minLength 1
2062
+ * @maxLength 50
2063
+ */
2064
+ id?: string;
2065
+ /**
2066
+ * Display name of the preset
2067
+ * @minLength 1
2068
+ * @maxLength 30
2069
+ */
2070
+ name?: string;
2071
+ /** Defines data for screen size for the preset */
2072
+ breakpoints?: Breakpoints;
2073
+ /**
2074
+ * URL of an image to show as the preset's thumbnail in the editor
2075
+ * @format WEB_URL
2076
+ */
2077
+ thumbnailUrl?: string | null;
2078
+ }
2079
+ interface Breakpoints {
2080
+ /** Defines data for small screen size */
2081
+ small?: Breakpoint;
2082
+ /** Defines data for medium screen size */
2083
+ medium?: Breakpoint;
2084
+ /** Defines data for large screen size */
2085
+ large?: Breakpoint;
2086
+ }
2087
+ interface Breakpoint {
2088
+ /** The size of the preset */
2089
+ size?: WidgetSize;
2090
+ /**
2091
+ * A different preset id to be used according to breakpoint
2092
+ * @maxLength 50
2093
+ */
2094
+ presetId?: string;
2095
+ }
2096
+ interface InventorySpiConfig {
2097
+ /**
2098
+ * Base URI where the endpoints are called.
2099
+ * Wix eCommerce appends the endpoint path to the base URI.
2100
+ * @minLength 1
2101
+ * @maxLength 200
2102
+ */
2103
+ deploymentUri?: string;
2104
+ }
2105
+ interface ProductRestrictionsConfig {
2106
+ /** URI where the SPI Implementer is deployed */
2107
+ deploymentUri?: SpiBaseUri;
2108
+ /** Product restrictions configuration. */
2109
+ productRestrictionsConfig?: RestrictionsConfig;
2110
+ }
2111
+ interface RestrictionsConfig {
2112
+ /**
2113
+ * Prices restrictions.
2114
+ *
2115
+ * Affected fields:
2116
+ * * `variantsInfo.variants.price.actualPrice.amount`
2117
+ * * `variantsInfo.variants.price.compareAtPrice.amount`
2118
+ * * `inventory.trackingMethod.quantity`
2119
+ */
2120
+ prices?: Restriction;
2121
+ /**
2122
+ * Options restrictions.
2123
+ *
2124
+ * Affected field: `options` (all nested fields except `linkedMedia`)
2125
+ */
2126
+ options?: Restriction;
2127
+ /**
2128
+ * Modifier restrictions.
2129
+ *
2130
+ * Affected field: `modifiers` (all nested fields except `linkedMedia`)
2131
+ */
2132
+ modifiers?: Restriction;
2133
+ /**
2134
+ * Inventory restrictions.
2135
+ *
2136
+ * Affected fields:
2137
+ * * `variantsInfo.variants.sku`
2138
+ * * `variantsInfo.variants.barcode`
2139
+ * * `inventory.trackingMethod.quantity`
2140
+ */
2141
+ inventory?: Restriction;
2142
+ /**
2143
+ * Pre order restrictions.
2144
+ *
2145
+ * Affected field: `inventory.preorderInfo`
2146
+ */
2147
+ preOrder?: Restriction;
2148
+ /** Whether to disallow product duplication or display a warning when duplicating a product. */
2149
+ duplicateProduct?: Restriction;
2150
+ }
2151
+ interface Restriction {
2152
+ /** Restriction level. */
2153
+ restrictionLevel?: RestrictionLevelWithLiterals;
2154
+ }
2155
+ declare enum RestrictionLevel {
2156
+ UNKNOWN_RESTRICTION_TYPE = "UNKNOWN_RESTRICTION_TYPE",
2157
+ /** Users can edit the product field after acknowledging a warning modal. */
2158
+ WARNING = "WARNING",
2159
+ /** Users **cannot** edit the product field. */
2160
+ LOCKED = "LOCKED"
2161
+ }
2162
+ /** @enumType */
2163
+ type RestrictionLevelWithLiterals = RestrictionLevel | 'UNKNOWN_RESTRICTION_TYPE' | 'WARNING' | 'LOCKED';
2164
+ interface StaffSortingProviderConfig {
2165
+ /** URI where the SPI Implementer is deployed */
2166
+ deploymentUri?: SpiBaseUri;
2167
+ /**
2168
+ * User-friendly name for the sorting method
2169
+ * @maxLength 100
2170
+ */
2171
+ methodName?: string;
2172
+ /**
2173
+ * User-friendly explanation about the sorting method.
2174
+ * @maxLength 100
2175
+ */
2176
+ methodDescription?: string;
2177
+ /**
2178
+ * Optional. An unique identifier for a component that will create a configuration for the method.
2179
+ * @format GUID
2180
+ */
2181
+ dashboardPluginId?: string | null;
2182
+ }
2183
+ interface ExtensionData {
2184
+ data?: string;
2185
+ extensionType?: ExtensionTypeWithLiterals;
2186
+ }
2187
+ interface ExtensionData {
2188
+ compId: string;
2189
+ compType: ComponentType;
2190
+ compData: ComponentData;
2191
+ compName?: string;
2192
+ }
2193
+
2194
+ /**
2195
+ * Create a widget iframe that users can display on their site. We recommend submitting a proposal before using iframes in your app.
2196
+ * Learn More: https://devforum.wix.com/en/article/widget-components
2197
+ * @param id - A unique identifier for the extension
2198
+ * @param data - An iframe to be displayed on the user’s site
2199
+ * @param name - Optional - A human readable name for the extension
2200
+ * @returns A general form of extensions
2201
+ */
2202
+ declare function widget({ id, data, name, }: {
2203
+ id: string;
2204
+ data: WidgetComponentData;
2205
+ name?: string;
2206
+ }): ExtensionData;
2207
+ /**
2208
+ * Display an iframe as a page on a user's site.
2209
+ * Learn More: https://dev.wix.com/docs/build-apps/developer-tools/extensions/iframes/guide-to-page-extensions
2210
+ * @param id - A unique identifier for the extension
2211
+ * @param data - An iframe to be displayed as a full page on the user’s site
2212
+ * @param name - Optional - A human readable name for the extension
2213
+ * @returns A general form of extensions
2214
+ */
2215
+ declare function page({ id, data, name, }: {
2216
+ id: string;
2217
+ data: PageComponentData;
2218
+ name?: string;
2219
+ }): ExtensionData;
2220
+ /**
2221
+ * Open an iframe in the Dashboard, or add a link to a page on your platform.
2222
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/external-links/about-external-link-extensions
2223
+ * @param id - A unique identifier for the extension
2224
+ * @param data - An iframe that opens in the user’s Wix Dashboard,
2225
+ * or add a link to open the page directly in your platform.
2226
+ * @param name - Optional - A human readable name for the extension
2227
+ * @returns A general form of extensions
2228
+ */
2229
+ declare function dashboard({ id, data, name, }: {
2230
+ id: string;
2231
+ data: DashboardComponentData;
2232
+ name?: string;
2233
+ }): ExtensionData;
2234
+ /**
2235
+ * Use an invisible iframe to track activity. It’s added to every page on the site (max. 1).
2236
+ * Learn More: https://devforum.wix.com/en/article/worker-components
2237
+ * @param id - A unique identifier for the extension
2238
+ * @param data - An invisible iframe to track site activity. It’ll be added to every page on the user’s site
2239
+ * @param name - Optional - A human readable name for the extension
2240
+ * @returns A general form of extensions
2241
+ */
2242
+ declare function worker({ id, data, name, }: {
2243
+ id: string;
2244
+ data: WorkerComponentData;
2245
+ name?: string;
2246
+ }): ExtensionData;
2247
+ /**
2248
+ * Inject a script into a site’s HTML code.
2249
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/embedded-scripts/about-embedded-scripts
2250
+ * @param id - A unique identifier for the extension
2251
+ * @param data - Inject third party scripts into the user’s site
2252
+ * @param name - Optional - A human readable name for the extension
2253
+ * @returns A general form of extensions
2254
+ */
2255
+ declare function embeddedScript({ id, data, name, }: {
2256
+ id: string;
2257
+ data: EmbeddedScriptComponentData;
2258
+ name?: string;
2259
+ }): ExtensionData;
2260
+ /**
2261
+ * Extend a site’s CMS to store and manage custom data.
2262
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/data-collections/about-data-collections-extensions
2263
+ * @param id - A unique identifier for the extension
2264
+ * @param data - An extension for adding data collections to a site when the app is installed.
2265
+ * @param name - Optional - A human readable name for the extension
2266
+ * @returns A general form of extensions
2267
+ */
2268
+ declare function dataComponent({ id, data, name, }: {
2269
+ id: string;
2270
+ data: DataComponent;
2271
+ name?: string;
2272
+ }): ExtensionData;
2273
+ /**
2274
+ * Display a widget that fits into a predefined slot in a Wix app.
2275
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-plugins/about-site-plugin-extensions
2276
+ * @param id - A unique identifier for the extension
2277
+ * @param data - A component to be rendered within Widget Slots
2278
+ * @param name - Optional - A human readable name for the extension
2279
+ * @returns A general form of extensions
2280
+ */
2281
+ declare function widgetPlugin({ id, data, name, }: {
2282
+ id: string;
2283
+ data: WidgetPluginComponentData;
2284
+ name?: string;
2285
+ }): ExtensionData;
2286
+ /**
2287
+ * Provide custom shipping rates to a site's cart and checkout.
2288
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/shipping-rates-integration-service-plugin/introduction
2289
+ * @param id - A unique identifier for the extension
2290
+ * @param name - Optional - A human readable name for the extension
2291
+ * @returns A general form of extensions
2292
+ */
2293
+ declare function ecomShippingRates({ id, data, name, }: {
2294
+ id: string;
2295
+ data: ShippingRatesConfig;
2296
+ name?: string;
2297
+ }): ExtensionData;
2298
+ /**
2299
+ * Extend a Wix entity with custom fields for your app
2300
+ * @param id - A unique identifier for the extension
2301
+ * @param data - A component holding schema of Data Extensions
2302
+ * @param name - Optional - A human readable name for the extension
2303
+ * @returns A general form of extensions
2304
+ */
2305
+ declare function dataExtensions({ id, data, name, }: {
2306
+ id: string;
2307
+ data: DataExtensionsComponentData;
2308
+ name?: string;
2309
+ }): ExtensionData;
2310
+ /**
2311
+ * Become a Wix catalog provider and integrate any external repository of sellable items with the Wix eCommerce platform.
2312
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/catalog-service-plugin/introduction
2313
+ * @param id - A unique identifier for the extension
2314
+ * @param name - Optional - A human readable name for the extension
2315
+ * @returns A general form of extensions
2316
+ */
2317
+ declare function ecomCatalog({ id, data, name, }: {
2318
+ id: string;
2319
+ data: CatalogSPIConfig;
2320
+ name?: string;
2321
+ }): ExtensionData;
2322
+ /**
2323
+ * Implement gift card benefits such as balance retrieval, redemption, and voiding transactions.
2324
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/gift-cards-service-plugin/introduction
2325
+ * @param id - A unique identifier for the extension
2326
+ * @param name - Optional - A human readable name for the extension
2327
+ * @returns A general form of extensions
2328
+ */
2329
+ declare function giftCardsProvider({ id, data, name, }: {
2330
+ id: string;
2331
+ data: GiftCardProviderConfig;
2332
+ name?: string;
2333
+ }): ExtensionData;
2334
+ /**
2335
+ * Provide SEO keyword suggestions to site collaborators, report quota usage, and provide a page where users can upgrade their plan.
2336
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/marketing/seo-keywords-suggestions-v-1/introduction
2337
+ * @param id - A unique identifier for the extension
2338
+ * @param name - Optional - A human readable name for the extension
2339
+ * @returns A general form of extensions
2340
+ */
2341
+ declare function seoKeywordsSuggestions({ id, data, name, }: {
2342
+ id: string;
2343
+ data: SeoKeywordsSuggestionsSPIConfig;
2344
+ name?: string;
2345
+ }): ExtensionData;
2346
+ /**
2347
+ * Configure a page for your app that will be embedded in the Wix Dashboard.
2348
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-pages/about-dashboard-page-extensions
2349
+ * @param id - A unique identifier for the extension
2350
+ * @param data - A page in one of the back-office platforms
2351
+ * @param name - Optional - A human readable name for the extension
2352
+ * @returns A general form of extensions
2353
+ */
2354
+ declare function backOfficePage({ id, data, name, }: {
2355
+ id: string;
2356
+ data: BackOfficePage;
2357
+ name?: string;
2358
+ }): ExtensionData;
2359
+ /**
2360
+ * Provide custom additional fees that are added to a site's cart and checkout.
2361
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/additional-fees-service-plugin/introduction
2362
+ * @param id - A unique identifier for the extension
2363
+ * @param name - Optional - A human readable name for the extension
2364
+ * @returns A general form of extensions
2365
+ */
2366
+ declare function ecomAdditionalFees({ id, data, name, }: {
2367
+ id: string;
2368
+ data: AdditionalFeesSPIConfig;
2369
+ name?: string;
2370
+ }): ExtensionData;
2371
+ /**
2372
+ * Bookings Pricing Provider SPI
2373
+ * @param id - A unique identifier for the extension
2374
+ * @param name - Optional - A human readable name for the extension
2375
+ * @returns A general form of extensions
2376
+ */
2377
+ declare function bookingsPricingProvider({ id, data, name, }: {
2378
+ id: string;
2379
+ data: BookingsPricingProviderConfig;
2380
+ name?: string;
2381
+ }): ExtensionData;
2382
+ /**
2383
+ * Apply custom charges to a site based on usage of your app's services.
2384
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/app-management/apps/custom-charges-spi/introduction
2385
+ * @param id - A unique identifier for the extension
2386
+ * @param name - Optional - A human readable name for the extension
2387
+ * @returns A general form of extensions
2388
+ */
2389
+ declare function premiumCustomCharges({ id, data, name, }: {
2390
+ id: string;
2391
+ data: CustomChargesConfig;
2392
+ name?: string;
2393
+ }): ExtensionData;
2394
+ /**
2395
+ * Validate items in a site's cart and checkout based on custom logic.
2396
+ * Learn More: https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/validations-integration-spi/introduction
2397
+ * @param id - A unique identifier for the extension
2398
+ * @param name - Optional - A human readable name for the extension
2399
+ * @returns A general form of extensions
2400
+ */
2401
+ declare function ecomValidations({ id, data, name, }: {
2402
+ id: string;
2403
+ data: ValidationsSPIConfig;
2404
+ name?: string;
2405
+ }): ExtensionData;
2406
+ /**
2407
+ * Build a tool that adds functionality to the Wix editors.
2408
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/editor-extensions/about-editor-extensions
2409
+ * @param id - A unique identifier for the extension
2410
+ * @param data - Editor Add-on component
2411
+ * @param name - Optional - A human readable name for the extension
2412
+ * @returns A general form of extensions
2413
+ */
2414
+ declare function editorAddon({ id, data, name, }: {
2415
+ id: string;
2416
+ data: EditorAddon;
2417
+ name?: string;
2418
+ }): ExtensionData;
2419
+ /**
2420
+ * External Database component
2421
+ * @param id - A unique identifier for the extension
2422
+ * @param name - Optional - A human readable name for the extension
2423
+ * @returns A general form of extensions
2424
+ */
2425
+ declare function externalDatabaseProvider({ id, data, name, }: {
2426
+ id: string;
2427
+ data: ExternalDatabaseSpiConfig;
2428
+ name?: string;
2429
+ }): ExtensionData;
2430
+ /**
2431
+ * Integrate your service with Wix's payment process to allow merchants to request and use your services on their Wix sites.
2432
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/payment-settings-integration-service-plugin/introduction
2433
+ * @param id - A unique identifier for the extension
2434
+ * @param name - Optional - A human readable name for the extension
2435
+ * @returns A general form of extensions
2436
+ */
2437
+ declare function ecomPaymentSettings({ id, data, name, }: {
2438
+ id: string;
2439
+ data: PaymentSettingsSPIConfig;
2440
+ name?: string;
2441
+ }): ExtensionData;
2442
+ /**
2443
+ * Add a site page that displays selected widgets.
2444
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-pages/about-site-page-extensions
2445
+ * @param id - A unique identifier for the extension
2446
+ * @param name - Optional - A human readable name for the extension
2447
+ * @returns A general form of extensions
2448
+ */
2449
+ declare function unifiedPage({ id, data, name, }: {
2450
+ id: string;
2451
+ data: UnifiedPage;
2452
+ name?: string;
2453
+ }): ExtensionData;
2454
+ /**
2455
+ * Create a reusable modal that can be utilized across multiple pages within your app and in other applications.
2456
+ * @param id - A unique identifier for the extension
2457
+ * @param data - A modal in one of the back-office platforms
2458
+ * @param name - Optional - A human readable name for the extension
2459
+ * @returns A general form of extensions
2460
+ */
2461
+ declare function backOfficeModal({ id, data, name, }: {
2462
+ id: string;
2463
+ data: BackOfficeModal;
2464
+ name?: string;
2465
+ }): ExtensionData;
2466
+ /**
2467
+ * Display a draggable widget on a site using a self-hosted custom element.
2468
+ * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-widgets/about-site-widget-extensions
2469
+ * @param id - A unique identifier for the extension
2470
+ * @param name - Optional - A human readable name for the extension
2471
+ * @returns A general form of extensions
2472
+ */
2473
+ declare function customElementWidget({ id, data, name, }: {
2474
+ id: string;
2475
+ data: CustomElementWidget;
2476
+ name?: string;
2477
+ }): ExtensionData;
2478
+ /**
2479
+ * Integrate any external inventory with the Wix eCommerce platform.
2480
+ * Learn More: https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/catalogs/inventory-service-plugin/introduction
2481
+ * @param id - A unique identifier for the extension
2482
+ * @param name - Optional - A human readable name for the extension
2483
+ * @returns A general form of extensions
2484
+ */
2485
+ declare function ecomInventory({ id, data, name, }: {
2486
+ id: string;
2487
+ data: InventorySpiConfig;
2488
+ name?: string;
2489
+ }): ExtensionData;
2490
+ /**
2491
+ * Restriction service plugin for editing products managed by third-party fulfillment apps, such as dropshipping or print-on-demand services
2492
+ * Learn More: https://dev.wix.com/docs/rest/business-solutions/stores/service-plugins/product-restrictions-v3/introduction
2493
+ * @param id - A unique identifier for the extension
2494
+ * @param name - Optional - A human readable name for the extension
2495
+ * @returns A general form of extensions
2496
+ */
2497
+ declare function storesProductRestrictions({ id, data, name, }: {
2498
+ id: string;
2499
+ data: ProductRestrictionsConfig;
2500
+ name?: string;
2501
+ }): ExtensionData;
2502
+ /**
2503
+ * Bookings Staff Sorting Provider SPI
2504
+ * @param id - A unique identifier for the extension
2505
+ * @param name - Optional - A human readable name for the extension
2506
+ * @returns A general form of extensions
2507
+ */
2508
+ declare function staffSortingProvider({ id, data, name, }: {
2509
+ id: string;
2510
+ data: StaffSortingProviderConfig;
2511
+ name?: string;
2512
+ }): ExtensionData;
2513
+
2514
+ export { backOfficeModal, backOfficePage, bookingsPricingProvider, customElementWidget, dashboard, dataComponent, dataExtensions, ecomAdditionalFees, ecomCatalog, ecomInventory, ecomPaymentSettings, ecomShippingRates, ecomValidations, editorAddon, embeddedScript, externalDatabaseProvider, giftCardsProvider, page, premiumCustomCharges, seoKeywordsSuggestions, staffSortingProvider, storesProductRestrictions, unifiedPage, widget, widgetPlugin, worker };