/**
 * Registers a journal event update.
 *
 * @param event  - Tje event name.
 * @param update - The update function to register.
 */
export declare function registerJournalEventUpdate<From extends JournalEvent, To extends JournalEvent>(event: From["event"] & To["event"], update: (from: From, to: To) => void): void;
/**
 * Updates the given journal event if necessary.
 *
 * @param event - The journal event to update.
 */
export declare function updateJournalEvent(event: JournalEvent): void;
/**
 * Base interface shared by all journal event types.
 */
export interface JournalEvent<T extends string = string> {
    /** The time in GMT, ISO 8601. */
    timestamp: string;
    /** The type of event. */
    event: T;
}
