import type { ClientId } from '@zhixuan92/multi-model-agent-core'; import type { DeclaredClientRoster } from '../provisioning/roster.js'; /** * Merge `{ [id]: state }` for every `targets` into `configPath`'s `clients` map, * preserving every other key untouched, and creating the file if it is absent. * * Everything outside `clients` is left exactly as found — this rewrites one key, * not the file. A config that is present but not a JSON object is an error * rather than something to overwrite: it is the user's file, and replacing it * would destroy settings we did not author. */ export declare function persistDeclaredState(configPath: string, targets: readonly ClientId[], state: 'on' | 'off'): void; /** The roster currently recorded at `configPath`, or `undefined` when there is * nothing readable there. Never throws: a roster we cannot parse is not * evidence about what the user wants. */ export declare function readDeclaredState(configPath: string): DeclaredClientRoster | undefined; //# sourceMappingURL=declared-roster.d.ts.map