import { SubAgent } from "../interfaces/SubAgent";
export interface PromptConstructionContext {
    prd?: string;
    types?: string;
    branding?: string;
    componentList?: string;
    componentName: string;
    componentGroup: string;
    projectPath: string;
    stackConfig?: any;
}
export interface ConstructedPrompt {
    systemPrompt: string;
    userPrompt: string;
    contextSummary: string;
    specificRequirements: string[];
}
/**
 * PromptConstructorAgent
 *
 * Analyzes all context files and constructs highly specific prompts
 * for component generation based on project requirements, types, and branding.
 *
 * Features:
 * - Context file analysis and extraction
 * - Component-specific requirement generation
 * - Intelligent prompt construction
 * - Domain knowledge integration
 */
export declare class PromptConstructorAgent implements SubAgent<PromptConstructionContext, ConstructedPrompt> {
    name: string;
    description: string;
    personality: string;
    llmProvider: string;
    expertise: string[];
    run(context: PromptConstructionContext): Promise<ConstructedPrompt>;
    private loadDesignContext;
    private analyzeContextFiles;
    private enhancePromptWithAI;
    private extractDomain;
    private extractBusinessLogic;
    private extractUserStories;
    private extractTechnicalRequirements;
    private extractDataStructures;
    private extractBrandingGuidelines;
    private extractUIPatterns;
    private extractComponentRequirements;
    private constructPrompt;
    private detectExternalDependencies;
    private extractDependenciesFromText;
    private extractUserInteractions;
    private extractUserActions;
    private extractUserFeedback;
    private extractUserJourneyFlows;
    private extractUserErrorScenarios;
    private extractUserExperienceGuidelines;
    private extractUserStates;
    private extractUserDecisionPoints;
    private extractUserErrorRecovery;
    private extractUserInterfacePatterns;
    private extractUserAccessibilityNeeds;
    private extractUserPerformanceExpectations;
    private formatDesignSystemForPrompt;
    /**
     * Filter enriched intents to find those relevant to the current component
     */
    private filterRelevantIntents;
    /**
     * Format an enriched intent as requirement strings
     */
    private formatIntentAsRequirements;
}
//# sourceMappingURL=PromptConstructorAgent.d.ts.map