/**
 * Version cache module for auto-update checking
 *
 * Stores the latest known npm version locally to avoid blocking
 * on network requests. Uses a stale-while-revalidate pattern.
 */
export type VersionCache = {
    latest_version: string;
    last_checked_at: string;
    dismissed_version?: string | null;
};
/**
 * Get the path to the version cache file.
 * Located alongside .nori-install.json in ~/.nori/profiles/
 *
 * @returns The absolute path to the version cache file
 */
export declare const getVersionCachePath: () => string;
/**
 * Read the version cache from disk.
 *
 * @returns The cached version data, or null if the file doesn't exist or is invalid
 */
export declare const readVersionCache: () => Promise<VersionCache | null>;
/**
 * Write the version cache to disk.
 * Creates the directory if it doesn't exist.
 *
 * @param args - Arguments
 * @param args.cache - The cache object to write
 */
export declare const writeVersionCache: (args: {
    cache: VersionCache;
}) => Promise<void>;
/**
 * Check if the version cache is stale.
 *
 * @param args - Arguments
 * @param args.cache - The cache to check (null = stale)
 * @param args.maxAgeHours - Max age in hours before cache is stale (default: 20)
 *
 * @returns True if the cache is stale or null
 */
export declare const isCacheStale: (args: {
    cache: VersionCache | null;
    maxAgeHours?: number | null;
}) => boolean;
/**
 * Dismiss a version so the update prompt won't show for it.
 *
 * @param args - Arguments
 * @param args.version - The version to dismiss
 */
export declare const dismissVersion: (args: {
    version: string;
}) => Promise<void>;
//# sourceMappingURL=versionCache.d.ts.map