import type { GraphOutputFormat, LinkGraphOptions } from "../core/link-graph-generator.js"; import type { OperationOptions } from "../types/operations.js"; /** * Configuration options for graph generation operations. * * @category Commands */ export interface GraphOperationOptions extends OperationOptions, LinkGraphOptions { /** Output format for the graph */ format: GraphOutputFormat; /** Output file path (optional) */ output?: string; /** Whether to open the generated file */ open?: boolean; } /** * CLI-specific options for the graph command. * * @category Commands */ export interface GraphCliOptions extends Omit { /** Output format as string */ format?: string; /** Output results in JSON format */ json?: boolean; } /** * Result of a graph generation operation. * * @category Commands */ export interface GraphResult { /** Whether the operation was successful */ success: boolean; /** Number of files processed */ filesProcessed: number; /** Number of nodes in the graph */ nodeCount: number; /** Number of edges in the graph */ edgeCount: number; /** Output file path if written */ outputFile?: string; /** Generated graph content */ content: string; /** Processing time in milliseconds */ processingTime: number; /** Analysis results */ analysis: { /** Number of hub nodes */ hubCount: number; /** Number of orphaned nodes */ orphanCount: number; /** Number of circular references */ circularReferenceCount: number; }; /** Any errors encountered */ errors: string[]; /** Warnings generated */ warnings: string[]; } /** * Generates interactive link graphs from markdown file relationships. * * Creates visual representations of how markdown files link to each other, supporting multiple * output formats including JSON data, Mermaid diagrams, GraphViz DOT, and interactive HTML * visualizations. * * @example * Basic graph generation * ```typescript * const result = await generateGraph(['docs/**\/*.md'], { * format: 'mermaid', * includeExternal: false * }); * * console.log('Generated Mermaid diagram:'); * console.log(result.content); * ``` * * @example * Generate interactive HTML visualization * ```typescript * const result = await generateGraph(['**\/*.md'], { * format: 'html', * output: 'graph.html', * includeImages: true * }); * * console.log('Interactive graph saved to: ' + result.outputFile); * ``` * * @param patterns - File patterns to process (supports globs) * @param options - Graph generation options * * @returns Promise resolving to graph generation results */ export declare function generateGraph(patterns: string[], options?: Partial): Promise; export declare function graphCommand(patterns: string[], cliOptions: GraphCliOptions): Promise; //# sourceMappingURL=graph.d.ts.map