import type { WorkflowsConfig } from '@n8n/config'; import type { User } from '@n8n/db'; import z from 'zod'; import type { ToolDefinition } from '../mcp.types'; import { type FoundWorkflow } from './workflow-validation.utils'; import type { McpService } from '../../../modules/mcp/mcp.service'; import type { Telemetry } from '../../../telemetry'; import type { WorkflowRunner } from '../../../workflow-runner'; import type { WorkflowFinderService } from '../../../workflows/workflow-finder.service'; import type { WorkflowPublishedDataService } from '../../../workflows/workflow-published-data.service'; export { type FoundWorkflow }; declare const inputSchema: z.ZodObject<{ workflowId: z.ZodString; executionMode: z.ZodEnum<["manual", "production"]>; triggerNodeName: z.ZodOptional; inputs: z.ZodOptional, z.ZodObject<{ formData: z.ZodRecord; }, "strict", z.ZodTypeAny, { formData: Record; }, { formData: Record; }>, z.ZodObject<{ webhookData: z.ZodObject<{ method: z.ZodDefault>>; query: z.ZodOptional>; body: z.ZodOptional>; headers: z.ZodOptional>; }, "strict", z.ZodTypeAny, { method: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT"; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }, { method?: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT" | undefined; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }>; }, "strict", z.ZodTypeAny, { webhookData: { method: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT"; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }; }, { webhookData: { method?: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT" | undefined; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }; }>]>>; }, "strip", z.ZodTypeAny, { workflowId: string; executionMode: "manual" | "production"; triggerNodeName?: string | undefined; inputs?: { chatInput: string; } | { formData: Record; } | { webhookData: { method: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT"; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }; } | undefined; }, { workflowId: string; executionMode: "manual" | "production"; triggerNodeName?: string | undefined; inputs?: { chatInput: string; } | { formData: Record; } | { webhookData: { method?: "DELETE" | "GET" | "HEAD" | "OPTIONS" | "PATCH" | "POST" | "PUT" | undefined; query?: Record | undefined; body?: Record | undefined; headers?: Record | undefined; }; } | undefined; }>; type ExecuteWorkflowInput = z.infer; type ExecutionMode = ExecuteWorkflowInput['executionMode']; type ExecuteWorkflowOutput = { executionId: string | null; status: 'started' | 'error'; error?: string; }; export declare const createExecuteWorkflowTool: (user: User, workflowFinderService: WorkflowFinderService, workflowRunner: WorkflowRunner, telemetry: Telemetry, mcpService: McpService, workflowsConfig: WorkflowsConfig, workflowPublishedDataService: WorkflowPublishedDataService) => ToolDefinition; export declare const executeWorkflow: (user: User, workflowFinderService: WorkflowFinderService, workflowRunner: WorkflowRunner, mcpService: McpService, workflowsConfig: WorkflowsConfig, workflowPublishedDataService: WorkflowPublishedDataService, workflowId: string, inputs: ExecuteWorkflowInput['inputs'], executionMode: ExecutionMode, triggerNodeName?: string) => Promise;