import type { UseWorkflowExecutionGraphReturn } from "./useWorkflowExecutionGraph.js";
import type { DerivedTaskState } from "../internal/store/workflow-execution-event-store.js";
import type { WorkflowExecution } from "@stigmer/protos/ai/stigmer/agentic/workflowexecution/v1/api_pb";
/** Props for {@link WorkflowExecutionGraph}. */
export interface WorkflowExecutionGraphProps {
    /** ID of the workflow execution to visualize. */
    readonly executionId: string;
    /** Callback when a task node is selected or deselected. */
    readonly onTaskSelect?: (taskName: string | null) => void;
    /** When true, the viewport auto-pans to follow the currently running node. */
    readonly followExecution?: boolean;
    /**
     * Pre-fetched execution from the parent. When provided, the graph
     * skips its own execution fetch — eliminating duplicate API calls.
     * Pass `undefined` (or omit) for standalone usage.
     */
    readonly execution?: WorkflowExecution | null;
    /**
     * Externally-derived task states from a shared event store. When
     * provided, the graph skips its own event stream subscription.
     * Pass `undefined` (or omit) for standalone usage.
     */
    readonly taskStates?: ReadonlyMap<string, DerivedTaskState>;
    /**
     * Callback invoked when the graph auto-selects a failed task on
     * terminal executions. Wire this to the parent's selected-task
     * state to keep sibling components (like the inspector) in sync.
     */
    readonly onAutoSelectTask?: (taskName: string) => void;
    /**
     * Pixel width of a panel that **overlays** (absolutely positioned over)
     * the graph viewport, occluding the right side. The follow-execution
     * camera offsets its center to keep the active node visually centered
     * in the unoccluded area. Defaults to 0.
     *
     * When the panel is a **flex sibling** (e.g., inside `ResizableSplit`),
     * the ReactFlow container already has the correct reduced width and
     * `setCenter`/`fitView` operate within those bounds — set this to 0
     * (the default) to avoid double-compensating the viewport offset.
     */
    readonly panelOffsetPx?: number;
    /**
     * Whether task nodes can be dragged to rearrange the layout.
     * Useful for presentations and demos where the auto-layout is too
     * dense. Drag positions are ephemeral (in-memory only) and reset
     * when the underlying graph structure changes.
     * @default false
     */
    readonly nodesDraggable?: boolean;
    /** Additional CSS class names for the root container. */
    readonly className?: string;
}
/**
 * Read-only execution graph canvas for workflow executions.
 *
 * Reuses the same `WorkflowNode` / `NodeShell` node rendering system from
 * the visual editor, wrapped in execution mode context to show live status
 * overlays instead of editing affordances.
 *
 * Designed for embedding in both the Stigmer Console and third-party
 * dashboards — no routing, auth, or app-shell dependencies (DD-004).
 *
 * @example
 * ```tsx
 * <WorkflowExecutionGraph
 *   executionId="wex_abc123"
 *   onTaskSelect={(name) => setInspectedTask(name)}
 * />
 * ```
 */
export declare const WorkflowExecutionGraph: import("react").NamedExoticComponent<WorkflowExecutionGraphProps>;
export type { UseWorkflowExecutionGraphReturn, DerivedTaskState };
//# sourceMappingURL=WorkflowExecutionGraph.d.ts.map