import { Fn } from '@seleniumhq/side-commons'; import { CommandShape } from '@seleniumhq/side-model'; import { WebDriverExecutor } from '..'; import { CommandNodeOptions } from '../types'; import Variables from '../variables'; import { WebDriverExecutorCondEvalResult } from '../webdriver'; export interface CommandExecutorOptions { executorOverride?: Fn; } export interface CommandExecutionResult { next?: CommandNode; skipped?: boolean; value?: any; } export declare const getCommandDisplayString: ({ comment, command, target, value, }: CommandShape) => string; export declare class CommandNode { constructor(command: CommandShape, { emitControlFlowChange }?: CommandNodeOptions); command: CommandShape; emitControlFlowChange: Fn; next?: CommandNode; transientError?: string; left?: CommandNode; right?: CommandNode; index: number; level: number; timesVisited: number; isControlFlow(): boolean; isTerminal(): boolean; shouldSkip(): boolean; execute(commandExecutor: WebDriverExecutor, args?: CommandExecutorOptions): Promise<{ next: CommandNode | undefined; skipped: boolean | undefined; }>; _executeCommand(commandExecutor: WebDriverExecutor, { executorOverride }?: CommandExecutorOptions): Promise; pauseTimeout(timeout?: number): Promise; retryCommand(execute: () => Promise, timeout: number): Promise; _executionResult(result?: CommandExecutionResult): { next: CommandNode | undefined; skipped: boolean | undefined; }; handleTransientError(e: unknown, timeout: number): void; evaluateForEach(variables: Variables): boolean | string; _evaluate(commandExecutor: WebDriverExecutor): { next: CommandNode | undefined; } | Promise<{ next: CommandNode | undefined; }>; _evaluationResult(result: WebDriverExecutorCondEvalResult): { next: CommandNode | undefined; }; _incrementTimesVisited(): void; _isRetryLimit(): boolean; } export declare const CommandType: { readonly LOOP: "loop"; readonly CONDITIONAL: "conditional"; }; //# sourceMappingURL=command-node.d.ts.map