@paulohenriquevn/m2js
Version:
Transform TypeScript/JavaScript code into LLM-friendly Markdown summaries + Smart Dead Code Detection + Graph-Deep Diff Analysis. Extract exported functions, classes, and JSDoc comments for better AI context with 60%+ token reduction. Intelligent dead cod
61 lines (60 loc) • 1.72 kB
TypeScript
import { ParsedFile, DependencyGraph } from '../types';
import { DiagramOptions, DiagramResult, DiagramType } from './diagram-types';
/**
* Main coordinator for diagram generation
* Routes requests to appropriate diagram generators
*/
export declare class DiagramCoordinator {
private mermaidEnhancer;
private classGenerator;
constructor();
/**
* Generate diagram based on type and options
*/
generateDiagram(data: {
parsedFile?: ParsedFile;
parsedFiles?: ParsedFile[];
dependencyGraph?: DependencyGraph;
}, options: DiagramOptions): DiagramResult;
/**
* Generate dependency diagram
*/
private generateDependencyDiagram;
/**
* Generate class diagram
*/
private generateClassDiagram;
/**
* Get supported diagram types
*/
getSupportedTypes(): DiagramType[];
/**
* Validate diagram options
*/
validateOptions(options: DiagramOptions): {
valid: boolean;
errors: string[];
};
/**
* Generate multiple diagrams at once
*/
generateMultipleDiagrams(data: {
parsedFile?: ParsedFile;
parsedFiles?: ParsedFile[];
dependencyGraph?: DependencyGraph;
}, types: DiagramType[], baseOptions?: Partial<DiagramOptions>): {
[key in DiagramType]?: DiagramResult;
};
/**
* Static factory method
*/
static create(): DiagramCoordinator;
}
/**
* Convenience function for quick diagram generation
*/
export declare function generateDiagram(type: DiagramType, data: {
parsedFile?: ParsedFile;
parsedFiles?: ParsedFile[];
dependencyGraph?: DependencyGraph;
}, options?: Partial<DiagramOptions>): string;