@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 @@
1
+ {"version":3,"sources":["../../../index.ts","../../../src/factories.impl.ts"],"sourcesContent":["export * from './src/factories.impl';\n","import * as ExtensionType from './types.impl';\nimport { ExtensionData, ComponentType } from './types.impl';\n\n/**\n * Create a widget iframe that users can display on their site. We recommend submitting a proposal before using iframes in your app.\n * Learn More: https://devforum.wix.com/en/article/widget-components\n * @param id - A unique identifier for the extension\n * @param data - An iframe to be displayed on the user’s site\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function widget({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WidgetComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIDGET,\n compData: { widgetComponentData: data },\n };\n}\n\n/**\n * Display an iframe as a page on a user's site.\n * Learn More: https://dev.wix.com/docs/build-apps/developer-tools/extensions/iframes/guide-to-page-extensions\n * @param id - A unique identifier for the extension\n * @param data - An iframe to be displayed as a full page on the user’s site\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function page({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PageComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAGE,\n compData: { pageComponentData: data },\n };\n}\n\n/**\n * Load a WOOI directly in the Editor DOM.\n * Learn More: https://dev.wix.com/docs/fed-guild/articles/viewer/platform/intro/get-started/guidelines\n * @param id - A unique identifier for the extension\n * @param data - A widget out of iframe component that loads directly in the Editor DOM\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function widgetOutOfIframe({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WidgetOutOfIframeComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIDGET_OUT_OF_IFRAME,\n compData: { widgetOutOfIframeData: data },\n };\n}\n\n/**\n * Load a POOI directly in the Editor DOM.\n * Learn More: https://dev.wix.com/docs/fed-guild/articles/viewer/platform/intro/get-started/guidelines\n * @param id - A unique identifier for the extension\n * @param data - A page out of iframe component that loads directly in the Editor DOM\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pageOutOfIframe({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PageOutOfIframeComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAGE_OUT_OF_IFRAME,\n compData: { pageOutOfIframeData: data },\n };\n}\n\n/**\n * Load a collection of native Editor components directly in the Editor DOM.\n * Learn More: https://dev.wix.com/docs/fed-guild/articles/editor-platform/welcome-to-the-editor-platform\n * @param id - A unique identifier for the extension\n * @param data - Create a collection of native Editor components that loads directly in the Editor DOM\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function platform({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PlatfromComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PLATFORM,\n compData: { platformComponentData: data },\n };\n}\n\n/**\n * Open an iframe in the Dashboard, or add a link to a page on your platform.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/external-links/about-external-link-extensions\n * @param id - A unique identifier for the extension\n * @param data - An iframe that opens in the user’s Wix Dashboard,\n * or add a link to open the page directly in your platform.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function dashboard({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DashboardComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DASHBOARD,\n compData: { dashboardComponentData: data },\n };\n}\n\n/**\n * Use an invisible iframe to track activity. It’s added to every page on the site (max. 1).\n * Learn More: https://devforum.wix.com/en/article/worker-components\n * @param id - A unique identifier for the extension\n * @param data - An invisible iframe to track site activity. It’ll be added to every page on the user’s site\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function worker({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WorkerComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WORKER,\n compData: { workerComponentData: data },\n };\n}\n\n/**\n * Use Wix Blocks to create a widget component. Wix Blocks will open in a new tab.\n * Learn More: https://bo.wix.com/wix-docs/rest/drafts/wix-blocks-server---app-builder\n * @param id - A unique identifier for the extension\n * @param data - An extension to platform used by Wix Blocks UI\n * The main component in the Wix Blocks.\n * no manual adding. auto-created only from Wix Blocks\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function studio({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StudioComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.STUDIO,\n compData: { studioComponentData: data },\n };\n}\n\n/**\n * A widget component in the Wix Blocks.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/wix-blocks\n * @param id - A unique identifier for the extension\n * @param data - A widget component in the Wix Blocks.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function studioWidget({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StudioWidgetComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.STUDIO_WIDGET,\n compData: { studioWidgetComponentData: data },\n };\n}\n\n/**\n * A component that indicates the existence of an importable code package in a Wix Blocks application.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/wix-blocks-code-package\n * @param id - A unique identifier for the extension\n * @param data - A component that indicates the existence of an importable code package in a Wix Blocks application.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function codePackage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CodePackageComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CODE_PACKAGE,\n compData: { codePackageComponentData: data },\n };\n}\n\n/**\n * Load a collection of native components directly in the Business Manager.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/dashboard-platfrom/dashboard-platfrom-component-data-object\n * @param id - A unique identifier for the extension\n * @param data - A collection of native components that load directly in the Business Manager\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function dashboardPlatform({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DashboardPlatfromComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DASHBOARD_PLATFORM,\n compData: { dashboardPlatformComponentData: data },\n };\n}\n\n/**\n * Inject a script into a site’s HTML code.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/embedded-scripts/about-embedded-scripts\n * @param id - A unique identifier for the extension\n * @param data - Inject third party scripts into the user’s site\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function embeddedScript({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EmbeddedScriptComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EMBEDDED_SCRIPT,\n compData: { embeddedScriptComponentData: data },\n };\n}\n\n/**\n * Display a draggable component in the Editor using an HTML custom element.\n * Learn More: https://devforum.wix.com/kb/en/article/create-a-custom-element\n * @param id - A unique identifier for the extension\n * @param data - A draggable custom element. Add your custom script and generate ui directly in the viewer\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function web({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WebComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WEB,\n compData: { webComponentData: data },\n };\n}\n\n/**\n * Extend app with internal Wix extension.\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function extension({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ExtensionData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EXTENSION,\n compData: { extensionData: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function snippetSolution({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SnippetSolutionData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SNIPPET_SOLUTION,\n compData: { snippetSolutionsData: data },\n };\n}\n\n/**\n * Extend a site’s CMS to store and manage custom data.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/data-collections/about-data-collections-extensions\n * @param id - A unique identifier for the extension\n * @param data - An extension for adding data collections to a site when the app is installed.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function dataComponent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DataComponent;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DATA_COMPONENT,\n compData: { dataComponent: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function dcConfig({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DCConfigData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DC_CONFIG,\n compData: { dcConfigData: data },\n };\n}\n\n/**\n * Serve a file from the user’s site domain.\n * Learn More: https://devforum.wix.com/en/article/serving-staic-files-from-the-installed-sites-domain\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function staticFile({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StaticFileComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.STATIC_FILE,\n compData: { staticFileComponentData: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function appConfig({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AppConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.APP_CONFIG,\n compData: { appConfig: data },\n };\n}\n\n/**\n * Create a multi-page dashboard in the Business Manager.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/multiple-dashboards\n * @param id - A unique identifier for the extension\n * @param data - Business Manager sidebar category that contains sidebar links.\n * each link in the category opens in the business manager in an iframe.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function multipleDashboards({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MultipleDashboardsComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MULTIPLE_DASHBOARDS,\n compData: { multipleDashboardsComponentData: data },\n };\n}\n\n/**\n * Payments gateway extension description\n * @param id - A unique identifier for the extension\n * @param data - Test component extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function paymentsGateway({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PaymentsGatewayComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAYMENTS_GATEWAY,\n compData: { paymentsGateway: data },\n };\n}\n\n/**\n * Extend an app with automation capabilities using CRM Automations\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/automation-trigger\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function automationTrigger({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AutomationTrigger;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AUTOMATION_TRIGGER,\n compData: { automationTrigger: data },\n };\n}\n\n/**\n * Any restrictions on invoices actions\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/invoices-actions\n * @param id - A unique identifier for the extension\n * @param data - represents Invoices integration policies\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function invoicesActions({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.InvoicesActionsComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.INVOICES_ACTIONS,\n compData: { invoicesActionsComponentData: data },\n };\n}\n\n/**\n * Experimental-WIP: Business manager app_config, configures a module and its page components in business manager.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/dashboard-application\n * @param id - A unique identifier for the extension\n * @param data - Experimental-WIP: Specifies the app module configuration of business manager module\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function dashboardApplication({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DashboardApplicationData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DASHBOARD_APPLICATION,\n compData: { dashboardApplicationData: data },\n };\n}\n\n/**\n * Contact Labels Components\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/contact-labels\n * @param id - A unique identifier for the extension\n * @param data - Contact Labels Extensions\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function contactLabels({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ContactLabelsComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CONTACT_LABELS,\n compData: { contactLabels: data },\n };\n}\n\n/**\n * Display a widget that fits into a predefined slot in a Wix app.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-plugins/about-site-plugin-extensions\n * @param id - A unique identifier for the extension\n * @param data - A component to be rendered within Widget Slots\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function widgetPlugin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WidgetPluginComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIDGET_PLUGIN,\n compData: { widgetPlugin: data },\n };\n}\n\n/**\n * Cross Sell Integration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function crossSell({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CrossSellConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CROSS_SELL,\n compData: { crossSell: data },\n };\n}\n\n/**\n * Experimental-WIP: Local Delivery extension description.\n * Learn More: https://bo.wix.com/wix-docs/rnd/dev-center/components-catalog/local-delivery\n * @param id - A unique identifier for the extension\n * @param data - Local Delivery component\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function localDelivery({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.LocalDeliveryComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.LOCAL_DELIVERY,\n compData: { localDelivery: data },\n };\n}\n\n/**\n * WIP: Velo payment provider SPI\n * @param id - A unique identifier for the extension\n * @param data - Configuration for the payment service SPI implementor\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function paymentProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PaymentServiceProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAYMENT_PROVIDER,\n compData: { paymentProvider: data },\n };\n}\n\n/**\n * Memberships SPI for ECOM platform\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomMemberships({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MembershipsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_MEMBERSHIPS,\n compData: { ecomMemberships: data },\n };\n}\n\n/**\n * Line Items Enricher SPI for ECOM platform\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomLineItemsEnricher({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.LineItemsEnricherConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_LINE_ITEMS_ENRICHER,\n compData: { ecomLineItemsEnricher: data },\n };\n}\n\n/**\n * Provide custom shipping rates to a site's cart and checkout.\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/shipping-rates-integration-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomShippingRates({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ShippingRatesConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_SHIPPING_RATES,\n compData: { ecomShippingRates: data },\n };\n}\n\n/**\n * Shipping Label Carrier SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function shippingLabelCarrier({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ShippingLabelCarrierSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SHIPPING_LABEL_CARRIER,\n compData: { shippingLabelCarrier: data },\n };\n}\n\n/**\n * Restaurants POS service plugin\n * @param id - A unique identifier for the extension\n * @param data - Restaurants POS component\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function restaurantsPos({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.RestaurantsPOSComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.RESTAURANTS_POS,\n compData: { restaurantsPos: data },\n };\n}\n\n/**\n * A fictional Shipping SPI that is used by developers to complete SPI training\n * https://github.com/wix-academy/spi-in-scala-path\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function fictionalShippingProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ShippingProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FICTIONAL_SHIPPING_PROVIDER,\n compData: { fictionalShippingProvider: data },\n };\n}\n\n/**\n * Alert Enricher Integration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function alertEnricher({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AlertEnricherSpiConfiguration;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ALERT_ENRICHER,\n compData: { alertEnricher: data },\n };\n}\n\n/**\n * Extend a Wix entity with custom fields for your app\n * @param id - A unique identifier for the extension\n * @param data - A component holding schema of Data Extensions\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function dataExtensions({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DataExtensionsComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DATA_EXTENSIONS,\n compData: { dataExtensions: data },\n };\n}\n\n/**\n * A common component type for all Generic Hooks\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function genericHooks({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.GenericHooksConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.GENERIC_HOOKS,\n compData: { genericHooks: data },\n };\n}\n\n/**\n * WIP: automations action provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function automationsActionProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ActionProviderSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AUTOMATIONS_ACTION_PROVIDER,\n compData: { automationsActionProvider: data },\n };\n}\n\n/**\n * Become a Wix catalog provider and integrate any external repository of sellable items with the Wix eCommerce platform.\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/catalog-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomCatalog({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CatalogSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_CATALOG,\n compData: { ecomCatalog: data },\n };\n}\n\n/**\n * Add a space to a Wix Dashboard page that can be extended with a widget or menu item.\n * @param id - A unique identifier for the extension\n * @param data - A container (slot) that can be extended by other applications (e.g. widget slot or context menu slot)\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeExtensionContainer({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeExtensionContainer;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_EXTENSION_CONTAINER,\n compData: { backOfficeExtensionContainer: data },\n };\n}\n\n/**\n * Create a widget or menu item that will be rendered within a Wix Dashboard page.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-plugins/about-dashboard-plugin-extensions\n * @param id - A unique identifier for the extension\n * @param data - A component that enables extending Wix Dashboard Functionality, as defined by ExtendingComponentType.\n * Currently this supports extending menus and extending widget slots (for Wix apps that expose such menus and slots)\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeExtension({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeExtension;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_EXTENSION,\n compData: { backOfficeExtension: data },\n };\n}\n\n/**\n * WIP: automations trigger provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function automationsTriggerProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TriggerProviderSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AUTOMATIONS_TRIGGER_PROVIDER,\n compData: { automationsTriggerProvider: data },\n };\n}\n\n/**\n * WIP - SPI for execution before identity creation in the new IAM platform\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function identityPreRegistration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PreRegisterConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.IDENTITY_PRE_REGISTRATION,\n compData: { identityPreRegistration: data },\n };\n}\n\n/**\n * Premium products upgrades/downgrades\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function premiumProductsPaths({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProductsPathsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PREMIUM_PRODUCTS_PATHS,\n compData: { premiumProductsPaths: data },\n };\n}\n\n/**\n * ECOM custom scopes provider - define scopes of catalog items based custom attributes\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomCustomScope({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomScopeConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_CUSTOM_SCOPE,\n compData: { ecomCustomScope: data },\n };\n}\n\n/**\n * Implement gift card benefits such as balance retrieval, redemption, and voiding transactions.\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/gift-cards-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function giftCardsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.GiftCardProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.GIFT_CARDS_PROVIDER,\n compData: { giftCardsProvider: data },\n };\n}\n\n/**\n * Dealer External Filter SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function dealerExternalFilterProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ExternalFilterProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DEALER_EXTERNAL_FILTER_PROVIDER,\n compData: { dealerExternalFilterProvider: data },\n };\n}\n\n/**\n * Recommendations provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomRecommendationsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.RecommendationsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_RECOMMENDATIONS_PROVIDER,\n compData: { ecomRecommendationsProvider: data },\n };\n}\n\n/**\n * Dropshipping Provider SPI for Ecom Platform\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomDropshippingProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DropshippingProviderSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_DROPSHIPPING_PROVIDER,\n compData: { ecomDropshippingProvider: data },\n };\n}\n\n/**\n * Invoices SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function invoicesProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.InvoicesConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.INVOICES_PROVIDER,\n compData: { invoicesProvider: data },\n };\n}\n\n/**\n * Provide SEO keyword suggestions to site collaborators, report quota usage, and provide a page where users can upgrade their plan.\n * Learn More: https://dev.wix.com/docs/rest/api-reference/marketing/seo-keywords-suggestions-v-1/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function seoKeywordsSuggestions({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SeoKeywordsSuggestionsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SEO_KEYWORDS_SUGGESTIONS,\n compData: { seoKeywordsSuggestions: data },\n };\n}\n\n/**\n * Ecom custom discount trigger service plugin - define custom triggers to apply discount rules\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/custom-discount-triggers-integration-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomDiscountsTrigger({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomTriggerConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_DISCOUNTS_TRIGGER,\n compData: { ecomDiscountsTrigger: data },\n };\n}\n\n/**\n * Multilingual content provider for site translator to read and update translations\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function multilingualContentProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ContentProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MULTILINGUAL_CONTENT_PROVIDER,\n compData: { multilingualContentProvider: data },\n };\n}\n\n/**\n * Application Automation\n * @param id - A unique identifier for the extension\n * @param data - Automation Component data that is stored in dev center\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function applicationAutomation({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ApplicationAutomationComponent;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.APPLICATION_AUTOMATION,\n compData: { applicationAutomation: data },\n };\n}\n\n/**\n * Experimental-WIP: A back office page category\n * @param id - A unique identifier for the extension\n * @param data - Back-office sidebar categories\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeSidebarCategory({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeSidebarCategory;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_SIDEBAR_CATEGORY,\n compData: { backOfficeSidebarCategory: data },\n };\n}\n\n/**\n * Configure a page for your app that will be embedded in the Wix Dashboard.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-pages/about-dashboard-page-extensions\n * @param id - A unique identifier for the extension\n * @param data - A page in one of the back-office platforms\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function backOfficePage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficePage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_PAGE,\n compData: { backOfficePage: data },\n };\n}\n\n/**\n * Provide custom additional fees that are added to a site's cart and checkout.\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/additional-fees-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomAdditionalFees({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AdditionalFeesSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_ADDITIONAL_FEES,\n compData: { ecomAdditionalFees: data },\n };\n}\n\n/**\n * Send notifications to your app users\n * @param id - A unique identifier for the extension\n * @param data - Describes a notification that can be sent to users\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pingUserNotification({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PingNotificationComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PING_USER_NOTIFICATION,\n compData: { pingUserNotification: data },\n };\n}\n\n/**\n * Bookings Pricing Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function bookingsPricingProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingsPricingProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKINGS_PRICING_PROVIDER,\n compData: { bookingsPricingProvider: data },\n };\n}\n\n/**\n * Authenticator SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function identityAuthenticator({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AuthenticatorConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.IDENTITY_AUTHENTICATOR,\n compData: { identityAuthenticator: data },\n };\n}\n\n/**\n * WIP - SPI for authenticating via external IDP in the new IAM platform\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function identityIdpConnector({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.IDPConnectionConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.IDENTITY_IDP_CONNECTOR,\n compData: { identityIdpConnector: data },\n };\n}\n\n/**\n * Items Selector\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function itemsSelectionProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ItemsSelectionProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ITEMS_SELECTION_PROVIDER,\n compData: { itemsSelectionProvider: data },\n };\n}\n\n/**\n * Portfolio synced projects provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function portfolioSyncedProjectsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SyncedProjectsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PORTFOLIO_SYNCED_PROJECTS_PROVIDER,\n compData: { portfolioSyncedProjectsProvider: data },\n };\n}\n\n/**\n * Communication Channel\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function communicationChannel({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CommunicationChannelConfiguration;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMMUNICATION_CHANNEL,\n compData: { communicationChannel: data },\n };\n}\n\n/**\n * WIP - SPI to run after the login process\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function identityPostLogin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PostLoginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.IDENTITY_POST_LOGIN,\n compData: { identityPostLogin: data },\n };\n}\n\n/**\n * Create a component that can be easily placed in or opened from a Wix app page.\n * @param id - A unique identifier for the extension\n * @param data - A general widget in one of the back-office platforms\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeWidget({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeWidget;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_WIDGET,\n compData: { backOfficeWidget: data },\n };\n}\n\n/**\n * Social Marketing Design SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function socialMarketingDesign({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SocialMarketingDesignSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SOCIAL_MARKETING_DESIGN,\n compData: { socialMarketingDesign: data },\n };\n}\n\n/**\n * Forms Submissions SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsSubmissionsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSubmissionSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_SUBMISSIONS_PROVIDER,\n compData: { formsSubmissionsProvider: data },\n };\n}\n\n/**\n * Wix Offering\n * @param id - A unique identifier for the extension\n * @param data - Redirects to either a page component in the Business Manager or to a wix answers article\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixOffering({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WixOfferingComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_OFFERING,\n compData: { wixOffering: data },\n };\n}\n\n/**\n * Components translation test component\n * @param id - A unique identifier for the extension\n * @param data - A component used for testing dev center functionality\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function devCenterTestingComponent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DevCenterTestingComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DEV_CENTER_TESTING_COMPONENT,\n compData: { devCenterTestingComponent: data },\n };\n}\n\n/**\n * Components Validator SPI\n * @param id - A unique identifier for the extension\n * @param data - SPI config - defines the relation between implementer URL and which types it is validates\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function componentsValidatorProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ComponentsValidatorConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMPONENTS_VALIDATOR_PROVIDER,\n compData: { componentsValidatorProvider: data },\n };\n}\n\n/**\n * Components Translations additional fields config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function componentsTranslationsAdditionalFieldsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ComponentTranslationAdditionalFieldsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMPONENTS_TRANSLATIONS_ADDITIONAL_FIELDS_PROVIDER,\n compData: { componentsTranslationsAdditionalFieldsProvider: data },\n };\n}\n\n/**\n * Forms Schema SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsSchemaProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSchemaSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_SCHEMA_PROVIDER,\n compData: { formsSchemaProvider: data },\n };\n}\n\n/**\n * Bookings External Calendar Provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingsExternalCalendarProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKINGS_EXTERNAL_CALENDAR_PROVIDER,\n compData: { bookingsExternalCalendarProvider: data },\n };\n}\n\n/**\n * Default Tax Category Config\n * Learn More: https://bo.wix.com/wix-docs/rest/drafts/platform-tax\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomDefaultTaxationCategory({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DefaultTaxGroupProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_DEFAULT_TAXATION_CATEGORY,\n compData: { ecomDefaultTaxationCategory: data },\n };\n}\n\n/**\n * Viewer Dynamic Site Structure Config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function viewerDynamicSiteStructureProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DynamicSiteStructureProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.VIEWER_DYNAMIC_SITE_STRUCTURE_PROVIDER,\n compData: { viewerDynamicSiteStructureProvider: data },\n };\n}\n\n/**\n * Send notifications to your app users of users\n * @param id - A unique identifier for the extension\n * @param data - Describes a notification that can be sent to users\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pingUouNotification({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PingNotificationComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PING_UOU_NOTIFICATION,\n compData: { pingUouNotification: data },\n };\n}\n\n/**\n * Holds data for authenticating Headless Applications\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function headlessOauth({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.HeadlessOAuth;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.HEADLESS_OAUTH,\n compData: { headlessOauth: data },\n };\n}\n\n/**\n * Tax Calculator Structure Config\n * Learn More: https://bo.wix.com/wix-docs/rest/drafts/platform-tax\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomTaxCalculatorSpi({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TaxCalculatorSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_TAX_CALCULATOR_SPI,\n compData: { ecomTaxCalculatorSpi: data },\n };\n}\n\n/**\n * Comments Moderation Provider Config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function commentsModerationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CommentModerationProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMMENTS_MODERATION_PROVIDER,\n compData: { commentsModerationProvider: data },\n };\n}\n\n/**\n * GridApp files transformer config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function gridAppFilesTransformer({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.GridAppFilesTransformerConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.GRID_APP_FILES_TRANSFORMER,\n compData: { gridAppFilesTransformer: data },\n };\n}\n\n/**\n * Holds benefit programs policy provider configuration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function benefitProgramsPolicyProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PolicyConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BENEFIT_PROGRAMS_POLICY_PROVIDER,\n compData: { benefitProgramsPolicyProvider: data },\n };\n}\n\n/**\n * Apply custom charges to a site based on usage of your app's services.\n * Learn More: https://dev.wix.com/docs/rest/api-reference/app-management/apps/custom-charges-spi/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function premiumCustomCharges({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomChargesConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PREMIUM_CUSTOM_CHARGES,\n compData: { premiumCustomCharges: data },\n };\n}\n\n/**\n * Validate items in a site's cart and checkout based on custom logic.\n * Learn More: https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/validations-integration-spi/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomValidations({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ValidationsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_VALIDATIONS,\n compData: { ecomValidations: data },\n };\n}\n\n/**\n * Component Reference Data SPI\n * @param id - A unique identifier for the extension\n * @param data - SPI config - defines the relation between implementer URL and which types it saves\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function componentReferenceDataProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ComponentReferenceDataConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMPONENT_REFERENCE_DATA_PROVIDER,\n compData: { componentReferenceDataProvider: data },\n };\n}\n\n/**\n * Wix Reviews SPI\n * @param id - A unique identifier for the extension\n * @param data - Configuration for ReviewsProductCatalogProvider\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixReviewsProductCatalog({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ReviewsProductCatalogProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_REVIEWS_PRODUCT_CATALOG,\n compData: { wixReviewsProductCatalog: data },\n };\n}\n\n/**\n * Promote Social Marketing Designs Provider Configuration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function socialMarketingDesignsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SocialMarketingDesignsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SOCIAL_MARKETING_DESIGNS_PROVIDER,\n compData: { socialMarketingDesignsProvider: data },\n };\n}\n\n/**\n * Promote Google Business Profile Provider Configuration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function googleBusinessProfileFeatureProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.GbpFeatureConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.GOOGLE_BUSINESS_PROFILE_FEATURE_PROVIDER,\n compData: { googleBusinessProfileFeatureProvider: data },\n };\n}\n\n/**\n * Comments Filter Provider Config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function commentsFilterProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CommentFilterProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMMENTS_FILTER_PROVIDER,\n compData: { commentsFilterProvider: data },\n };\n}\n\n/**\n * Tax ID Validator SPI Config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function billingTaxIdValidator({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TaxIdValidatorConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BILLING_TAX_ID_VALIDATOR,\n compData: { billingTaxIdValidator: data },\n };\n}\n\n/**\n * Ping Settings Group Data\n * @param id - A unique identifier for the extension\n * @param data - Describes a setting group of a notification\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pingSettingsGroup({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PingSettingsGroupComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PING_SETTINGS_GROUP,\n compData: { pingSettingsGroup: data },\n };\n}\n\n/**\n * Forms Spam Submissions SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsSpamSubmissionsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSpamSubmissionSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_SPAM_SUBMISSIONS_PROVIDER,\n compData: { formsSpamSubmissionsProvider: data },\n };\n}\n\n/**\n * Build a tool that adds functionality to the Wix editors.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/editor-extensions/about-editor-extensions\n * @param id - A unique identifier for the extension\n * @param data - Editor Add-on component\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function editorAddon({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EditorAddon;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EDITOR_ADDON,\n compData: { editorAddon: data },\n };\n}\n\n/**\n * External Database component\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function externalDatabaseProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ExternalDatabaseSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EXTERNAL_DATABASE_PROVIDER,\n compData: { externalDatabaseProvider: data },\n };\n}\n\n/**\n * Integrate your service with Wix's payment process to allow merchants to request and use your services on their Wix sites.\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/e-commerce/service-plugins/payment-settings-integration-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomPaymentSettings({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PaymentSettingsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_PAYMENT_SETTINGS,\n compData: { ecomPaymentSettings: data },\n };\n}\n\n/**\n * Group multiple notifications into one preference toggle.\n * Learn More: https://dev.wix.com/docs/build-apps/build-your-app/user-notifications/add-notification-topics\n * @param id - A unique identifier for the extension\n * @param data - Describes topic of a notification\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function notificationTopic({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.NotificationTopic;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.NOTIFICATION_TOPIC,\n compData: { notificationTopic: data },\n };\n}\n\n/**\n * Notification Preference SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function notificationPreferencesFilterProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.NotificationPreferencesFilterConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.NOTIFICATION_PREFERENCES_FILTER_PROVIDER,\n compData: { notificationPreferencesFilterProvider: data },\n };\n}\n\n/**\n * Bookings Resource Types provider SPI config\n * @param id - A unique identifier for the extension\n * @param data - This config provides details of the resource types that are managed by an app implementing this component SPI.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingsResourceTypesProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingsResourceTypesProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKINGS_RESOURCE_TYPES_PROVIDER,\n compData: { bookingsResourceTypesProvider: data },\n };\n}\n\n/**\n * Pricing Plans form configuration\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pricingPlansFormConfiguration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PricingPlansFormConfiguration;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PRICING_PLANS_FORM_CONFIGURATION,\n compData: { pricingPlansFormConfiguration: data },\n };\n}\n\n/**\n * Create a notification to alert your app users about important updates and events.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/notifications/about-notification-extensions\n * @param id - A unique identifier for the extension\n * @param data - Describes user notifications\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function userNotification({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.UserNotification;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.USER_NOTIFICATION,\n compData: { userNotification: data },\n };\n}\n\n/**\n * Contact Notification\n * @param id - A unique identifier for the extension\n * @param data - Describes contact notifications\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function contactNotification({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ContactNotification;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CONTACT_NOTIFICATION,\n compData: { contactNotification: data },\n };\n}\n\n/**\n * Add a site page that displays selected widgets.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-pages/about-site-page-extensions\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function unifiedPage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.UnifiedPage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.UNIFIED_PAGE,\n compData: { unifiedPage: data },\n };\n}\n\n/**\n * Availability Time Slots Configuration Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function availabilityTimeSlotsConfigurationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AvailabilityTimeSlotsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AVAILABILITY_TIME_SLOTS_CONFIGURATION_PROVIDER,\n compData: { availabilityTimeSlotsConfigurationProvider: data },\n };\n}\n\n/**\n * Proposal Editor Provider SPI config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function proposalEditorProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProposalEditorProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PROPOSAL_EDITOR_PROVIDER,\n compData: { proposalEditorProvider: data },\n };\n}\n\n/**\n * Custom Table Reservations Provider SPI config\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function customTableReservationsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomReservationsApprovalConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CUSTOM_TABLE_RESERVATIONS_PROVIDER,\n compData: { customTableReservationsProvider: data },\n };\n}\n\n/**\n * Comments Context provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function commentsContextProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CommentsContextProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMMENTS_CONTEXT_PROVIDER,\n compData: { commentsContextProvider: data },\n };\n}\n\n/**\n * Forms Spam Submission Reports SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsSpamSubmissionReportsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSpamSubmissionReportSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_SPAM_SUBMISSION_REPORTS_PROVIDER,\n compData: { formsSpamSubmissionReportsProvider: data },\n };\n}\n\n/**\n * Automation Velo Action Spi Provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function automationsVeloActionProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.VeloActionConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AUTOMATIONS_VELO_ACTION_PROVIDER,\n compData: { automationsVeloActionProvider: data },\n };\n}\n\n/**\n * Calendar Event Type Provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function calendarEventTypeProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EventTypeProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CALENDAR_EVENT_TYPE_PROVIDER,\n compData: { calendarEventTypeProvider: data },\n };\n}\n\n/**\n * Reserved - previously was `service_availability_policy_provider`\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function reserved({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ServiceAvailabilityPolicyProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.RESERVED,\n compData: { reserved: data },\n };\n}\n\n/**\n * Create an SMS message for a pre-installed automation, in order to translate it.\n * @param id - A unique identifier for the extension\n * @param data - a translated sms text sent to UOU\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function smsActionMessage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SmsActionMessage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SMS_ACTION_MESSAGE,\n compData: { smsActionMessage: data },\n };\n}\n\n/**\n * Booking Policy Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingPolicyProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingPolicyProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKING_POLICY_PROVIDER,\n compData: { bookingPolicyProvider: data },\n };\n}\n\n/**\n * Multi Service Booking Policy Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function multiServiceBookingPolicyProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MultiServiceBookingPolicyProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MULTI_SERVICE_BOOKING_POLICY_PROVIDER,\n compData: { multiServiceBookingPolicyProvider: data },\n };\n}\n\n/**\n * Forms Submissions Extension SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsSubmissionsExtensionProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSubmissionSpiExtensionConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_SUBMISSIONS_EXTENSION_PROVIDER,\n compData: { formsSubmissionsExtensionProvider: data },\n };\n}\n\n/**\n * AI Assistant SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function aiAssistant({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AssistantSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AI_ASSISTANT,\n compData: { aiAssistant: data },\n };\n}\n\n/**\n * Multilingual translation schema\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function multilingualTranslationSchema({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MultilingualTranslationSchema;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MULTILINGUAL_TRANSLATION_SCHEMA,\n compData: { multilingualTranslationSchema: data },\n };\n}\n\n/**\n * Tax Groups Provider Service Plugin\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function taxGroupsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TaxGroupsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.TAX_GROUPS_PROVIDER,\n compData: { taxGroupsProvider: data },\n };\n}\n\n/**\n * Tax Calculation Provider Service Plugin\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function taxCalculationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TaxCalculationConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.TAX_CALCULATION_PROVIDER,\n compData: { taxCalculationProvider: data },\n };\n}\n\n/**\n * Create a reusable modal that can be utilized across multiple pages within your app and in other applications.\n * @param id - A unique identifier for the extension\n * @param data - A modal in one of the back-office platforms\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function backOfficeModal({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeModal;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_MODAL,\n compData: { backOfficeModal: data },\n };\n}\n\n/**\n * Deployment Pipeline Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function deploymentPipelineProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DeploymentPipelineProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DEPLOYMENT_PIPELINE_PROVIDER,\n compData: { deploymentPipelineProvider: data },\n };\n}\n\n/**\n * Display a draggable widget on a site using a self-hosted custom element.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-widgets/about-site-widget-extensions\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function customElementWidget({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomElementWidget;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CUSTOM_ELEMENT_WIDGET,\n compData: { customElementWidget: data },\n };\n}\n\n/**\n * Create a widget that will be rendered within a Wix Dashboard page.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-plugins/about-dashboard-plugin-extensions\n * @param id - A unique identifier for the extension\n * @param data - A component that enables extending Wix dashboard functionality.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeExtensionWidget({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeExtensionWidget;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_EXTENSION_WIDGET,\n compData: { backOfficeExtensionWidget: data },\n };\n}\n\n/**\n * Create a menu item that will be rendered within a Wix Dashboard page.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/dashboard-extensions/dashboard-plugins/dashboard-menu-plugins/dashboard-menu-plugin-extensions\n * @param id - A unique identifier for the extension\n * @param data - A component that enables extending a Wix dashboard menu.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeExtensionMenuItem({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeExtensionMenuItem;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_EXTENSION_MENU_ITEM,\n compData: { backOfficeExtensionMenuItem: data },\n };\n}\n\n/**\n * Form Template\n * @param id - A unique identifier for the extension\n * @param data - Form templates represent an entity that can be used as a source when creating a new form,\n * as well as used as common, extendable form.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formTemplate({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormTemplate;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORM_TEMPLATE,\n compData: { formTemplate: data },\n };\n}\n\n/**\n * Notification Content\n * @param id - A unique identifier for the extension\n * @param data - Describes a setting group of a notification\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function notificationContent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.NotificationContent;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.NOTIFICATION_CONTENT,\n compData: { notificationContent: data },\n };\n}\n\n/**\n * Broadcast List\n * @param id - A unique identifier for the extension\n * @param data - Describes topic of a notification\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function broadcastList({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BroadcastList;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BROADCAST_LIST,\n compData: { broadcastList: data },\n };\n}\n\n/**\n * Partners Payouts\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function partnersPayouts({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PayoutsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PARTNERS_PAYOUTS,\n compData: { partnersPayouts: data },\n };\n}\n\n/**\n * Wix Reviews Entity Catalog Provider SPI\n * @param id - A unique identifier for the extension\n * @param data - Configuration for ReviewsEntityCatalogProvider\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixReviewsEntityCatalog({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ReviewsEntityCatalogProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_REVIEWS_ENTITY_CATALOG,\n compData: { wixReviewsEntityCatalog: data },\n };\n}\n\n/**\n * Velo Publish Pipeline Task Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function veloPublishPipelineTaskProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.VeloPublishPipelineTaskProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.VELO_PUBLISH_PIPELINE_TASK_PROVIDER,\n compData: { veloPublishPipelineTaskProvider: data },\n };\n}\n\n/**\n * Function shop POC SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function functionsShopPriceProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FunctionsShopPriceSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FUNCTIONS_SHOP_PRICE_PROVIDER,\n compData: { functionsShopPriceProvider: data },\n };\n}\n\n/**\n * Connect your service plugins to Functions so users can define their own custom logic.\n * Learn More: https://github.com/wix-private/functions-client/blob/master/README.md\n * @param id - A unique identifier for the extension\n * @param data - A component that describes a Function\n * Design is highly influenced by business schema api\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function functionExtension({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType._Function;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FUNCTION,\n compData: { function: data },\n };\n}\n\n/**\n * Ecom Checkout Content\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomCheckoutContent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CheckoutContentSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_CHECKOUT_CONTENT,\n compData: { ecomCheckoutContent: data },\n };\n}\n\n/**\n * Communication Channel\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function communicationChannelProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.V2CommunicationChannelConfiguration;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMMUNICATION_CHANNEL_PROVIDER,\n compData: { communicationChannelProvider: data },\n };\n}\n\n/**\n * Webhook\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function webhook({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WebhookComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WEBHOOK,\n compData: { webhook: data },\n };\n}\n\n/**\n * An extension that holds topology data.\n * @param id - A unique identifier for the extension\n * @param data - A component that holds topology data for an application.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function topology({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TopologyComponentData;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.TOPOLOGY,\n compData: { topology: data },\n };\n}\n\n/**\n * Loyalty Custom Rewards POC\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function loyaltyCustomRewards({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.CustomRewardProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.LOYALTY_CUSTOM_REWARDS,\n compData: { loyaltyCustomRewards: data },\n };\n}\n\n/**\n * Create a predefined template that users can use when creating flows in Functions.\n * Learn More: https://github.com/wix-private/functions-client/blob/master/docs/function-templates.md\n * @param id - A unique identifier for the extension\n * @param data - Wix Users can choose to create a \"Function\" component according to predefined recipes for smoother user experience\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function functionRecipe({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FunctionRecipe;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FUNCTION_RECIPE,\n compData: { functionRecipe: data },\n };\n}\n\n/**\n * external url to the back office\n * @param id - A unique identifier for the extension\n * @param data - A backoffice component for external url`s\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeExternalUrl({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeExternalUrl;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_EXTERNAL_URL,\n compData: { backOfficeExternalUrl: data },\n };\n}\n\n/**\n * Authentication factor\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function identityFactor({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FactorConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.IDENTITY_FACTOR,\n compData: { identityFactor: data },\n };\n}\n\n/**\n * ecom discounts\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomDiscounts({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DiscountsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_DISCOUNTS,\n compData: { ecomDiscounts: data },\n };\n}\n\n/**\n * Blocks Velo custom css - for CSS editing in Blocks\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function veloCustomCss({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.VeloCustomCss;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.VELO_CUSTOM_CSS,\n compData: { veloCustomCss: data },\n };\n}\n\n/**\n * Dealer Adaptive Component Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function dealerAdaptiveComponentProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AdaptiveComponentProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.DEALER_ADAPTIVE_COMPONENT_PROVIDER,\n compData: { dealerAdaptiveComponentProvider: data },\n };\n}\n\n/**\n * Wix AI Assistant Action SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function aiAssistantAction({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ActionSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AI_ASSISTANT_ACTION,\n compData: { aiAssistantAction: data },\n };\n}\n\n/**\n * Integrate any external inventory with the Wix eCommerce platform.\n * Learn More: https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/catalogs/inventory-service-plugin/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function ecomInventory({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.InventorySpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_INVENTORY,\n compData: { ecomInventory: data },\n };\n}\n\n/**\n * Add a monitoring configuration to your app.\n * Learn More: https://dev.wix.com/docs/build-apps/manage-your-app/observability/monitor-your-app-with-sentry\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function monitoring({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.Monitoring;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MONITORING,\n compData: { monitoring: data },\n };\n}\n\n/**\n * PAPI SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function papiProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PluginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAPI_PROVIDER,\n compData: { papiProvider: data },\n };\n}\n\n/**\n * Add a lightbox that displays a widget in a popup over a site page.\n * Learn More: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/site-lightboxes/about-site-lightbox-extensions\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function unifiedLightbox({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.UnifiedLightbox;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.UNIFIED_LIGHTBOX,\n compData: { unifiedLightbox: data },\n };\n}\n\n/**\n * Forms Schema Extension SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formsExtensionProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSpiExtensionConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORMS_EXTENSION_PROVIDER,\n compData: { formsExtensionProvider: data },\n };\n}\n\n/**\n * Multilingual translation schema group\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function multilingualTranslationSchemaGroup({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SchemaGroup;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.MULTILINGUAL_TRANSLATION_SCHEMA_GROUP,\n compData: { multilingualTranslationSchemaGroup: data },\n };\n}\n\n/**\n * Panel data\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function panel({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.Panel;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PANEL,\n compData: { panel: data },\n };\n}\n\n/**\n * Premium Purchase Validations SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function premiumPurchaseValidations({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PurchaseValidationsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PREMIUM_PURCHASE_VALIDATIONS,\n compData: { premiumPurchaseValidations: data },\n };\n}\n\n/**\n * Any Cookies, localStorage, sessionStorage or IndexDB items the app is using in the site or their domain\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function browserStorage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BrowserStorage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BROWSER_STORAGE,\n compData: { browserStorage: data },\n };\n}\n\n/**\n * Map this app to SDK module\n * @param id - A unique identifier for the extension\n * @param data - Describe SDK module definition for an app\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function sdkDefinition({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SdkDefinition;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SDK_DEFINITION,\n compData: { sdkDefinition: data },\n };\n}\n\n/**\n * Add a space to a Page or Widget that can be extended with a widget plugin.\n * @param id - A unique identifier for the extension\n * @param data - A container (slot) that can be extended by other applications (e.g. widget plugin)\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function siteWidgetSlot({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SiteWidgetSlot;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SITE_WIDGET_SLOT,\n compData: { siteWidgetSlot: data },\n };\n}\n\n/**\n * Calendar Event Validation Provider\n * @param id - A unique identifier for the extension\n * @param data - Configuration for the event validation provider.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function calendarEventValidationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EventValidationProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CALENDAR_EVENT_VALIDATION_PROVIDER,\n compData: { calendarEventValidationProvider: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param data - Client Service is a broad category encompassing any value, function, or feature that an application needs. A service is typically a class with a narrow, well-defined purpose. A component is one type of class that can use DI.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function clientSideService({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ClientSideService;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CLIENT_SIDE_SERVICE,\n compData: { clientSideService: data },\n };\n}\n\n/**\n * Billing Settings SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function billingSettings({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BillingSettingsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BILLING_SETTINGS,\n compData: { billingSettings: data },\n };\n}\n\n/**\n * Patterns Wizard\n * @param id - A unique identifier for the extension\n * @param data - A component holding configuration of Patterns Wizard\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function patternsWizard({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PatternsWizard;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PATTERNS_WIZARD,\n compData: { patternsWizard: data },\n };\n}\n\n/**\n * Application Profile SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function applicationProfile({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ApplicationProfileProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.APPLICATION_PROFILE,\n compData: { applicationProfile: data },\n };\n}\n\n/**\n * Create an TextToSpeech message for a pre-installed automation, in order to translate it.\n * @param id - A unique identifier for the extension\n * @param data - a translated TextToSpeech payload sent to UOU\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function textToSpeechActionMessage({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TextToSpeechActionMessage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.TEXT_TO_SPEECH_ACTION_MESSAGE,\n compData: { textToSpeechActionMessage: data },\n };\n}\n\n/**\n * Audience Provider\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function audienceProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AudienceProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.AUDIENCE_PROVIDER,\n compData: { audienceProvider: data },\n };\n}\n\n/**\n * Pricing Plans Price\n * @param id - A unique identifier for the extension\n * @param data - Config for the Price SPI\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pricingPlansPrice({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PriceSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PRICING_PLANS_PRICE,\n compData: { pricingPlansPrice: data },\n };\n}\n\n/**\n * Pricing Plans Start Date Limits SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pricingPlanStartDateLimits({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StartDateLimitsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PRICING_PLAN_START_DATE_LIMITS,\n compData: { pricingPlanStartDateLimits: data },\n };\n}\n\n/**\n * Pricing Plans Start Date Rules SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pricingPlanStartDateRules({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StartDateRulesSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PRICING_PLAN_START_DATE_RULES,\n compData: { pricingPlanStartDateRules: data },\n };\n}\n\n/**\n * Events ticket reservations SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function eventsTicketReservations({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TicketReservationsSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EVENTS_TICKET_RESERVATIONS,\n compData: { eventsTicketReservations: data },\n };\n}\n\n/**\n * WIP: Dispute Service Plugin\n * @param id - A unique identifier for the extension\n * @param data - Configuration for the dispute service plugin implementor\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function paymentsDisputeServicePlugin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.DisputeServicePluginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PAYMENTS_DISPUTE_SERVICE_PLUGIN,\n compData: { paymentsDisputeServicePlugin: data },\n };\n}\n\n/**\n * Pricing Plans Fees\n * @param id - A unique identifier for the extension\n * @param data - Config for the Fees SPI\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function pricingPlansFees({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FeesSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PRICING_PLANS_FEES,\n compData: { pricingPlansFees: data },\n };\n}\n\n/**\n * A react component with native and custom editor abilities\n * @param id - A unique identifier for the extension\n * @param data - The full model for an imported component set in DEV Center\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function editorReactComponent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EditorReactComponent;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EDITOR_REACT_COMPONENT,\n compData: { editorReactComponent: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function suppliersHubMarketplace({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MarketplaceSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SUPPLIERS_HUB_MARKETPLACE,\n compData: { suppliersHubMarketplace: data },\n };\n}\n\n/**\n * Form Schema Dynamic Values\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formSchemaDynamicValues({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSchemaDynamicValuesSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORM_SCHEMA_DYNAMIC_VALUES,\n compData: { formSchemaDynamicValues: data },\n };\n}\n\n/**\n * Blog paywall SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function blogPaywallProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BlogPaywallProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BLOG_PAYWALL_PROVIDER,\n compData: { blogPaywallProvider: data },\n };\n}\n\n/**\n * Loyalty Custom Rewards V2\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function loyaltyCustomRewardsV2({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.RewardProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.LOYALTY_CUSTOM_REWARDS_V2,\n compData: { loyaltyCustomRewardsV2: data },\n };\n}\n\n/**\n * Restriction service plugin for editing products managed by third-party fulfillment apps, such as dropshipping or print-on-demand services\n * Learn More: https://dev.wix.com/docs/rest/business-solutions/stores/service-plugins/product-restrictions-v3/introduction\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function storesProductRestrictions({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProductRestrictionsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.STORES_PRODUCT_RESTRICTIONS,\n compData: { storesProductRestrictions: data },\n };\n}\n\n/**\n * Form Submission Moderation SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function formSubmissionModeration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormSubmissionModerationSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FORM_SUBMISSION_MODERATION,\n compData: { formSubmissionModeration: data },\n };\n}\n\n/**\n * Event badges SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function eventsEventBadges({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EventBadgesSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EVENTS_EVENT_BADGES,\n compData: { eventsEventBadges: data },\n };\n}\n\n/**\n * Billing Operation SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function billingOperation({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.OperationExecutorConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BILLING_OPERATION,\n compData: { billingOperation: data },\n };\n}\n\n/**\n * customization to the back office\n * @param id - A unique identifier for the extension\n * @param data - Back-office Customization\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeCustomization({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeCustomization;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_CUSTOMIZATION,\n compData: { backOfficeCustomization: data },\n };\n}\n\n/**\n * Dev Center components enricher SPI\n * @param id - A unique identifier for the extension\n * @param data - SPI config - defines the relation between implementer URL and which types it is validates\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function componentEnricherProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ComponentEnricherConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.COMPONENT_ENRICHER_PROVIDER,\n compData: { componentEnricherProvider: data },\n };\n}\n\n/**\n * Restricted customization to the back office\n * @param id - A unique identifier for the extension\n * @param data - Back-office Restricted Customization\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backOfficeRestrictedCustomization({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackOfficeRestrictedCustomization;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACK_OFFICE_RESTRICTED_CUSTOMIZATION,\n compData: { backOfficeRestrictedCustomization: data },\n };\n}\n\n/**\n * Editor app previews POC\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function editorAppPreviewsPoc({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AppPreviewProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EDITOR_APP_PREVIEWS_POC,\n compData: { editorAppPreviewsPoc: data },\n };\n}\n\n/**\n * Legends Persona Configuration SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function legendsPersonaConfiguration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.LegendsSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.LEGENDS_PERSONA_CONFIGURATION,\n compData: { legendsPersonaConfiguration: data },\n };\n}\n\n/**\n * Wix Hosting App Deployment Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixHostingAppDeploymentProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AppDeploymentProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_HOSTING_APP_DEPLOYMENT_PROVIDER,\n compData: { wixHostingAppDeploymentProvider: data },\n };\n}\n\n/**\n * A component to store the Velo BaaS deployment data\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function backendWorker({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BackendWorker;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BACKEND_WORKER,\n compData: { backendWorker: data },\n };\n}\n\n/**\n * Event Time Slots Configuration Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function eventTimeSlotsConfigurationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EventTimeSlotsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EVENT_TIME_SLOTS_CONFIGURATION_PROVIDER,\n compData: { eventTimeSlotsConfigurationProvider: data },\n };\n}\n\n/**\n * Wix Hosting App Environment Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixHostingAppEnvironmentProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AppEnvironmentProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_HOSTING_APP_ENVIRONMENT_PROVIDER,\n compData: { wixHostingAppEnvironmentProvider: data },\n };\n}\n\n/**\n * SDK exports for existing app relavent SDK\n * @param id - A unique identifier for the extension\n * @param data - SDK exports specify the metadata of a module.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function sdkExports({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SDKExports;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SDK_EXPORTS,\n compData: { sdkExports: data },\n };\n}\n\n/**\n * A Javascript service for Apps and React Components that will be run in the viewer (client and server side rendering) and in the editor\n * @param id - A unique identifier for the extension\n * @param data - A service to be used by components and apps in the viewer and editor\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function viewerService({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ViewerService;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.VIEWER_SERVICE,\n compData: { viewerService: data },\n };\n}\n\n/**\n * Wix Payments Provider Account Service Plugin\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixPaymentsProviderAccountServicePlugin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProviderAccountServicePluginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_PAYMENTS_PROVIDER_ACCOUNT_SERVICE_PLUGIN,\n compData: { wixPaymentsProviderAccountServicePlugin: data },\n };\n}\n\n/**\n * contacts segments v2 filter provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function contactsSegmentsV2FilterProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProviderConfigMessage;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.CONTACTS_SEGMENTS_V2_FILTER_PROVIDER,\n compData: { contactsSegmentsV2FilterProvider: data },\n };\n}\n\n/**\n * Wix Analytics product catalog provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function analyticsProductCatalog({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProductCatalogProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ANALYTICS_PRODUCT_CATALOG,\n compData: { analyticsProductCatalog: data },\n };\n}\n\n/**\n * Wix Partner Store SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function siteMigration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SiteMigrationSpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SITE_MIGRATION,\n compData: { siteMigration: data },\n };\n}\n\n/**\n * Restaurnts POS Provider Settings SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function restaurantsPosProviderSettingsServicePlugin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.PosProviderSettingsServicePluginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.RESTAURANTS_POS_PROVIDER_SETTINGS_SERVICE_PLUGIN,\n compData: { restaurantsPosProviderSettingsServicePlugin: data },\n };\n}\n\n/**\n * Wix Vibe instructions\n * @param id - A unique identifier for the extension\n * @param data - A component that represents a set of instructions for Wix Vibe to execute on app installation\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixVibeCodingInstructions({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WixVibeCodingInstructions;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_VIBE_CODING_INSTRUCTIONS,\n compData: { wixVibeCodingInstructions: data },\n };\n}\n\n/**\n * Tax Exempt Groups Provider Service Plugin\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function taxExemptGroupsProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.TaxExemptGroupsProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.TAX_EXEMPT_GROUPS_PROVIDER,\n compData: { taxExemptGroupsProvider: data },\n };\n}\n\n/**\n * Bookings Automations Configuration Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingAutomationsConfiguration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingAutomationsConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKING_AUTOMATIONS_CONFIGURATION,\n compData: { bookingAutomationsConfiguration: data },\n };\n}\n\n/**\n * Bookings Platform Configuration Component\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingsPlatformConfiguration({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingsPlatformConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKINGS_PLATFORM_CONFIGURATION,\n compData: { bookingsPlatformConfiguration: data },\n };\n}\n\n/**\n * Bookings Validation Provider SPI - validates bookings for external providers\n * @param id - A unique identifier for the extension\n * @param data - Configuration for the bookings validation provider.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function bookingsValidationProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BookingsValidationProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.BOOKINGS_VALIDATION_PROVIDER,\n compData: { bookingsValidationProvider: data },\n };\n}\n\n/**\n * Wix Vibe UI Component\n * @param id - A unique identifier for the extension\n * @param data - A component that represents a Wix Vibe UI component editing configuration\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixVibeComponent({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WixVibeComponent;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_VIBE_COMPONENT,\n compData: { wixVibeComponent: data },\n };\n}\n\n/**\n * Wixel SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixel({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WixelSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIXEL,\n compData: { wixel: data },\n };\n}\n\n/**\n * Bookings Staff Sorting Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function staffSortingProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.StaffSortingProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.STAFF_SORTING_PROVIDER,\n compData: { staffSortingProvider: data },\n };\n}\n\n/**\n * Function Ecom Discount Trigger Eligibility Provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function functionEcomDiscountTriggerEligibilityProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FunctionEcomDiscountTriggerEligibilityProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FUNCTION_ECOM_DISCOUNT_TRIGGER_ELIGIBILITY_PROVIDER,\n compData: { functionEcomDiscountTriggerEligibilityProvider: data },\n };\n}\n\n/**\n * Functions Assistant Tools SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function functionsAssistantTools({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FunctionAssistantToolProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.FUNCTIONS_ASSISTANT_TOOLS,\n compData: { functionsAssistantTools: data },\n };\n}\n\n/**\n * Chunked Site Map Provider SPI for apps that serve large amount of site map entries\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function siteMapInfoProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.SiteMapProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SITE_MAP_INFO_PROVIDER,\n compData: { siteMapInfoProvider: data },\n };\n}\n\n/** @internal\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\nexport function wixAiGatewayCallback({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.WixAiGatewaySpiConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIX_AI_GATEWAY_CALLBACK,\n compData: { wixAiGatewayCallback: data },\n };\n}\n\n/**\n * URL mapper provider SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function urlMapperProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.UrlMapperProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.URL_MAPPER_PROVIDER,\n compData: { urlMapperProvider: data },\n };\n}\n\n/**\n * Provider suppression plugin\n * @param id - A unique identifier for the extension\n * @param data - A ProviderSuppressionServicePluginConfig is entity which holds dev center app configuration for allowed payment provider on site\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function providerSuppressionServicePlugin({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.ProviderSuppressionServicePluginConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.PROVIDER_SUPPRESSION_SERVICE_PLUGIN,\n compData: { providerSuppressionServicePlugin: data },\n };\n}\n\n/**\n * collect form data for checkout items\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function ecomForms({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.FormsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.ECOM_FORMS,\n compData: { ecomForms: data },\n };\n}\n\n/**\n * Editor Context Provider\n * @param id - A unique identifier for the extension\n * @param data - A component that provides context to children and can be added\n * to any page, container or section in the Editor.\n * The compoent is logical and does not provide any UI.\n * It does however provide props for configuring it in the Editor.\n * The bundles can export the following:\n * method `default` export: the context provider component\n * method `injectAccessTokenGetter`: A way to have an access token injected\n * hooks: The hook method exposed for usage (`useSomeContextName`)\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function editorContextProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EditorContextProvider;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EDITOR_CONTEXT_PROVIDER,\n compData: { editorContextProvider: data },\n };\n}\n\n/**\n * Editor Function Library\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function editorFunctionLibrary({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.EditorFunctionLibrary;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.EDITOR_FUNCTION_LIBRARY,\n compData: { editorFunctionLibrary: data },\n };\n}\n\n/**\n * Use routers to reuse pages design across multiple data items with dynamic URLs\n * @param id - A unique identifier for the extension\n * @param data - Configuration for an app-level router that serves multiple pages.\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function appRouter({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.AppRouter;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.APP_ROUTER,\n compData: { appRouter: data },\n };\n}\n\n/**\n * Wixel Binding SPI\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function wixelBinding({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.BindingsSPIConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.WIXEL_BINDING,\n compData: { wixelBinding: data },\n };\n}\n\n/**\n * Suppliers Hub Marketplace Provider V2\n * @param id - A unique identifier for the extension\n * @param name - Optional - A human readable name for the extension\n * @returns A general form of extensions\n */\n/** @internal */\nexport function shubMarketplaceProvider({\n id,\n data,\n name,\n}: {\n id: string;\n data: ExtensionType.MarketplaceProviderConfig;\n name?: string;\n}): ExtensionData {\n return {\n compId: id,\n compName: name,\n compType: ComponentType.SHUB_MARKETPLACE_PROVIDER,\n compData: { shubMarketplaceProvider: data },\n };\n}\n"],"mappings":"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","names":[]}