export interface BrowserModuleBuildCoordinatorOptions { maxEntries?: number; maxBytes?: number; globalLimit?: number; perProjectLimit?: number; } export interface BrowserModuleBuildRequest { cacheKey: string; projectKey: string; build: () => Promise; validate: (value: T) => Promise; sizeOf: (value: T) => number; } export interface BrowserModuleBuildResult { value: T; status: "hit" | "miss" | "shared"; } export declare class BrowserModuleCapacityError extends Error { readonly name = "BrowserModuleCapacityError"; constructor(); } /** * Coordinates expensive browser-module builds without an unbounded wait queue. * Map insertion order provides deterministic least-recently-used eviction. */ export declare class BrowserModuleBuildCoordinator { #private; constructor(options?: BrowserModuleBuildCoordinatorOptions); getOrBuild(request: BrowserModuleBuildRequest): Promise>; resetForTesting(): void; getStatsForTesting(): { cacheEntries: number; cacheBytes: number; inFlight: number; activeGlobal: number; }; } //# sourceMappingURL=browser-module-availability.d.ts.map