import React from "react"; import type { PropsWithChildren } from "react"; import type { InstalledExtensions, ExtensionsProvider, HostConfig, PortOptions, SharedContextValues } from "@adobe/uix-host"; /** @public */ export interface ExtensibleProps extends Omit { /** * Unique name for identifying this extensible app. May be used as metadata in * extension registry in the future. */ appName?: string; /** * Function which returns a promise for the full list of extensions. */ extensionsProvider: ExtensionsProvider; /** * {@inheritDoc HostConfig.guestOptions} */ guestOptions?: PortOptions; /** * {@inheritDoc HostConfig.sharedContext} */ sharedContext?: SharedContextValues; extensionsListCallback?: (extensions: InstalledExtensions) => InstalledExtensions; } /** * Declares an extensible area in an app, and provides host and extension * objects to all descendents. The {@link useExtensions} hook can only be called * in a descendent of this component. * * @remarks * For many apps, there will be only one Extensible provider, fairly high in the * component tree. It is a context provider component that may be bundled with * other context providers in your app architecture. * * Each Extensible element creates one {@link @adobe/uix-host#Host} object and * one call to an extensions provider. If multiple Extensible elements are used, * this may cause redundant calls. Such a design should be carefully considered. * * @public */ export declare function Extensible({ appName, children, extensionsProvider, guestOptions, runtimeContainer, debug, sharedContext, extensionsListCallback, }: PropsWithChildren): React.JSX.Element; export default Extensible; //# sourceMappingURL=Extensible.d.ts.map