export interface OptimizationOptions {
    maxTokens?: number;
    preserveContext?: boolean;
    removeRedundancy?: boolean;
    extractKeywords?: boolean;
    useTemplates?: boolean;
}
export interface OptimizationResult {
    originalPrompt: string;
    optimizedPrompt: string;
    reducedTokens: number;
    reductionPercentage: number;
    optimizationMethods: string[];
}
export declare class PromptOptimizer {
    private readonly DEFAULT_MAX_TOKENS;
    private readonly KEYWORD_EXTRACTION_PATTERNS;
    private readonly SEARCH_TEMPLATES;
    optimizeForWebSearch(prompt: string, options?: OptimizationOptions): Promise<OptimizationResult>;
    private applySearchTemplate;
    private extractKeywords;
    private removeRedundancy;
    private structuredShortening;
    private preserveContextShortening;
    private calculateSentenceImportance;
    private extractMainTopic;
    private extractYear;
    private extractAdditionalKeywords;
    private estimateTokens;
}
//# sourceMappingURL=PromptOptimizer.d.ts.map