import * as Y from 'yjs'; import type { WorkSlideElement } from '../features/work/work-types'; export declare const PRESENTATION_RECORD_ELEMENTS = "elements"; export declare const PRESENTATION_RECORD_ELEMENT_ORDER = "elementOrder"; export declare const PRESENTATION_RECORD_COMMENTS = "comments"; export declare const PRESENTATION_RECORD_COMMENT_ORDER = "commentOrder"; export declare const PRESENTATION_RECORD_COMMENTS_PRESENT = "commentsPresent"; export declare const PRESENTATION_RECORD_TOMBSTONE = "tombstone"; export type WorkOfficePresentationRecord = { id: string; elements: WorkSlideElement[]; }; export declare function nestedPresentationMap(parent: Y.Map, key: string, label: string): Y.Map; export declare function nestedPresentationArray(parent: Y.Map, key: string, label: string): Y.Array; export declare function requiredPresentationMap(parent: Y.Map, key: string, label: string): Y.Map; export declare function requiredPresentationArray(parent: Y.Map, key: string, label: string): Y.Array; export declare function validatedPresentationOrder(order: Y.Array, records: Y.Map, label: string, allowTombstones?: boolean): string[]; export declare function readPresentationCollection(records: Y.Map, order: Y.Array, label: string): WorkOfficePresentationRecord[]; export declare function patchPresentationElements(records: Y.Map, order: Y.Array, previous: WorkSlideElement[], next: WorkSlideElement[], parentLabel: string): void; export declare function patchPresentationIdRecords(records: Y.Map, order: Y.Array, previous: T[], next: T[], label: string, durableTombstones?: boolean): void; export declare function patchPresentationOrder(order: Y.Array, previous: string[], next: string[]): void;