/**
 * ERDiagramPlugin - Entity-Relationship diagram generation
 *
 * Supports:
 * - er-diagram: Standard ER diagram with attributes and relationships
 * - profile-attachment: Profile attachment patterns
 */
import { BaseDiagramPlugin } from '../../core/BaseDiagramPlugin.js';
import { DiagramType, DiagramContext, MermaidDiagram, ValidationResult } from '../../types/index.js';
import { SpecVerseAST } from '@specverse/types';
export declare class ERDiagramPlugin extends BaseDiagramPlugin {
    name: string;
    version: string;
    description: string;
    supportedTypes: DiagramType[];
    /**
     * Generate diagram based on type
     */
    generate(context: DiagramContext, type: DiagramType): MermaidDiagram;
    /**
     * Validate AST for ER diagram generation
     */
    validate(ast: SpecVerseAST): ValidationResult;
    /**
     * Generate standard ER diagram
     */
    private generateERDiagram;
    /**
     * Generate profile attachment diagram
     */
    private generateProfileAttachmentDiagram;
    /**
     * Helper: Map SpecVerse types to ER diagram types
     */
    private mapToERType;
    /**
     * Helper: Create relationship for ER diagram
     */
    private createRelationship;
    /**
     * Helper: Get cardinality notation for relationship
     */
    private getCardinality;
    /**
     * Helper: Detect circular relationships
     */
    private detectCircularRelationships;
    /**
     * Get default options for ER diagrams
     */
    getDefaultOptions(): {
        includeAttributes: boolean;
        includeRelationships: boolean;
        title: string;
    };
}
//# sourceMappingURL=ERDiagramPlugin.d.ts.map