import { ContextualSummary, GeneratedPrompt, FileContextType, ContextualSummariesConfig, DependencyContext } from "../types";
import { PromptPersonalization, ContextualMetadata, PromptConstraints, SpecializationOptions, SpecializedUseCase } from "../types/summaryBuilder.types";
import { FunctionContext } from "../types/functionExtractor.types";
import { BusinessLogicDefinition } from "../types/businessLogicExtractor.types";
import { ComponentContext } from "../types/componentExtractor.types";
import { SemanticAnalysisResult } from "../types/semanticAnalysis.types";
import { TypeContext } from "../types/typeExtractor.types";
export declare class SummaryBuilder {
    private config;
    private templates;
    private optimization;
    private personalization;
    private adaptiveFeatures;
    constructor(config: ContextualSummariesConfig);
    /**
     * Builds a complete contextual summary with optimized prompt
     */
    buildContextualSummary(filePath: string, fileType: FileContextType, functionContext: FunctionContext, componentContext: ComponentContext, typeContext: TypeContext, businessLogic: BusinessLogicDefinition, dependencyContext: DependencyContext, semanticAnalysis: SemanticAnalysisResult, metadata?: ContextualMetadata): ContextualSummary;
    /**
     * Generates adaptive prompts based on context and user needs
     */
    generateAdaptivePrompt(contextualSummary: ContextualSummary, personalization: PromptPersonalization, constraints?: PromptConstraints): GeneratedPrompt;
    /**
     * Creates specialized prompts for different use cases
     */
    createSpecializedPrompt(contextualSummary: ContextualSummary, useCase: SpecializedUseCase, options?: SpecializationOptions): GeneratedPrompt;
    /**
     * Selects the most appropriate template for the file type and analysis
     */
    private selectTemplate;
    /**
     * Builds the prompt structure based on template and analysis
     */
    private buildPromptStructure;
    /**
     * Generates prompt contexts for different sections
     */
    private generatePromptContexts;
    /**
     * Builds context for a specific section
     */
    private buildSectionContext;
    /**
     * Builds overview content
     */
    private buildOverviewContent;
    /**
     * Builds structure content
     */
    private buildStructureContent;
    /**
     * Builds dependencies content
     */
    private buildDependenciesContent;
    /**
     * Builds exports content
     */
    private buildExportsContent;
    /**
     * Builds business logic content
     */
    private buildBusinessLogicContent;
    /**
     * Builds technical details content
     */
    private buildTechnicalDetailsContent;
    /**
     * Builds usage examples content
     */
    private buildUsageExamplesContent;
    /**
     * Builds relationships content
     */
    private buildRelationshipsContent;
    /**
     * Optimizes the prompt for token efficiency
     */
    private optimizePrompt;
    /**
     * Generates the final summary text
     */
    private generateFinalSummary;
    /**
     * Calculates token estimate for the prompt
     */
    private calculateTokenEstimate;
    private initializeTemplates;
    private getDefaultTemplate;
    private getDefaultOptimization;
    private getDefaultPersonalization;
    private getDefaultAdaptiveFeatures;
    private shouldIncludeSection;
    private hasRelevantContent;
    private formatSectionContent;
    private applySectionTokenLimit;
    private getPriorityScore;
    private buildHeader;
    private buildKeyPoints;
    private buildDependenciesSection;
    private buildExportsSection;
    private buildFooter;
    private generateNextSteps;
    private applyAggressiveCompression;
    private applyModerateCompression;
    private compressContexts;
    private compressText;
    private removeRedundantContent;
    private getContentKey;
    private extractFileName;
    private extractKeyFeatures;
    private buildExportContext;
    private buildTechnicalContext;
    private extractUsagePatterns;
    private adaptPromptStructure;
    private adaptPromptContexts;
    private generateAdaptiveSummary;
    private getSpecializedTemplate;
    private buildSpecializedStructure;
    private buildSpecializedContexts;
    private generateSpecializedSummary;
    private applyTokenConstraints;
    private adaptContentForAudience;
}
