/**
 * Feature flags — compile-time UI/feature visibility toggles.
 *
 * Single source of truth for "temporary" flags that hide in-flight features,
 * gate partially-built panels, or carry a known rollback. Each entry carries
 * the metadata needed to answer "why is this off and when can it go?" so
 * flags don't rot into undiscoverable tombstones.
 *
 * This is intentionally NOT a runtime feature-flag system — no user
 * segmentation, no A/B, no env-var overrides. Just a typed map of booleans
 * with audit metadata. Flipping a flag is a code change.
 *
 * Adding a flag:
 *   1. Add an entry below with every metadata field populated.
 *   2. Import `FEATURE_FLAGS` at the call site and read `.enabled`.
 *   3. When the re-enable condition is met, remove the entry and the gate.
 *
 * See docs/guides/feature-flags.md for the full lifecycle.
 */
/** Shape of a single feature-flag entry. All fields required. */
export interface FeatureFlag {
    /** Whether the gated feature is visible / active. */
    readonly enabled: boolean;
    /** Why the flag exists. Answers "what problem did turning this off solve?" */
    readonly rationale: string;
    /** The condition under which this flag should be re-enabled or removed. */
    readonly reEnableWhen: string;
    /** ID of the work item that owns the flag's resolution, or null if none. */
    readonly relatedWorkItem: `W${string}` | null;
    /** ISO 8601 date (YYYY-MM-DD) the flag was introduced. Used for staleness audits. */
    readonly addedAt: string;
}
/**
 * Registry of all active feature flags across AILF packages.
 *
 * Consumers read values directly:
 *   if (FEATURE_FLAGS.showFailureModes.enabled) { ... }
 *
 * Adding a key here extends the `FeatureFlagKey` union automatically; typos
 * at call sites fail at compile time.
 */
export declare const FEATURE_FLAGS: {
    readonly showFailureModes: {
        readonly enabled: false;
        readonly rationale: "Current classification is too broad (majority \"Unclassified\") to be actionable in the diagnostics view.";
        readonly reEnableWhen: "Failure taxonomy is refined so non-Unclassified buckets carry meaningful signal.";
        readonly relatedWorkItem: "W0037-detect-model-output-failures";
        readonly addedAt: "2026-04-22";
    };
    readonly showRegressedSinceLastRun: {
        readonly enabled: false;
        readonly rationale: "Bare list of regressed area names lacks explanatory context for why each regressed.";
        readonly reEnableWhen: "Per-area regression attribution can be surfaced alongside the list.";
        readonly relatedWorkItem: null;
        readonly addedAt: "2026-04-22";
    };
};
/** Union of all registered flag keys. Typos at call sites fail at compile time. */
export type FeatureFlagKey = keyof typeof FEATURE_FLAGS;
