json-joy
Version:
Collection of libraries for building collaborative editing apps.
23 lines (22 loc) • 1.06 kB
TypeScript
import { BehaviorSubject } from 'rxjs';
import { Log } from '../../../json-crdt/log/Log';
import { DomController } from '../dom/DomController';
import type { PeritextPlugin } from '../react/types';
import type { Peritext } from '../../../json-crdt-extensions/peritext/Peritext';
import type { PeritextEventDefaults } from '../../../json-crdt-extensions/peritext/events/defaults/PeritextEventDefaults';
import type { UiLifeCycles } from '../types';
export declare class PeritextSurfaceState implements UiLifeCycles {
readonly events: PeritextEventDefaults;
readonly plugins: PeritextPlugin[];
readonly peritext: Peritext;
readonly dom: DomController;
readonly log: Log;
readonly render$: BehaviorSubject<number>;
/** Overlay portal container element. */
portalEl: HTMLDivElement | undefined;
readonly rerender: () => void;
constructor(events: PeritextEventDefaults, plugins: PeritextPlugin[]);
/** -------------------------------------------------- {@link UiLifeCycles} */
el: HTMLElement;
start(): () => void;
}