/** * Which modules the server loads. * * - `--modules fred,bls` / `MODULES`: modules by name. * - `--domains economy,health` / `DOMAINS`: every module in those domains. * When both are given, the selection is their union. With neither, all * modules are loaded. * - `--hide-unconfigured` / `HIDE_UNCONFIGURED=1`: after selecting, drop * modules whose required API key isn't set. Optional-key modules stay. * * Unknown module or domain names are errors, not silently ignored, so a typo * can't quietly load a different set of tools than intended. */ import { type ApiModule } from "../shared/types.js"; export interface ModuleSelection { modules?: string; domains?: string; hideUnconfigured?: boolean; } export interface SelectionResult { active: ApiModule[]; /** Selected modules dropped by hideUnconfigured, with their missing env vars. */ hidden: { name: string; missing: string[]; }[]; } /** Apply a selection to the discovered modules. Throws with a helpful message on bad input. */ export declare function selectModules(all: ApiModule[], sel: ModuleSelection, env?: NodeJS.ProcessEnv): SelectionResult; //# sourceMappingURL=module-selection.d.ts.map