import { ElementShape } from '@likec4/core';
import { CSSProperties, PropsWithChildren, ReactNode } from 'react';
import { ElementIconRenderer } from '../LikeC4Diagram.props';
/**
* Provider for custom element icon renderers
*
* @example
* ```tsx
* const MyIconRenderer: ElementIconRenderer = ({ node }) => {
* return
{node.title}
* }
*
*
*
*
* ```
*/
export declare function IconRendererProvider({ value, children, }: PropsWithChildren<{
value: ElementIconRenderer | null;
}>): import("react/jsx-runtime").JSX.Element;
export declare function IconRenderer({ element, className, style, }: {
element?: {
id: string;
title: string;
icon?: string | null | undefined;
};
className?: string | undefined;
style?: CSSProperties | undefined;
}): ReactNode;
export declare function IconOrShapeRenderer({ element, className, style, }: {
element: {
id: string;
title: string;
shape: ElementShape;
icon?: string | null | undefined;
};
className?: string;
style?: CSSProperties | undefined;
}): import("react/jsx-runtime").JSX.Element;