UNPKG

crapifyme

Version:

Ultra-fast developer productivity CLI tools - remove comments, logs, and more

183 lines 4.48 kB
export interface PackageInfo { name: string; version: string; description?: string; homepage?: string; repository?: string | { type: string; url: string; }; keywords?: string[]; license?: string; } export interface DependencyInfo { name: string; currentVersion: string; latestVersion?: string; wantedVersion?: string; isOutdated: boolean; isDev: boolean; isOptional: boolean; isPeer: boolean; size?: { raw: number; gzip: number; formatted: { raw: string; gzip: string; }; }; vulnerabilities?: SecurityVulnerability[]; unusedReason?: string; duplicateVersions?: string[]; } export interface SecurityVulnerability { id: string; packageName: string; title: string; description: string; severity: 'low' | 'moderate' | 'high' | 'critical'; references: string[]; vulnerable_versions: string; patched_versions?: string; recommendation?: string; } export interface DependencyTreeNode { name: string; version: string; path: string; dependencies?: Map<string, DependencyTreeNode>; dev: boolean; optional: boolean; resolved?: string; overridden?: boolean; } export interface PackageManagerInfo { type: 'npm' | 'yarn' | 'pnpm'; version: string; lockFile: string; workspaces?: string[]; auditCommand: string; } export interface BundleAnalysis { totalSize: { raw: number; gzip: number; formatted: { raw: string; gzip: string; }; }; largestPackages: Array<{ name: string; size: { raw: number; gzip: number; percentage: number; }; }>; treeshakeable: string[]; nonTreeshakeable: string[]; sideEffects: string[]; } export interface ProjectAnalysis { projectInfo: { name: string; version: string; path: string; packageManager: PackageManagerInfo; }; dependencies: { production: DependencyInfo[]; development: DependencyInfo[]; peer: DependencyInfo[]; optional: DependencyInfo[]; }; summary: { total: { production: number; development: number; peer: number; optional: number; }; outdated: number; vulnerable: number; unused: number; duplicates: number; heavyPackages: number; }; security: { vulnerabilities: SecurityVulnerability[]; auditSummary: { critical: number; high: number; moderate: number; low: number; }; }; bundle: BundleAnalysis; unusedDependencies: string[]; duplicateDependencies: Map<string, string[]>; } export interface DepsProcessorOptions { packageManager?: 'npm' | 'yarn' | 'pnpm' | 'auto'; includeDevDependencies?: boolean; includePeerDependencies?: boolean; includeOptionalDependencies?: boolean; checkSecurity?: boolean; analyzeBundleSize?: boolean; checkUnused?: boolean; workspaces?: boolean; timeout?: number; cacheTimeout?: number; verbose?: boolean; } export interface DepsAnalysisResult { analysis: ProjectAnalysis; errors: Array<{ type: 'security' | 'size' | 'outdated' | 'general'; message: string; package?: string; }>; warnings: Array<{ type: 'performance' | 'compatibility' | 'deprecation'; message: string; package?: string; }>; processingTime: number; cacheMisses: number; cacheHits: number; } export interface DepsStats { filesAnalyzed: number; dependenciesScanned: number; vulnerabilitiesFound: number; outdatedPackages: number; unusedPackages: number; sizeSavingsIdentified: number; errors: Array<{ message: string; type: string; }>; } export declare enum DependencyType { PRODUCTION = "production", DEVELOPMENT = "development", PEER = "peer", OPTIONAL = "optional" } export declare enum AnalysisType { SECURITY = "security", SIZE = "size", OUTDATED = "outdated", UNUSED = "unused", DUPLICATES = "duplicates", FULL = "full" } export declare enum OutputFormat { TABLE = "table", JSON = "json", TREE = "tree", SUMMARY = "summary" } //# sourceMappingURL=types.d.ts.map