/**
 * MermaidRenderer - Renders Mermaid diagrams from intermediate representation
 *
 * Converts MermaidDiagram objects to Mermaid syntax strings
 */
import { MermaidDiagram, DiagramContext, ValidationResult } from '../types/index.js';
/**
 * MermaidRenderer - Converts diagram objects to Mermaid syntax
 */
export declare class MermaidRenderer {
    /**
     * Escape special characters in Mermaid labels
     */
    private escapeLabel;
    /**
     * Render a diagram to Mermaid syntax
     */
    render(diagram: MermaidDiagram, context: DiagramContext): string;
    /**
     * Render a subgraph
     */
    private renderSubgraph;
    /**
     * Render a node
     */
    private renderNode;
    /**
     * Get node shape based on type
     */
    private getNodeShape;
    /**
     * Render an edge
     */
    private renderEdge;
    /**
     * Get arrow style for edge
     */
    private getArrowStyle;
    /**
     * Render styles for nodes
     */
    private renderStyles;
    /**
     * Get border color (darker version of fill color)
     */
    private getBorderColor;
    /**
     * Validate Mermaid syntax (basic validation)
     */
    validateSyntax(mermaid: string): ValidationResult;
    /**
     * Render ER diagram (special case for entity-relationship)
     */
    renderERDiagram(diagram: MermaidDiagram, context: DiagramContext): string;
    /**
     * Get ER diagram relationship type notation
     */
    private getERRelationType;
    /**
     * Render sequence diagram (special case)
     */
    renderSequenceDiagram(diagram: MermaidDiagram, context: DiagramContext): string;
    /**
     * Render state diagram (special case for lifecycles)
     */
    renderStateDiagram(diagram: MermaidDiagram, context: DiagramContext): string;
    /**
     * Render class diagram (UML class diagram with attributes and methods)
     */
    private renderClassDiagram;
}
//# sourceMappingURL=MermaidRenderer.d.ts.map