/**
 * Impact analysis module - dependency-aware prediction of downstream effects.
 *
 * Builds on the existing dependency graph infrastructure in phases/deps.ts
 * and orchestration/analyze.ts to provide:
 *   - Task impact assessment (direct + transitive dependents)
 *   - Change impact prediction (cancel, block, complete, reprioritize)
 *   - Blast radius calculation (scope quantification)
 *
 * @module intelligence
 */
import type { DataAccessor } from '../store/data-accessor.js';
import type { BlastRadius, ChangeImpact, ChangeType, ImpactAssessment } from './types.js';
/**
 * Analyze the full downstream impact of a task.
 *
 * Computes direct and transitive dependents, affected lifecycle pipelines,
 * blocked work counts, critical path membership, and blast radius.
 *
 * @param taskId - The task to analyze
 * @param accessor - DataAccessor instance (or auto-created from cwd)
 * @param cwd - Working directory (used if accessor is not provided)
 * @returns Full impact assessment
 */
export declare function analyzeTaskImpact(taskId: string, accessor?: DataAccessor, cwd?: string): Promise<ImpactAssessment>;
/**
 * Analyze the downstream effects of a specific change to a task.
 *
 * Predicts what happens when a task is cancelled, blocked, completed,
 * or reprioritized, including cascading status changes.
 *
 * @param taskId - The task being changed
 * @param changeType - The type of change
 * @param accessor - DataAccessor instance (or auto-created from cwd)
 * @param cwd - Working directory (used if accessor is not provided)
 * @returns Predicted change impact
 */
export declare function analyzeChangeImpact(taskId: string, changeType: ChangeType, accessor?: DataAccessor, cwd?: string): Promise<ChangeImpact>;
/**
 * Calculate the blast radius for a task.
 *
 * Quantifies how many tasks, epics, and what percentage of the project
 * would be impacted by changes to this task.
 *
 * @param taskId - The task to analyze
 * @param accessor - DataAccessor instance (or auto-created from cwd)
 * @param cwd - Working directory (used if accessor is not provided)
 * @returns Blast radius metrics
 */
export declare function calculateBlastRadius(taskId: string, accessor?: DataAccessor, cwd?: string): Promise<BlastRadius>;
//# sourceMappingURL=impact.d.ts.map