import type { GroupActivationPlan, GroupStatus } from '../../types/index.js';
/**
 * Compute which groups should be enabled/disabled given a detected stack.
 *
 * - Matches each profile `signal` against the normalized (lowercased) detected
 *   stack keywords (case-insensitive).
 * - Only returns changes: groups already in the desired state are omitted.
 * - Never requests disabling a group whose `enabled` state is already false.
 * - Never requests disabling a locked group (caller also enforces this via
 *   GroupManager, but we filter early to keep output intent-accurate).
 * - De-duplicates group IDs and never reports a group in both lists; when a
 *   group is requested for both enable and disable, enable wins.
 */
export declare function computeGroupActivations(detectedStack: readonly string[], currentGroups: readonly GroupStatus[]): GroupActivationPlan;
//# sourceMappingURL=stack-activator.d.ts.map