import type { JournalRowStore } from "./journal-row-store.js"; import type { JournalEntry, SyncJournal } from "./types.js"; export interface SharedAreaJournalRows { identity: string; rows: JournalRowStore; /** Rare keys whose durable area differs from the current resolver route. */ owners: Map; /** Rare duplicate rows hidden from the aggregate but retained by their area. */ shadows: Map>; } /** Stable process-local identity for the area-authoritative packed journal. */ export declare function areaJournalRowsCacheKey(rootDir: string, slug: string): string; /** Associate a decoded journal object with the packed rows that back its files proxy. */ export declare function rememberDecodedJournalRows(journal: SyncJournal, rows: JournalRowStore): void; /** Return the packed rows backing a decoded v3 or v4 journal, if available. */ export declare function decodedJournalRows(journal: SyncJournal): JournalRowStore | undefined; /** Drop the packed association after spilling rows into the bounded disk cache. */ export declare function forgetDecodedJournalRows(journal: SyncJournal): void; /** Hold one packed aggregate across the keyed sessions for an authoritative area journal. */ export declare function rememberSharedAreaJournalRows(cacheKey: string, identity: string, rows: JournalRowStore, owners: Map, shadows: Map>): void; /** Return the shared packed aggregate created at the area-authority transition. */ export declare function sharedAreaJournalRows(cacheKey: string, identity: string): SharedAreaJournalRows | undefined; /** Release a process-local shared aggregate when its owning cached bridge closes. */ export declare function forgetSharedAreaJournalRows(cacheKey: string): void; /** True when this packed store is the process-wide area aggregate. */ export declare function isSharedAreaPackedStore(rows: JournalRowStore): boolean; //# sourceMappingURL=journal-snapshot-rows.d.ts.map