/** * Bridge between {@link loadArchradConfigSync} and the Commander program: * walks every subcommand and sets option defaults from `archrad.yml`. * * Defaults never clobber CLI flags (Commander tracks explicit values vs. * defaults), and setting a default satisfies `requiredOption()`, so a * user can run `archrad validate` with no flags when `ir:` is in config. */ import { Command } from 'commander'; import { type LoadedArchradConfig } from './config.js'; export interface ApplyConfigToProgramResult { loaded: LoadedArchradConfig | null; /** Map of command-path → list of option attr names that were defaulted. */ applied: Record; } /** * Pre-scan argv for the bootstrap flags that influence config discovery. * These are handled out-of-band so that they work on any subcommand * (or even before the subcommand appears). */ export declare function extractConfigBootstrapFlags(argv: string[]): { disabled: boolean; configPath: string | null; cleanedArgv: string[]; }; /** * Load (if any) and apply archrad.yml defaults to every subcommand of * `program`. Safe to call exactly once, before `program.parseAsync()`. */ export declare function applyConfigToProgram(program: Command, opts?: { configPath?: string | null; disabled?: boolean; startDir?: string; }): ApplyConfigToProgramResult; //# sourceMappingURL=cli-config.d.ts.map