UNPKG

sicua

Version:

A tool for analyzing project structure and dependencies

68 lines (67 loc) 1.93 kB
/** * Project Metadata Detector - Extracts project metadata from package.json and configuration files */ export interface PackageJsonMetadata { name?: string; version?: string; description?: string; private?: boolean; scripts?: Record<string, string>; dependencies?: Record<string, string>; devDependencies?: Record<string, string>; engines?: { node?: string; npm?: string; }; } export interface FrameworkInfo { react?: string; nextjs?: string; typescript?: string; nodejs?: string; } export interface DevelopmentTools { buildTools: Record<string, string>; linting: Record<string, string>; testing: Record<string, string>; bundlers: Record<string, string>; } export interface UIAndStyling { cssFrameworks: Record<string, string>; uiLibraries: Record<string, string>; iconLibraries: Record<string, string>; } export interface StateManagement { libraries: Record<string, string>; } export interface ConfigurationFiles { nextConfig: boolean; tsConfig: boolean; eslintConfig: boolean; prettierConfig: boolean; jestConfig: boolean; vitestConfig: boolean; playwrightConfig: boolean; cypressConfig: boolean; } export interface ProjectMetadata { packageInfo: { name?: string; version?: string; description?: string; private?: boolean; hasScripts: boolean; scriptCount: number; }; framework: FrameworkInfo; developmentTools: DevelopmentTools; uiAndStyling: UIAndStyling; stateManagement: StateManagement; configurationFiles: ConfigurationFiles; } /** * Detects project metadata from package.json and configuration files * @param projectRoot Root directory of the project * @returns ProjectMetadata object with all detected information */ export declare function detectProjectMetadata(projectRoot: string): ProjectMetadata;