import type { BaseApp } from '../app/base.js'; import type { FetchState } from '../fetch/fetch-state.js'; import type { Pipeline } from '../base-pipeline.js'; /** * Registers a cache provider on the given `FetchState`. When * `state.resolve('cache')` is first called, the appropriate cache * implementation is created (disabled, noop for dev, or real). * * Returns synchronously when cache is not configured or in dev mode. */ export declare function provideCache(state: FetchState): Promise | void; /** * Wraps a render callback with cache provider logic. Handles both * runtime caching (onRequest) and CDN-based providers (headers only). * * - When a cache provider with `onRequest` is configured, the callback * is wrapped so the provider can serve from cache or fall through. * - When only CDN headers are needed, the callback runs directly and * cache headers are applied to the response. * - When no cache provider is configured, the callback runs as-is. * * Cache headers (`CDN-Cache-Control`, `Cache-Tag`) are stripped from * the final response after the runtime provider has read them. */ export declare class CacheHandler { #private; constructor(app: BaseApp); handle(state: FetchState, next: () => Promise): Promise; }