import type { MonoAgentConfigJson } from "./json-source.js"; import type { MonoAgentConfig } from "./types.js"; export interface LoadMonoAgentConfigWithSourcesInput { readonly env: Record; readonly cwd: string; /** * Optional path to a JSON config file. Missing or empty file is OK. * When set, values from JSON fill in fields that are not present in env; * env always wins for fields present in both layers. */ readonly jsonPath?: string; } /** * Layered loader: JSON file provides defaults, env vars override. * * Precedence (highest first): * 1. process env * 2. mono-agent.config.json * 3. built-in defaults from loadMonoAgentConfig (executionMode, sessions, etc.) * * Returns the same `MonoAgentConfig` shape as `loadMonoAgentConfig` so * existing call sites only need to swap the loader. */ export declare function loadMonoAgentConfigWithSources(input: LoadMonoAgentConfigWithSourcesInput): Promise; /** * Convert a JSON config object into a flat env-like record so we can hand it * to the existing env-based loader. Env values present in `env` take * precedence over JSON-derived values. */ export declare function layerJsonOntoEnv(json: MonoAgentConfigJson, env: Record): Record; //# sourceMappingURL=layered-loader.d.ts.map