UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

68 lines 2.05 kB
/** * Dependency Resolver * @description Resolves dependencies between orchestration steps and creates execution plans * @author Optimizely MCP Server * @version 1.0.0 */ import { OrchestrationStep, OrchestrationState, ExecutionPlan } from '../types/index.js'; export declare class DependencyResolver { private logger; /** * Build execution plan with proper ordering and batching */ buildExecutionPlan(steps: OrchestrationStep[], state: OrchestrationState): Promise<ExecutionPlan>; /** * Build dependency graph from steps */ private buildDependencyGraph; /** * Check for circular dependencies using DFS */ private hasCircularDependencies; /** * Perform topological sort using Kahn's algorithm */ private topologicalSort; /** * Group steps into batches that can run in parallel */ private groupIntoBatches; /** * Estimate execution time for batches */ private estimateExecutionTime; /** * Estimate duration for a batch */ private estimateBatchDuration; /** * Resolve entity reference during execution */ resolveEntityReference(reference: string, state: OrchestrationState, entityRouter?: any): Promise<any>; /** * Find entity by pattern */ private findEntity; /** * Evaluate JSONPath expression */ private evaluateJSONPath; /** * Convert steps map to object for JSONPath */ private convertStepsToObject; /** * Execute a function on a resolved value */ private executeFunction; /** * Resolve all references in an object */ resolveReferences(obj: any, state: OrchestrationState, entityRouter?: any): Promise<any>; /** * Resolve ONLY JSONPath variables like ${step.field} - don't touch data structures * This is the MINIMAL transformation needed for orchestration */ resolveJSONPathOnly(obj: any, state: OrchestrationState): Promise<any>; } //# sourceMappingURL=DependencyResolver.d.ts.map