import type { RuntimeEvent, EventFilterOptions, JournalConfig } from "@loomic/types"; import { RuntimeEventEmitter } from "./event-emitter.js"; /** * RuntimeJournal — bounded ring buffer of recent runtime events. * * The journal is just an internal subscriber on the event emitter. * It receives no special treatment from the runtime. */ export declare class RuntimeJournal { private entries; private readonly maxEntries; private readonly categoryFilter; private unsubscribe; constructor(config?: Partial); /** * Attach the journal to an event emitter as a subscriber. */ attach(emitter: RuntimeEventEmitter): void; /** * Detach the journal from the event emitter. */ detach(): void; /** * Get all entries currently in the journal. */ getEntries(): ReadonlyArray; /** * Get entries filtered by type or category. */ query(filter: EventFilterOptions): ReadonlyArray; /** * Get entries for a specific run loop cycle. */ getCycle(cycleId: string): ReadonlyArray; /** * Clear the journal. */ clear(): void; /** * Export entries for serialization (returns a new array). */ export(): RuntimeEvent[]; /** * Current number of entries in the journal. */ get size(): number; } //# sourceMappingURL=journal.d.ts.map