/** * Snapshot a page's CURRENT document before an overwrite. Callers pass the * pre-update state; the row records what the save replaced, so "restore * revision N" recovers exactly what the editor saw before save N+1. * Prunes to the newest `keep` revisions per page. */ export declare function storeRevision(pageId: number, snapshot: PageDocumentSnapshot, options?: { authorId?: number | null, note?: string | null, keep?: number }): Promise; export declare function fetchRevisions(pageId: number, limit?: number): Promise; /** * Copy a revision's document back onto its page. The page's current state is * snapshotted first, so a restore is itself undoable. */ export declare function restoreRevision(revisionId: number, options?: { authorId?: number | null }): Promise; export declare interface PageDocumentSnapshot { title: string blocks: string | null metaDescription: string | null } export declare interface PageRevisionRow { id: number page_id: number author_id: number | null revision: number title: string blocks: string | null meta_description: string | null note: string | null created_at: string | null }