json-joy
Version:
Collection of libraries for building collaborative editing apps.
20 lines (19 loc) • 806 B
TypeScript
import type { Printable } from 'tree-dump';
import type { PeritextEventTarget } from '../../events/PeritextEventTarget';
import type { UiLifeCycles } from '../types';
import type { Peritext } from '../../../json-crdt-extensions/peritext';
export interface CompositionControllerOpts {
source: HTMLElement;
txt: Peritext;
et: PeritextEventTarget;
}
export declare class CompositionController implements UiLifeCycles, Printable {
readonly opts: CompositionControllerOpts;
composing: boolean;
data: string;
constructor(opts: CompositionControllerOpts);
/** -------------------------------------------------- {@link UiLifeCycles} */
start(): () => void;
/** ----------------------------------------------------- {@link Printable} */
toString(tab?: string): string;
}