import { type H3Event } from 'h3'; import type { MultiCacheInstances } from './../types/index.js'; import type { CacheTagRegistry } from './../types/CacheTagRegistry.js'; import type { NuxtMultiCacheRouteCacheHelper } from './RouteCacheHelper.js'; export declare const MULTI_CACHE_CONTEXT_KEY = "multiCacheApp"; /** * Granular check whether caching is enabled for a given request. * * That way it's possible to exclude some requests from getting or setting * something from cache. */ export declare function enabledForRequest(event: H3Event): Promise; export declare function getMultiCacheContext(event: H3Event): MultiCacheInstances | undefined; export declare function getCacheTagRegistry(event: H3Event): CacheTagRegistry | undefined; export declare function getMultiCacheRouteHelper(event: H3Event): NuxtMultiCacheRouteCacheHelper | undefined; export declare function getCacheKeyWithPrefix(cacheKey: string, event: H3Event): Promise; export declare function getRequestTimestamp(event: H3Event): number; /** * Unstorage does some magic to the key if it contains / or ?. This method * handles this. */ export declare function encodeRouteCacheKey(event: H3Event): string; export declare function isInternalServerRequest(event: H3Event): boolean; /** * Filter out duplicate array items. */ export declare function onlyUnique(value: string, index: number, self: Array): boolean;