export declare const DEFAULT_AF_SEGMENT_CACHE_BYTES: number; export declare const DEFAULT_MOBILE_AF_SEGMENT_CACHE_BYTES: number; export type AFSegmentCacheAcquireStatus = 'hit' | 'joined' | 'loaded'; export interface AFSegmentCacheAcquireResult { bytes: Uint8Array; status: AFSegmentCacheAcquireStatus; } export interface AFSegmentCacheSnapshot { maxBytes: number; residentBytes: number; highWaterBytes: number; entryCount: number; inflightCount: number; ownerCount: number; disposed: boolean; } export type AFSegmentCacheLoader = (signal: AbortSignal) => Promise; /** * Byte-bounded LRU shared by indexed ActiveFrame sources. * * Resident entries with owners are pinned only until their source calls releaseExcept or dispose. * Unowned entries remain reusable and are evicted oldest-first when space is needed. */ export declare class AFSegmentCache { readonly maxBytes: number; private entries; private pending; private residentBytes; private highWaterBytes; private disposed; constructor(maxBytes?: number); getOrLoad(key: string, byteLength: number, owner: object, loader: AFSegmentCacheLoader): Promise; peek(key: string): Uint8Array | undefined; has(key: string): boolean; isLoading(key: string): boolean; release(key: string, owner: object, evictIfUnowned?: boolean): void; releaseOwner(owner: object, evictIfUnowned?: boolean): void; deleteUnowned(key: string): boolean; snapshot(): Readonly; dispose(): void; private assertUsable; private validateRequest; private lengthConflict; private touch; private makeRoom; private removeEntry; } /** Return the page-shared cache for one explicit byte budget. Equal budgets share requests/LRU state. */ export declare function getPageAFSegmentCache(maxBytes?: number): AFSegmentCache;