/** * Composable agent pipeline. Steps run in order; one may early-terminate by * returning `stop: true` (set by `PolicyGate` on denial). The final step * (typically `AuditEmitter`) always runs even if an earlier step stopped — * audit decisions are recorded whether or not we replied. * * Step composition: * pipeline.replaceStep('intent', myCustom) * pipeline.before('llm', extraGuard) * pipeline.after('llm', metrics) * * Each step has a unique `name`. Named lookups throw if missing/duplicate. */ import { type PipelineContext, type PipelineDecision, type PipelineStep } from './types.js'; export declare class AgentPipeline { steps: PipelineStep[]; constructor(steps: PipelineStep[]); run(ctx: C): Promise; replaceStep(name: string, step: PipelineStep): this; before(name: string, step: PipelineStep): this; after(name: string, step: PipelineStep): this; private indexOf; private checkNames; } //# sourceMappingURL=pipeline.d.ts.map