import { type AutoCompactProfile } from './auto-compact-modes.js'; /** Which of the three sources answered the profile question. */ export type AutoCompactProfileSource = 'cli' | 'preference' | 'default'; export interface ResolvedAutoCompactProfile { readonly profile: AutoCompactProfile; /** Where it came from: `'cli'`, `'preference'` or `'default'`. */ readonly source: AutoCompactProfileSource; } /** * The profile the project pinned, or `null` when it pinned nothing: no key in * the file, an unknown value, or the default `'standard'`. A file this build * CANNOT READ answers `null` too, leaving the compaction path unbroken. */ export declare function readAutoCompactProfilePreference(projectRoot: string): AutoCompactProfile | null; /** * Resolve the profile in force for one invocation — THE resolution order lives * here, in one place, so it cannot drift between the CLI and the services. */ export declare function resolveAutoCompactProfile(input: { readonly projectRoot: string; /** The normalized `--mode` value, when the caller named one. */ readonly cliMode?: AutoCompactProfile | null | undefined; }): ResolvedAutoCompactProfile;