import { type DirectoryKnowledge } from "./knowledge-map.js"; import type { RiskLevel } from "./risk-classifiers.js"; export interface OffboardingOptions { author: string; } export interface DirectoryImpact { directory: string; beforeBusFactor: number; afterBusFactor: number; beforeContributors: number; afterContributors: number; ownershipPct: number; riskLevel: RiskLevel; } export interface OffboardingResult { targetAuthor: string; matchedEmails: string[]; totalDirectories: number; impactedDirectories: number; newSinglePointOfFailure: number; directories: DirectoryImpact[]; overallRisk: RiskLevel; } /** * Simulate the impact of a contributor leaving the project. * * Takes a knowledge map and removes the specified author's contributions, * then recomputes bus factor for each directory to show before/after impact. */ export declare function simulateOffboarding(knowledgeMap: DirectoryKnowledge[], options: OffboardingOptions): OffboardingResult;