/**
 * Streaming Optimization for Large Prompts
 * Processes prompts in chunks for better performance
 */
import type { OptimizationResult } from './types';
import { PromptOptimizationOptions } from './types';
export interface StreamingOptions extends PromptOptimizationOptions {
    /** Chunk size in characters (default: 10000) */
    chunkSize?: number;
    /** Overlap between chunks in characters (default: 200) */
    overlap?: number;
    /** Callback for each optimized chunk */
    onChunk?: (chunk: OptimizationResult) => void;
}
/**
 * Stream optimization for large prompts
 */
export declare function streamOptimize(prompt: string, options?: StreamingOptions): AsyncGenerator<OptimizationResult, void, unknown>;
/**
 * Optimize large prompt with streaming (returns combined result)
 */
export declare function optimizeLargePrompt(prompt: string, options?: StreamingOptions): Promise<OptimizationResult>;
/**
 * Stream optimization with progress callback
 */
export declare function optimizeWithProgress(prompt: string, options?: StreamingOptions & {
    onProgress?: (progress: {
        current: number;
        total: number;
        percentage: number;
    }) => void;
}): Promise<OptimizationResult>;
