import type { StrategyOptions } from "./Strategy.js"; import { Strategy } from "./Strategy.js"; import type { StrategyHandler } from "./StrategyHandler.js"; /** * An implementation of the * [stale-while-revalidate](https://developer.chrome.com/docs/workbox/caching-strategies-overview/#stale_while_revalidate) * request strategy. * * Resources are requested from both the cache and the network in parallel. * The strategy will respond with the cached version if available, otherwise * wait for the network response. The cache is updated with the network response * with each successful request. * * By default, this strategy will cache responses with a 200 status code as * well as [opaque responses](https://developer.chrome.com/docs/workbox/caching-resources-during-runtime/#opaque-responses). * Opaque responses are cross-origin requests where the response doesn't * support [CORS](https://enable-cors.org/). * * If the network request fails, and there is no cache match, this will throw * a {@linkcode SerwistError} exception. */ export declare class StaleWhileRevalidate extends Strategy { /** * @param options */ constructor(options?: StrategyOptions); /** * @private * @param request A request to run this strategy for. * @param handler The event that triggered the request. * @returns */ _handle(request: Request, handler: StrategyHandler): Promise; } //# sourceMappingURL=StaleWhileRevalidate.d.ts.map