import { FeatureFlags, FormDefinition, WorkflowDefinition } from './types.js'; /** * Is a `flag` expression on (spec 01 §12)? * - no flag -> always on * - 'name' -> on only while flags.name is true * - '!name' -> on only while flags.name is NOT true * A missing key counts as false — new features stay dark until the flags * file explicitly turns them on. */ export declare function flagEnabled(flag: string | undefined, flags: FeatureFlags): boolean; /** * Resolve every `flag` in a definition against the current flag values: * flag-off fields/steps/rules come back REMOVED, as if never authored — * they don't render, don't validate, and never reach the payload. Run the * same call server-side (bank20baht-validator re-exports it) with the same * flags JSON so both sides agree. Returns the input untouched when nothing * in it carries a flag. */ export declare function applyFlags(schema: T, flags?: FeatureFlags): T;