/**
 * Quality gate override application logic
 *
 * Resolves quality gates from config overrides with 3-layer priority:
 * 1. Project .takt/config.yaml workflow_overrides
 * 2. Global ~/.takt/config.yaml workflow_overrides
 * 3. Workflow YAML quality_gates
 *
 * Merge strategy: Additive (config gates + YAML gates)
 */
import type { WorkflowOverrides } from '../../../core/models/config-types.js';
import type { QualityGate } from '../../../core/models/workflow-types.js';
/**
 * Apply quality gate overrides to an agent step.
 *
 * Merge order (gates are added in this sequence):
 * 1. Global override in global config (filtered by edit flag if qualityGatesEditOnly=true)
 * 2. Step-specific override in global config
 * 3. Persona-specific override in global config
 * 4. Global override in project config (filtered by edit flag if qualityGatesEditOnly=true)
 * 5. Step-specific override in project config
 * 6. Persona-specific override in project config
 * 7. Workflow YAML quality_gates
 *
 * Merge strategy: Additive merge (all gates are combined, no overriding)
 *
 * @param stepName - Name of the step
 * @param yamlGates - Quality gates from workflow YAML
 * @param editFlag - Whether the step has edit: true
 * @param personaName - Persona name used by the step
 * @param projectOverrides - Project-level workflow_overrides (from .takt/config.yaml)
 * @param globalOverrides - Global-level workflow_overrides (from ~/.takt/config.yaml)
 * @returns Merged quality gates array
 */
export declare function applyQualityGateOverrides(stepName: string, yamlGates: QualityGate[] | undefined, editFlag: boolean | undefined, personaName: string | undefined, projectOverrides: WorkflowOverrides | undefined, globalOverrides: WorkflowOverrides | undefined): QualityGate[] | undefined;
//# sourceMappingURL=qualityGateOverrides.d.ts.map