export interface CodexManagedRoleConfig {
    roleName: string;
    description: string;
    configFile: string;
}
export interface CodexConfigMergeArgs {
    existingContent: string | null;
    desiredRoles: CodexManagedRoleConfig[];
    staleManagedRoles?: string[];
    inheritedMaxDepth?: number;
}
export interface CodexSingleRoleConfigMergeArgs {
    existingContent: string | null;
    role: CodexManagedRoleConfig;
    staleManagedRoles?: string[];
    inheritedMaxDepth?: number;
}
export interface CodexConfigMergeResult {
    mergedContent: string;
    changed: boolean;
    removedRoles: string[];
}
/** Reads a valid numeric agents.max_depth value from Codex TOML content. */
export declare function readCodexMaxDepth(content: string | null): number | null;
/** Merges managed Codex roles and required shared agent configuration. */
export declare function mergeCodexConfig({ existingContent, desiredRoles, staleManagedRoles, inheritedMaxDepth, }: CodexConfigMergeArgs): CodexConfigMergeResult;
/** Merges one managed Codex role using the shared configuration contract. */
export declare function mergeCodexConfigForRole({ existingContent, role, staleManagedRoles, inheritedMaxDepth, }: CodexSingleRoleConfigMergeArgs): CodexConfigMergeResult;
//# sourceMappingURL=config-merge.d.ts.map