/**
 * Phase Detector - Auto-detect current workflow phase
 *
 * Analyzes user prompts, commands, file states, and context to determine
 * the current phase of the SpecWeave development workflow.
 *
 * Detection Algorithm:
 * - Keyword Analysis (40% weight): Match keywords in user prompt
 * - Command Analysis (30% weight): Analyze recent command history
 * - Context Analysis (20% weight): Check file states and increment status
 * - Hint Analysis (10% weight): Detect explicit user hints
 *
 * Part of increment 0039: Ultra-Smart Next Command (US-001)
 */
import { PhaseDetectionResult, DetectionContext, PhaseDetectorConfig } from './types.js';
/**
 * PhaseDetector - Detect current workflow phase
 */
export declare class PhaseDetector {
    private config;
    private fileStateCache;
    private readonly DEFAULT_CACHE_TTL;
    private detectionCount;
    private cacheHits;
    private cacheMisses;
    private totalDetectionTime;
    constructor(config?: PhaseDetectorConfig);
    /**
     * Get performance statistics
     */
    getPerformanceStats(): {
        detectionCount: number;
        cacheHits: number;
        cacheMisses: number;
        cacheHitRate: number;
        averageDetectionTime: number;
    };
    /**
     * Reset performance statistics
     */
    resetPerformanceStats(): void;
    /**
     * Clear the file state cache
     */
    clearCache(): void;
    /**
     * Get cached file states if available and not expired
     */
    private getCachedFileStates;
    /**
     * Cache file states for future use
     */
    private cacheFileStates;
    /**
     * Detect the current workflow phase from context
     */
    detect(context: DetectionContext): Promise<PhaseDetectionResult>;
    /**
     * Analyze keywords in user prompt
     */
    private analyzeKeywords;
    /**
     * Analyze recent command history
     */
    private analyzeCommands;
    /**
     * Analyze explicit user hint
     */
    private analyzeHint;
    /**
     * Analyze context (file states and increment status)
     */
    private analyzeContext;
    /**
     * Get file states for key increment files (with caching)
     */
    private getFileStates;
    /**
     * Analyze file states to determine likely phase
     */
    private analyzeFileStates;
    /**
     * Analyze increment status to determine likely phase
     */
    private analyzeIncrementStatus;
    /**
     * Calculate aggregated phase scores from evidence
     */
    private calculatePhaseScores;
    /**
     * Group evidence by the phase it suggests
     */
    private groupEvidenceByPhase;
    /**
     * Infer workflow phase from evidence source
     */
    private inferPhaseFromSource;
    /**
     * Generate command suggestion based on detected phase
     */
    private generateSuggestion;
}
//# sourceMappingURL=phase-detector.d.ts.map