| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | import { Strategy, StrategyOptions } from './Strategy.js';import { StrategyHandler } from './StrategyHandler.js';import './_version.js';export interface NetworkFirstOptions extends StrategyOptions {    networkTimeoutSeconds?: number;}/** * An implementation of a * [network first](https://developer.chrome.com/docs/workbox/caching-strategies-overview/#network-first-falling-back-to-cache) * request strategy. * * 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 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 `WorkboxError` exception. * * @extends workbox-strategies.Strategy * @memberof workbox-strategies */declare class NetworkFirst extends Strategy {    private readonly _networkTimeoutSeconds;    /**     * @param {Object} [options]     * @param {string} [options.cacheName] Cache name to store and retrieve     * requests. Defaults to cache names provided by     * {@link workbox-core.cacheNames}.     * @param {Array<Object>} [options.plugins] [Plugins]{@link https://developers.google.com/web/tools/workbox/guides/using-plugins}     * to use in conjunction with this caching strategy.     * @param {Object} [options.fetchOptions] Values passed along to the     * [`init`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters)     * of [non-navigation](https://github.com/GoogleChrome/workbox/issues/1796)     * `fetch()` requests made by this strategy.     * @param {Object} [options.matchOptions] [`CacheQueryOptions`](https://w3c.github.io/ServiceWorker/#dictdef-cachequeryoptions)     * @param {number} [options.networkTimeoutSeconds] If set, any network requests     * that fail to respond within the timeout will fallback to the cache.     *     * This option can be used to combat     * "[lie-fi]{@link https://developers.google.com/web/fundamentals/performance/poor-connectivity/#lie-fi}"     * scenarios.     */    constructor(options?: NetworkFirstOptions);    /**     * @private     * @param {Request|string} request A request to run this strategy for.     * @param {workbox-strategies.StrategyHandler} handler The event that     *     triggered the request.     * @return {Promise<Response>}     */    _handle(request: Request, handler: StrategyHandler): Promise<Response>;    /**     * @param {Object} options     * @param {Request} options.request     * @param {Array} options.logs A reference to the logs array     * @param {Event} options.event     * @return {Promise<Response>}     *     * @private     */    private _getTimeoutPromise;    /**     * @param {Object} options     * @param {number|undefined} options.timeoutId     * @param {Request} options.request     * @param {Array} options.logs A reference to the logs Array.     * @param {Event} options.event     * @return {Promise<Response>}     *     * @private     */    _getNetworkPromise({ timeoutId, request, logs, handler, }: {        request: Request;        logs: any[];        timeoutId?: number;        handler: StrategyHandler;    }): Promise<Response | undefined>;}export { NetworkFirst };
 |