import './_version.js'; export interface CacheableResponseOptions { statuses?: number[]; headers?: { [headerName: string]: string; }; } /** * This class allows you to set up rules determining what * status codes and/or headers need to be present in order for a * [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response) * to be considered cacheable. * * @memberof module:workbox-cacheable-response */ declare class CacheableResponse { private readonly _statuses?; private readonly _headers?; /** * To construct a new CacheableResponse instance you must provide at least * one of the `config` properties. * * If both `statuses` and `headers` are specified, then both conditions must * be met for the `Response` to be considered cacheable. * * @param {Object} config * @param {Array} [config.statuses] One or more status codes that a * `Response` can have and be considered cacheable. * @param {Object} [config.headers] A mapping of header names * and expected values that a `Response` can have and be considered cacheable. * If multiple headers are provided, only one needs to be present. */ constructor(config?: CacheableResponseOptions); /** * Checks a response to see whether it's cacheable or not, based on this * object's configuration. * * @param {Response} response The response whose cacheability is being * checked. * @return {boolean} `true` if the `Response` is cacheable, and `false` * otherwise. */ isResponseCacheable(response: Response): boolean; } export { CacheableResponse };