import { ICacheProvider } from "../../domain/interfaces/cache-provider.interface"; import { IErrorReporter } from "../../domain/interfaces/error-reporter.interface"; import { CachingPolicy } from "./caching-policy"; import { Request } from "../request"; import { Response } from "../response"; export declare class Cache { private cacheProvider; private cachingPolicy; private errorReporter; constructor(cacheProvider: ICacheProvider, cachingPolicy: CachingPolicy, errorReporter: IErrorReporter); build(request: Request, response: Response): Promise; has(request: Request): Promise; get(request: Request): Promise; /** * Returns the lowest TTL value available with a maximum of 30 days (2592000s) * * @param ttl */ private lowestDuration; }