/**
 * SpecVerse Unified Diagram Engine
 *
 * A comprehensive, extensible diagram generation system for SpecVerse specifications
 *
 * @example
 * ```typescript
 * import { UnifiedDiagramGenerator, EventFlowPlugin } from '@specverse/lang/diagram-engine';
 *
 * const generator = new UnifiedDiagramGenerator({
 *   plugins: [new EventFlowPlugin()],
 *   theme: 'default'
 * });
 *
 * const diagram = generator.generate(ast, 'event-flow-layered');
 * ```
 */
export { UnifiedDiagramGenerator } from './core/UnifiedDiagramGenerator.js';
export { DiagramContext } from './core/DiagramContext.js';
export { StyleManager, styleManager, THEMES } from './core/StyleManager.js';
export { BaseDiagramPlugin } from './core/BaseDiagramPlugin.js';
export { MermaidRenderer } from './renderers/MermaidRenderer.js';
export type { DiagramType, DiagramOptions, DiagramGeneratorConfig, DiagramPlugin, DiagramContext as IDiagramContext, OutputFormat, ThemeConfig, ColorPalette, ShapeConfig, LayoutConfig, MermaidDiagram, MermaidNode, MermaidEdge, Subgraph, MermaidRelation, MermaidState, MermaidTransition, MermaidLifecycle, ValidationResult } from './types/index.js';
export { EventFlowPlugin } from './plugins/event-flow/EventFlowPlugin.js';
export { ERDiagramPlugin } from './plugins/er-diagram/ERDiagramPlugin.js';
export { ClassDiagramPlugin } from './plugins/class-diagram/ClassDiagramPlugin.js';
export { DeploymentPlugin } from './plugins/deployment/DeploymentPlugin.js';
export { LifecyclePlugin } from './plugins/lifecycle/LifecyclePlugin.js';
export { ManifestPlugin } from './plugins/manifest/ManifestPlugin.js';
export { ArchitecturePlugin } from './plugins/architecture/ArchitecturePlugin.js';
import type { DiagramPlugin } from './types/index.js';
/**
 * Create diagram plugins from entity registry declarations.
 * Deduplicates by type name (multiple entities may declare the same plugin type).
 */
export declare function createPluginsFromRegistry(): DiagramPlugin[];
/**
 * Create all available diagram plugins (convenience for backward compatibility).
 */
export declare function createAllPlugins(): DiagramPlugin[];
//# sourceMappingURL=index.d.ts.map