/** * Machine-readable association between each capability in the internal * registry and the CONFIG_SCHEMA keys (and their top-level categories) that * tune it. feature-settings.ts joins this map with the enablement bindings to * build FEATURE_SETTINGS, the per-feature metadata surfaces render as ONE * unit (enablement + tuning keys together). * * Every entry's `configKeys` is typed `ConfigKey[]`, so a key that is not a real * config key fails typecheck (no decorative associations). EVERY id in * FEATURE_FLAGS has an entry here; a feature with no tuning config carries empty * arrays. The flag-config-map.test.ts guard keeps this map and FEATURE_FLAGS in * lockstep (bidirectional completeness). */ import type { ConfigKey } from '../../config/schema-types.js'; export interface FeatureFlagConfigAssociation { /** Top-level GoodVibesConfig categories this feature's config keys live under (empty when none). */ readonly configCategories: readonly string[]; /** Exact scalar ConfigKey dot-paths that tune this feature (empty when the flag has no config). */ readonly configKeys: readonly ConfigKey[]; } export declare const FEATURE_FLAG_CONFIG: Readonly>; /** * Config association for a flag id. Returns empty arrays for an unknown flag id * (callers treat "no association" and "unknown flag" identically for rendering). */ export declare function getFeatureFlagConfig(flagId: string): FeatureFlagConfigAssociation; //# sourceMappingURL=flag-config-map.d.ts.map