import type { ExemptionLocal, ExemptionShared } from './exemption-schema.js';
/**
 * Read local exemption tracking state from .totem/cache/exemption-local.json.
 * Returns EMPTY_LOCAL if missing, corrupt, or unreadable.
 */
export declare function readLocalExemptions(cacheDir: string, onWarn?: (msg: string) => void): ExemptionLocal;
/**
 * Write local exemption tracking state.
 * Creates cache directory if needed. Fire-and-forget on failure.
 */
export declare function writeLocalExemptions(cacheDir: string, data: ExemptionLocal, onWarn?: (msg: string) => void): void;
/**
 * Read shared exemptions from .totem/exemptions.json (committed, team-wide).
 * Returns EMPTY_SHARED if missing or invalid.
 */
export declare function readSharedExemptions(totemDir: string, onWarn?: (msg: string) => void): ExemptionShared;
/**
 * Write shared exemptions file.
 * Creates directory if needed. Fire-and-forget on failure.
 */
export declare function writeSharedExemptions(totemDir: string, data: ExemptionShared, onWarn?: (msg: string) => void): void;
//# sourceMappingURL=exemption-store.d.ts.map