import { EditorRendererControllerType } from '../types/editorRendererController';
import { EditorStateType, Element } from '../types';
import { FC, ReactNode } from 'react';

export type ComponentElementBoxProps = {
    element: Element;
    allElements: Element[];
    editorState: EditorStateType;
    appController: EditorRendererControllerType['appController'];
    currentViewportElements: Element[];
    selectedPageElements: Element[];
    ELEMENT_MODELS: EditorRendererControllerType['ELEMENT_MODELS'];
    selectedElement: Element | null;
    uiActions?: unknown;
    isProduction: boolean;
    OverlayComponent?: FC<{
        element: Element;
    }>;
    navigate: (to: string) => void;
    rootCompositeElementId?: string;
    icons: Record<string, string>;
    injections?: {
        elements: Record<string, any>;
        elementReplacementComponent: Record<string, ReactNode>;
    };
};
export declare const ComponentBox: (props: ComponentElementBoxProps) => import("react/jsx-runtime").JSX.Element;
