import { ExecutionContext, DSLStep } from '../core/context.js';
/**
 * Executes DSL-based flows and validations.
 */
export declare class DSLExecutor {
    private static DEFAULT_TIMEOUT;
    private static attachedPages;
    private static aiConfig;
    static setGlobalTimeout(ms: number): void;
    static setAIConfig(config: {
        provider: 'openai' | 'gemini';
        apiKey: string;
    }): void;
    /**
     * Attaches a diagnostic listener to capture interesting XHR/Fetch traffic.
     */
    private static attachNetworkListener;
    /**
     * Attaches a listener to capture frontend console logs and errors.
     */
    private static attachConsoleListener;
    /**
     * Executes a series of DSL steps.
     */
    static executeFlow(context: ExecutionContext, steps: DSLStep[], onStep?: (step: DSLStep, index: number) => Promise<void>): Promise<void>;
    private static executeStep;
    /**
     * Resolves {{variable}} patterns from context.store
     */
    /**
     * Normalizes keys to lower_snake_case
     */
    private static sanitizeKey;
    /**
     * Strips special characters from the beginning and end of values
     */
    private static sanitize;
    /**
     * Performs validation based on expected result.
     */
    static validate(context: ExecutionContext): Promise<void>;
    /**
     * Executes a single DSL action.
     */
    static executeAction(context: ExecutionContext, step: any, value?: string): Promise<void>;
    private static applyStealth;
    /**
     * Processes the result of a JS evaluation.
     */
    private static handleEvalResult;
}
