import type { getCompilerContext } from '../../../../context/index.js';
import type { IStyleHandlerOptions } from '../../../../types/index.js';
export declare function touchMapEntry<Key, Value>(map: Map<Key, Value>, key: Key, value: Value): void;
export declare function pruneGulpRuntimeSourceCaches(sourcesByFile: Map<string, {
    source: string;
    type: 'html' | 'js';
}>): string[];
export declare function rememberGulpProcessCacheKey(cacheKeys: Set<string>, key: string): void;
export declare function pruneGulpProcessCache(cache: ReturnType<typeof getCompilerContext>['cache'], cacheKeys: Set<string>): void;
export declare function resolveGulpMemoryDebugStats(context: {
    cache: ReturnType<typeof getCompilerContext>['cache'];
    defaultStyleHandlerOptionsCache: Map<number | 'unknown', Partial<IStyleHandlerOptions>>;
    gulpProcessCacheKeys: Set<string>;
    phase: string;
    runtimeSet: Set<string>;
    runtimeSourceHashByFile: Map<string, string>;
    runtimeSourcesByFile: Map<string, {
        source: string;
        type: 'html' | 'js';
    }>;
}): {
    phase: string;
    process: {
        rssMb: number;
        heapTotalMb: number;
        heapUsedMb: number;
        externalMb: number;
        arrayBuffersMb: number;
    };
    runtime: {
        runtimeSet: number;
        runtimeSourceHashByFile: number;
        runtimeSourcesByFile: number;
        maxRuntimeSources: number;
    };
    processCache: {
        instance: number;
        hashMap: number;
        activeCacheKeys: number;
        maxCacheKeys: number;
    };
    gulpOptions: {
        defaultStyleHandlerOptions: number;
    };
    tailwind: {
        v4: {
            max: number;
            entryCandidatesMax: number;
            entryCssBytesMax: number;
            size: number;
            taskMax: number;
            taskSize: number;
            entries: {
                candidates: number;
                classSet: number;
                cssBytes: number;
                rawCssBytes: number;
                keyHash: string;
                keyBytes: number;
            }[];
            keys: {
                keyHash: string;
                keyBytes: number;
            }[];
            taskKeys: {
                keyHash: string;
                keyBytes: number;
            }[];
        };
    };
} | undefined;
