/** * Component Responsibility Detection Utilities * Detects and categorizes responsibilities within React components */ import type { ASTNode } from '../languages/types.js'; import { ComponentResponsibility, ResponsibilityType, ComponentMetadata } from '../types.js'; /** * Detects and categorizes responsibilities within a React component */ export declare function detectComponentResponsibilities(component: ASTNode, metadata?: ComponentMetadata): ComponentResponsibility[]; /** * Identifies data fetching patterns in code */ export declare function containsDataFetching(node: ASTNode): boolean; /** * Identifies form handling patterns */ export declare function containsFormHandling(node: ASTNode): boolean; /** * Identifies business logic patterns */ export declare function containsBusinessLogic(node: ASTNode): boolean; /** * Helper to determine if responsibilities are related */ export declare function areResponsibilitiesRelated(resp1: ResponsibilityType, resp2: ResponsibilityType): boolean; /** * Analyzes hook usage to identify responsibilities */ export declare function analyzeHookUsage(component: ASTNode, metadata?: ComponentMetadata): ComponentResponsibility[]; /** * Analyzes useEffect hooks for side effects and data fetching */ export declare function analyzeEffects(component: ASTNode): ComponentResponsibility[]; /** * Analyzes event handlers in a component */ export declare function analyzeEventHandlers(component: ASTNode): ComponentResponsibility[]; /** * Analyzes rendering logic and JSX complexity */ export declare function analyzeRenderingLogic(component: ASTNode): ComponentResponsibility[]; //# sourceMappingURL=componentResponsibility.d.ts.map