UNPKG

collaborative-ui

Version:

React component library for building real-time collaborative editing applications.

33 lines (32 loc) 1.36 kB
import { Model } from 'json-joy/lib/json-crdt'; import { Log } from 'json-joy/lib/json-crdt/log/Log'; import { BehaviorSubject } from 'rxjs'; import { JsonCrdtLogState } from '../JsonCrdtLog/JsonCrdtLogState'; import type { TraceDefinition } from './TraceSelector/traces'; import type { DemoComp } from '../DemoDisplay'; export interface OpenFile { id: string; openTime: number; log: Log<any>; name: string; logState: JsonCrdtLogState; display?: DemoComp; } export declare class JsonCrdtExplorerState { readonly files$: BehaviorSubject<OpenFile[]>; readonly selected$: BehaviorSubject<string>; readonly file$: BehaviorSubject<OpenFile | null>; readonly sid: number; constructor(); readonly select: (id: string) => void; readonly openFile: (log: Log<any>, name?: string) => OpenFile; readonly close: (id: string) => void; readonly rename: (id: string, name: string) => void; readonly addFile: (file: File) => Promise<void>; readonly addLog: (uint8: Uint8Array, name?: string, display?: TraceDefinition["display"]) => Promise<void>; readonly addTrace: (uint8: Uint8Array, trace: TraceDefinition) => Promise<void>; readonly addFiles: (files: File[]) => Promise<void>; private newCnt; readonly createNew: () => void; readonly createFromModel: (model: Model<any>) => void; }