import { Response } from 'node-fetch'; import { Duration, Instant } from './temporal'; export declare type CacheRuleParameters = { maxAge: Duration; sMaxAge: Duration; noCache: boolean; mustRevalidate: boolean; proxyRevalidate: boolean; noStore: boolean; private: boolean; public: boolean; mustUnderstand: boolean; noTransform: boolean; immutable: boolean; staleWhileRevalidate: Duration; staleIfError: Duration; ageBase: Instant; }; export declare class CacheRules { readonly params: CacheRuleParameters; constructor(params: Partial, now: () => Instant); validAt(instant: Instant): boolean; } export declare const defaultRules: (now: () => Instant) => CacheRuleParameters; export declare function extractCacheRules(result: Response, now: () => Instant): CacheRules;