import { Step, StepExecutionContext, JsonRpcHandler } from '../types'; import { StepExecutor, StepExecutionResult } from './types'; import { Logger } from '../util/logger'; import { RequestStep } from './types'; import { PolicyResolver } from '../util/policy-resolver'; export declare class RequestStepExecutor implements StepExecutor { private jsonRpcHandler; private requestId; private logger; private policyResolver; constructor(jsonRpcHandler: JsonRpcHandler, logger: Logger, policyResolver: PolicyResolver); private getNextRequestId; canExecute(step: Step): step is RequestStep; /** * Get the effective timeout value for a step * @param step The request step to get timeout for * @param context The execution context with flow-level timeouts * @returns Timeout in milliseconds or undefined if no timeout is set */ private getStepTimeout; /** * Get the effective retry policy for a step * @param step The request step to get retry policy for * @returns RetryPolicy or null if retries are disabled */ private getStepRetryPolicy; execute(step: Step, _context: StepExecutionContext, extraContext?: Record, signal?: AbortSignal): Promise; }