/** * Pipeline runner: deterministic browser automation DSL execution. */ import type { BrowserActionContext, BrowserActionRegistry, BrowserActionResult } from '../actions/types.js'; import { type PipelineDocument } from './schema.js'; export interface ValidateResult { ok: boolean; document?: PipelineDocument; errors: { path: string; message: string; }[]; } export interface RunBrowserPipelineOptions { dryRun?: boolean; onStep?: (event: BrowserRecipeStepEvent) => void; } export interface BrowserRecipeStepEvent { index: number; scope: string; action: string; status: 'started' | 'completed' | 'failed'; elapsedMs?: number; error?: string; } export declare function validateBrowserPipeline(yamlSource: string, registry?: BrowserActionRegistry): ValidateResult; export declare function runBrowserPipeline(yamlSource: string, argOverrides: Record, ctx: BrowserActionContext, registry: BrowserActionRegistry, options?: RunBrowserPipelineOptions): Promise;