import { Flow, Step, DependencyGraph } from '../types'; import { Logger } from '../util/logger'; import { SafeExpressionEvaluator } from '../expression-evaluator/safe-evaluator'; export declare class DependencyResolver { private flow; private expressionEvaluator; private logger; private internalVars; private loopVars; constructor(flow: Flow, expressionEvaluator: SafeExpressionEvaluator, logger: Logger); /** * Get the execution order for all steps in the flow */ getExecutionOrder(): Step[]; /** * Get all dependencies for a given step */ getDependencies(stepName: string): string[]; /** * Get all steps that depend on a given step */ getDependents(stepName: string): string[]; /** * Build a dependency graph for all steps in the flow */ private buildDependencyGraph; /** * Find all dependencies for a step */ private findStepDependencies; /** * Extract step references from an expression */ private extractReferences; /** * Perform a topological sort on the dependency graph */ private topologicalSort; /** * Get a UI-friendly representation of the dependency graph */ getDependencyGraph(): DependencyGraph; }