/**
 * Safety wrapper for effect execution with fallback mechanisms
 * Ensures effects never break core CLI functionality
 */
import { Effect, EffectResult, SafetyConfig, PerformanceMetrics } from "./types.js";
/**
 * Safe executor for effects with comprehensive error handling
 */
export declare class SafeEffectExecutor {
    private config;
    private terminalCapabilities?;
    private metrics;
    constructor(config?: Partial<SafetyConfig>);
    /**
     * Execute an effect with safety mechanisms
     */
    execute(effect: Effect, text: string, effectConfig?: any): Promise<EffectResult>;
    /**
     * Execute the effect and collect frames
     */
    private executeEffect;
    /**
     * Execute fallback rendering
     */
    private executeFallback;
    /**
     * Determine if we should use fallback based on environment
     */
    private shouldUseFallback;
    /**
     * Update performance metrics
     */
    private updateMetrics;
    /**
     * Get current performance metrics
     */
    getMetrics(): PerformanceMetrics;
    /**
     * Reset performance metrics
     */
    resetMetrics(): void;
    /**
     * Create a wrapped effect executor for easy usage
     */
    static wrap(effect: Effect, config?: Partial<SafetyConfig>): (text: string, effectConfig?: any) => Promise<EffectResult>;
}
/**
 * Global effect executor instance
 */
export declare const defaultExecutor: SafeEffectExecutor;
/**
 * Execute an effect safely with default configuration
 */
export declare function executeSafely(effect: Effect, text: string, effectConfig?: any): Promise<EffectResult>;
//# sourceMappingURL=safe-executor.d.ts.map