import { type IEvaluator, type IExecutor, type IReviewStrategy, type IStepper, type IStepperInput, type IStepperInterpreter, type IStepperPlanner, type IStepperResult } from '@mcp-abap-adt/llm-agent'; export interface StepperDeps { name: string; planner: IStepperPlanner; interpreter: IStepperInterpreter; executor: IExecutor; childSteppers: ReadonlyMap; reviewer?: IReviewStrategy; /** Depth-membership predicate (NOT a Set) so config `atDepths: 'all'` * works — see Task 14. A plain `new Set([0,1])` also satisfies this * shape, so tests can pass a Set directly. */ reviewerAtDepths: { has(depth: number): boolean; }; /** 18.1 Evaluator (optional): judges the INPUT (sub-)prompt completeness WITH * the RAG context before planning. Absent → behaves as 18.0 (plan → interpret). */ evaluator?: IEvaluator; /** Depths at which the Evaluator runs (same predicate shape as reviewer). */ evaluatorAtDepths?: { has(depth: number): boolean; }; depth: number; maxParallelSteps: number; mintStepperId: () => string; parentPath?: string[]; /** * Names + descriptions of the child worker Steppers this Stepper may delegate * to (the keys of `childSteppers`, enriched with descriptions). Passed to the * planner so it can emit `agent`-bearing nodes that the interpreter recurses * into. Empty/omitted → planner emits only executor leaves. */ childAgentCatalog?: ReadonlyArray<{ name: string; description?: string; }>; } export declare class Stepper implements IStepper { private readonly deps; readonly name: string; constructor(deps: StepperDeps); run(input: IStepperInput): Promise; } //# sourceMappingURL=stepper.d.ts.map