/** * Per-run feature dependency union. * * The features stage computes the UNION of every enabled rule's declared * `featureDeps` plus the caller's `emitFeatures` (the dashboard columns on a * dashboard-bound run) — lazy/needed-only, nothing more. Pure; no module * state (the dependency set is recomputed per run from the active rule set). * Shared by both orchestrators (single-program `runGraph` + sharded build) so * the union is computed by one function, not two copies. */ import type { FeatureColumn, Rule } from '../types.js'; /** * De-duplicated union of every rule's `featureDeps` and the caller's `extra` * (e.g. `RunGraphInput.emitFeatures`). Empty when no rule declares deps and * `extra` is absent/empty ⇒ the features stage computes nothing and persists * no blob. */ export declare function unionFeatureDeps(rules: readonly Rule[], extra: readonly FeatureColumn[] | undefined): readonly FeatureColumn[]; //# sourceMappingURL=feature-deps.d.ts.map