export interface ContextGraphInput {
    projectPath: string;
    specId?: string;
    changedFiles?: string[];
    tokenBudget: number;
}
export interface ContextImpactFile {
    path: string;
    reason: string;
    confidence: number;
}
export interface ContextImpactSymbol {
    name: string;
    path: string;
    line?: number;
    confidence: number;
}
export interface ContextImpactEdge {
    from: string;
    to: string;
    type: 'import' | 'call' | 'test' | 'spec';
}
export interface ContextImpactMap {
    files: ContextImpactFile[];
    symbols: ContextImpactSymbol[];
    edges: ContextImpactEdge[];
    truncated: boolean;
}
export interface ContextGraphProvider {
    buildImpactMap(input: ContextGraphInput): Promise<ContextImpactMap>;
}
export interface SafeCompressionResult {
    ok: boolean;
    originalBytes: number;
    compressedBytes: number;
    refusedReason?: string;
    preservedChecks: string[];
    content?: string;
}
export interface SafeContextCompressionInput {
    content: string;
    sourcePath?: string;
    maxBytes?: number;
    flow?: string;
}
export interface ContextEvalCase {
    id: string;
    baselineTokens: number;
    specGuidedTokens: number;
    graphGuidedTokens: number;
    leanTokens: number;
    graphLeanTokens: number;
}
export type ContextEvalMode = 'baseline' | 'spec-guided' | 'graph-guided' | 'lean' | 'graph+lean';
export interface ContextEvalResult {
    id: string;
    bestMode: ContextEvalMode;
    savingsVsBaselinePct: number;
    modes: Record<ContextEvalMode, number>;
}
//# sourceMappingURL=context-intelligence.d.ts.map