export interface CachedFetchOptions { /** The cache file path for storing data. If not provided, no caching is performed. */ cacheFile?: string; /** Fallback max-age in milliseconds when server sends no Cache-Control header. Defaults to 5 minutes. */ defaultMaxAgeMs?: number; } /** Extracts max-age value in milliseconds from a Response's Cache-Control header. Returns undefined if not present. */ export declare function parseMaxAge(response: { headers: { get(name: string): string | null; }; }): number | undefined; /** * Fetches data from a URL with file-based HTTP conditional caching. * * Data is stored as raw JSON in the cache file (same format as the server returns). * Caching metadata (ETag, expiry) is stored in a separate sidecar `.meta` file. * This keeps the data file human-readable and backward-compatible with older code. * * @param url - The URL to fetch from * @param options - Caching options * @param fetch - Fetch implementation (defaults to globalThis.fetch) * @param log - Logger instance * @returns The fetched and parsed JSON data, or undefined if fetch fails */ export declare function cachedFetch(url: string, options: CachedFetchOptions, fetch?: typeof globalThis.fetch, log?: import("@aztec/aztec.js/log").Logger): Promise; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkX2ZldGNoLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2NhY2hlZF9mZXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLFdBQVcsa0JBQWtCO0lBQ2pDLHNGQUFzRjtJQUN0RixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbkIseUdBQXlHO0lBQ3pHLGVBQWUsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUMxQjtBQVVELHVIQUF1SDtBQUN2SCx3QkFBZ0IsV0FBVyxDQUFDLFFBQVEsRUFBRTtJQUFFLE9BQU8sRUFBRTtRQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUE7S0FBRSxDQUFBO0NBQUUsR0FBRyxNQUFNLEdBQUcsU0FBUyxDQVUzRztBQUVEOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILHdCQUFzQixXQUFXLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFDdkMsR0FBRyxFQUFFLE1BQU0sRUFDWCxPQUFPLEVBQUUsa0JBQWtCLEVBQzNCLEtBQUssMEJBQW1CLEVBQ3hCLEdBQUcsdUNBQStCLEdBQ2pDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBb0V4QiJ9