import type { z } from 'zod';
import type { WorkflowArpeggioConfig, WorkflowCommandGatesConfig, WorkflowMcpServersConfig, WorkflowRuntimePrepareConfig } from '../../../core/models/config-types.js';
import type { WorkflowConfig, WorkflowStepRawSchema } from '../../../core/models/index.js';
type RawStep = z.output<typeof WorkflowStepRawSchema>;
export declare function resolveWorkflowRuntimePreparePolicy(globalPolicy: WorkflowRuntimePrepareConfig | undefined, projectPolicy: WorkflowRuntimePrepareConfig | undefined): WorkflowRuntimePrepareConfig | undefined;
export declare function resolveWorkflowCommandGatesPolicy(globalPolicy: WorkflowCommandGatesConfig | undefined, projectPolicy: WorkflowCommandGatesConfig | undefined): WorkflowCommandGatesConfig | undefined;
export declare function validateWorkflowRuntimePrepare(runtime: WorkflowConfig['runtime'], policy?: WorkflowRuntimePrepareConfig): void;
export declare function validateWorkflowCommandGates(steps: RawStep[], policy?: WorkflowCommandGatesConfig): void;
export declare function resolveWorkflowArpeggioPolicy(globalPolicy: WorkflowArpeggioConfig | undefined, projectPolicy: WorkflowArpeggioConfig | undefined): WorkflowArpeggioConfig | undefined;
export declare function validateWorkflowArpeggio(stepName: string, raw: RawStep['arpeggio'], policy?: WorkflowArpeggioConfig): void;
export declare function resolveWorkflowMcpServersPolicy(globalPolicy: WorkflowMcpServersConfig | undefined, projectPolicy: WorkflowMcpServersConfig | undefined): WorkflowMcpServersConfig | undefined;
export declare function validateWorkflowMcpServers(stepName: string, mcpServers: RawStep['mcp_servers'], policy: WorkflowMcpServersConfig | undefined): void;
export {};
//# sourceMappingURL=workflowNormalizationPolicies.d.ts.map