import type { CacheConfig, ComponentStyles } from './types.js'; export interface PartialResponse { state?: Record; componentStyles: ComponentStyles; templates: Record; templateFunctions?: Record; path: string; chain?: RouteChainEntry[]; css?: string[]; cacheTags?: string[]; cacheControl?: { staleTime?: number; }; } export interface RouteChainEntry { component: string; path: string; params: Record; exact?: boolean; el?: HTMLElement; compEl?: Element; allowedQuery?: string; keepAlive?: boolean; pendingComponent?: string; errorComponent?: string; invalidates?: string[]; state?: Record | null; } export interface CacheEntry { data: PartialResponse & { inventory?: string; }; tags: string[]; ts: number; staleTime?: number; preload?: boolean; complete: boolean; } export declare class NavigationCache { private cache; private tagIndex; private config; constructor(config: Required); lookup(requestPath: string): (PartialResponse & { inventory?: string; }) | null; store(requestPath: string, data: PartialResponse & { inventory?: string; }, preload?: boolean, streaming?: boolean): void; evict(requestPath: string): void; gc(): void; clear(): void; invalidateTags(tags: string[]): void; invalidate(path?: string): void; has(requestPath: string): boolean; getEntry(requestPath: string): CacheEntry | undefined; }