UNPKG

json-joy

Version:

Collection of libraries for building collaborative editing apps.

25 lines (24 loc) 1.44 kB
import { ClockDecoder } from '../../../../json-crdt-patch/codec/clock/ClockDecoder'; import { CrdtReader } from '../../../../json-crdt-patch/util/binary/CrdtReader'; import type { ITimestampStruct } from '../../../../json-crdt-patch/clock'; import { Model } from '../../../model/Model'; import { CborDecoderBase } from '@jsonjoy.com/json-pack/lib/cbor/CborDecoderBase'; import * as nodes from '../../../nodes'; export declare class Decoder { protected doc: Model; protected clockDecoder?: ClockDecoder; protected time: number; protected readonly decoder: CborDecoderBase<CrdtReader>; decode(view: unknown, meta: Uint8Array): Model; protected decodeClockTable(): void; protected ts(): ITimestampStruct; protected cRoot(view: unknown): nodes.JsonNode; protected cNode(view: unknown): nodes.JsonNode; protected cCon(view: unknown, id: ITimestampStruct, length: number): nodes.ConNode; protected cVal(view: unknown, id: ITimestampStruct): nodes.ValNode; protected cObj(view: unknown, id: ITimestampStruct, length: number): nodes.ObjNode; protected cVec(view: unknown, id: ITimestampStruct, length: number): nodes.VecNode; protected cStr(view: unknown, id: ITimestampStruct, length: number): nodes.StrNode; protected cBin(view: unknown, id: ITimestampStruct, length: number): nodes.BinNode; protected cArr(view: unknown, id: ITimestampStruct, length: number): nodes.ArrNode; }