import type { ReactNode } from 'react'; import type { RouteProps } from 'react-router-dom'; import type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router'; import type { SlotRegistry } from '@teambit/harmony'; import type { UseComponentType, Filters } from './use-component'; import type { ComponentModel } from './component-model'; export type ComponentPageSlot = SlotRegistry; export type ComponentPageElement = { type: 'before' | 'after'; content: ReactNode; }; export type ComponentProps = { containerSlot?: ComponentPageSlot; routeSlot: RouteSlot; overriddenRoutes?: RouteProps[]; host: string; onComponentChange?: (activeComponent?: ComponentModel) => void; useComponent?: UseComponentType; useComponentFilters?: () => Filters; path?: string; componentIdStr?: string | (() => string | undefined); }; /** * main UI component of the Component extension. */ export declare function Component({ routeSlot, overriddenRoutes, containerSlot, host: hostFromProps, onComponentChange, componentIdStr, useComponent, path, useComponentFilters, }: ComponentProps): import("react/jsx-runtime").JSX.Element;