UNPKG

ruch

Version:

Revolutionary React TypeScript CLI with hexagonal architecture & AI-powered development assistance. Create maintainable, scalable applications with domain-driven design and integrated AI tooling.

63 lines 1.87 kB
import type { FileSystem } from './file-operations'; /** * Types for graph data */ export interface GraphNode { id: string; label: string; type?: 'core' | 'feature' | 'shared'; } export interface GraphEdge { source: string; target: string; type: 'direct-import' | 'indirect-import'; metadata: { path: string; line?: number; }; } export interface GraphData { nodes: GraphNode[]; edges: GraphEdge[]; metadata: { generatedAt: string; projectPath: string; totalDomains: number; totalDependencies: number; }; } export interface DependencyInfo { fromDomain: string; toDomain: string; filePath: string; line: number; importStatement: string; } /** * Pure function to extract import statements from file content */ export declare const extractImportStatements: (content: string) => Array<{ statement: string; line: number; }>; /** * Pure function to determine if an import path refers to a domain */ export declare const extractDomainFromImportPath: (importPath: string, currentDomain: string) => string | null; /** * Pure function to get all TypeScript/JavaScript files in a directory recursively */ export declare const getSourceFiles: (fileSystem: FileSystem, dirPath: string) => Promise<string[]>; /** * Analyze dependencies for a single domain */ export declare const analyzeDomainDependencies: (fileSystem: FileSystem, domainPath: string, domainName: string) => Promise<DependencyInfo[]>; /** * Detect circular dependencies in the graph */ export declare const detectCircularDependencies: (edges: GraphEdge[]) => string[][]; /** * Generate complete graph data for all domains */ export declare const generateGraphData: (fileSystem: FileSystem, projectRoot?: string) => Promise<GraphData>; //# sourceMappingURL=dependency-analyzer.d.ts.map