/**
 * Pure gate dependency enforcement logic.
 *
 * Extracted from team-manager.ts spawnRole() and server.ts team/prompt handler
 * so it can be tested in isolation without server/store dependencies.
 */
export interface GateDef {
    id: string;
    name: string;
    dependsOn: string[];
}
/**
 * Check whether a workflow gate's upstream dependencies have all passed.
 *
 * Returns null if the operation is allowed, or an error message string if blocked.
 *
 * Used by:
 *   - team-manager.ts spawnRole() — throws GateDependencyError on non-null
 *   - server.ts team/prompt handler — returns 409 on non-null
 *   - server.ts gate signal handler (uses a simpler per-dep loop variant)
 */
export declare function checkGateDependencies(workflowGateId: string | undefined, workflowGates: GateDef[], gateStates: Array<{
    gateId: string;
    status: string;
}>): string | null;
//# sourceMappingURL=gate-dependency-check.d.ts.map