export interface DismissedDiscovery { /** Absolute path to the discovery anchor at the time of dismissal. */ repoRoot: string; /** Path relative to `repoRoot` for the specific index file dismissed. */ indexPath: string; } export interface AirPreferences { $schema?: string; autoDiscovery?: { dismissed?: DismissedDiscovery[]; }; } /** Default location: `~/.air/preferences.json`, sibling to `air.json`. */ export declare function getDefaultPreferencesPath(): string; /** * Read the preferences file. Returns a structurally complete default when the * file is missing or malformed so callers never need to null-check. */ export declare function loadPreferences(path?: string): AirPreferences; /** Write preferences to disk with 2-space indentation and trailing newline. */ export declare function savePreferences(prefs: AirPreferences, path?: string): void; /** * Add one or more (repoRoot, indexPath) entries to the dismissed-set. * Idempotent — entries already present are not duplicated. */ export declare function addDismissed(entries: DismissedDiscovery[], path?: string): AirPreferences; /** * True if the given (repoRoot, indexPath) pair is in the dismissed-set. */ export declare function isDismissed(prefs: AirPreferences, entry: DismissedDiscovery): boolean; //# sourceMappingURL=preferences.d.ts.map