import { type ResolvedThresholds } from "../budget/policy.js"; import { SettingsManager, type ExtensionContext } from "@earendil-works/pi-coding-agent"; /** * Read the active compaction reserve, enablement, and pi-context margin settings. This * function deliberately has no cache: the budget owner supplies the invocation-scoped * cache so two live piContext instances cannot share mutable policy state. */ export type ThresholdSettingsResolution = { thresholds: ResolvedThresholds; automatic: boolean; warnings: string[]; }; /** * Resolve policy from either the explicitly supplied SDK authority or Pi's default * file-backed settings. The caller owns diagnostics and any lifecycle caching. */ export declare function readThresholdSettings(ctx: ExtensionContext, settingsManager?: SettingsManager): ThresholdSettingsResolution;