/**
 * Autonomous Exploration Engine
 * Self-guided codebase exploration and task execution
 */
import { WorkingMemory, ProjectStructure, Insight, NavigationStep, Decision, ExplorationResult, AutonomousTask, InsightType, DecisionOption, NavigationPlan } from './types.js';
export declare class ExplorationEngine {
    private workingMemory;
    private contextManager;
    private strategies;
    private _currentTask;
    constructor();
    /**
     * Execute an autonomous task
     */
    executeTask(task: AutonomousTask): Promise<ExplorationResult>;
    /**
     * Explore a codebase autonomously
     */
    exploreCodebase(rootPath: string): Promise<ProjectStructure>;
    /**
     * Navigate to a specific target with reasoning
     */
    navigateTo(target: string, reason: string): Promise<NavigationStep>;
    /**
     * Make an autonomous decision
     */
    makeDecision(question: string, options: DecisionOption[]): Promise<Decision>;
    /**
     * Plan navigation for a specific goal
     */
    planNavigation(goal: string): Promise<NavigationPlan>;
    /**
     * Generate insights from exploration
     */
    generateInsight(type: InsightType, description: string, filePath?: string): Promise<Insight>;
    private initializeStrategies;
    private initializeWorkingMemory;
    private buildProjectStructure;
    private buildDirectoryTree;
    private shouldIgnore;
    private detectLanguage;
    private calculateStructureStats;
    private detectProjectPatterns;
    private fileExists;
    private identifyEntryPoints;
    private findFileInStructure;
    private exploreKeyFiles;
    private analyzeFile;
    private calculateComplexity;
    private analyzePatterns;
    private exploreDirectory;
    private searchPattern;
    private resolveImport;
    private extractFindings;
    private suggestNextSteps;
    private extractGoals;
    private extractConstraints;
    private selectStrategy;
    private executePhase;
    private executeAction;
    private updateProgress;
    private generateSummary;
    private extractKeyFindings;
    private generateRecommendations;
    private determineAction;
    private assessImpact;
    private selectBestOption;
    private generateRationale;
    private calculateRelevance;
    private identifyTargets;
    private generateId;
    /**
     * Get current working memory state
     */
    getWorkingMemory(): WorkingMemory;
    /**
     * Get current task progress
     */
    getProgress(): {
        phase: string;
        progress: number;
        insights: number;
    };
    /**
     * Request user input for a decision
     */
    requestUserInput(question: string, options: string[]): Promise<string>;
}
//# sourceMappingURL=exploration-engine.d.ts.map