import type { EnvVarDeclaration } from "@stigmer/protos/ai/stigmer/agentic/environment/v1/spec_pb";
import type { WorkflowInstance } from "@stigmer/protos/ai/stigmer/agentic/workflowinstance/v1/api_pb";
import type { RunWorkflowFieldErrors } from "./useRunWorkflowFlow.js";
/** Props for {@link WorkflowRunForm}. */
export interface WorkflowRunFormProps {
    /** Current trigger message value. */
    readonly triggerMessage: string;
    /** Called when the trigger message changes. */
    readonly onTriggerMessageChange: (value: string) => void;
    /** Declared environment variables from the workflow spec. */
    readonly envDeclarations: Record<string, EnvVarDeclaration>;
    /** Current runtime env var overrides (keyed by variable name). */
    readonly runtimeEnv: Record<string, string>;
    /** Called when a single env var value changes. */
    readonly onEnvVarChange: (key: string, value: string) => void;
    /** Available workflow instances for the selector. */
    readonly instances: readonly WorkflowInstance[];
    /** Currently selected instance ID, or `null` for server-resolved default. */
    readonly selectedInstanceId: string | null;
    /** Called when the selected instance changes. */
    readonly onInstanceChange: (id: string | null) => void;
    /**
     * The platform-managed default instance ID (from workflow.status.defaultInstanceId).
     * When provided, the picker shows whenever user-created instances exist (>= 1),
     * and labels the default option clearly.
     */
    readonly defaultInstanceId?: string;
    /**
     * Set of env var keys already provided by the selected instance's
     * bound environments. Fields for these keys are shown as optional
     * overrides rather than required inputs.
     */
    readonly instanceEnvKeys?: Set<string>;
    /**
     * Whether to show the trigger message field.
     * When `false`, a subtle "Add trigger input" toggle is rendered instead.
     */
    readonly showTriggerMessage: boolean;
    /** Called when the user toggles trigger message visibility. */
    readonly onShowTriggerMessageChange: (show: boolean) => void;
    /** Field-level validation errors keyed by field name. */
    readonly errors: RunWorkflowFieldErrors;
    /** When `true`, all fields are disabled (during submission). */
    readonly disabled?: boolean;
    /** Additional CSS classes for the root container. */
    readonly className?: string;
}
/**
 * Form fields for running a workflow execution.
 *
 * Renders auto-generated environment variable fields from the workflow's
 * `spec.env` declarations, an instance selector (hidden when 0-1 instances
 * exist), and a conditionally-visible trigger message textarea.
 *
 * Field ordering prioritizes required inputs (env vars) over optional
 * contextual fields (trigger message), following progressive disclosure.
 *
 * This component is presentational — it does not manage state or
 * submit. Pair with {@link useRunWorkflowFlow} for the full
 * behavior, or wire the props manually for custom integrations.
 *
 * All visuals flow through `--stgm-*` design tokens. Zero Console
 * dependencies — safe for platform builder embedding.
 *
 * @example
 * ```tsx
 * const flow = useRunWorkflowFlow({ ... });
 *
 * <WorkflowRunForm
 *   triggerMessage={flow.triggerMessage}
 *   onTriggerMessageChange={flow.setTriggerMessage}
 *   envDeclarations={flow.envDeclarations}
 *   runtimeEnv={flow.runtimeEnv}
 *   onEnvVarChange={flow.setEnvVar}
 *   instances={instances}
 *   selectedInstanceId={flow.selectedInstanceId}
 *   onInstanceChange={flow.setSelectedInstanceId}
 *   showTriggerMessage={flow.showTriggerMessage}
 *   onShowTriggerMessageChange={flow.setShowTriggerMessage}
 *   errors={flow.fieldErrors}
 *   disabled={flow.isSubmitting}
 * />
 * ```
 */
export declare function WorkflowRunForm({ triggerMessage, onTriggerMessageChange, envDeclarations, runtimeEnv, onEnvVarChange, instances, selectedInstanceId, onInstanceChange, defaultInstanceId, instanceEnvKeys, showTriggerMessage, onShowTriggerMessageChange, errors, disabled, className, }: WorkflowRunFormProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=WorkflowRunForm.d.ts.map