import IServiceResponse from "./IServiceResponse"; export interface IMutableTextNode { nodeId: string text: string versionNumber: number; numVersions: number; } export interface IMutableTextNodeGateway { createNode(node: IMutableTextNode): Promise>; getNode(nodeId: string, version: number): Promise>; getNodeHistory(nodeId: string): Promise>; deleteNode(nodeId: string): Promise>; deleteNodes(nodeIds: string[]): Promise>; updateNode(node: IMutableTextNode, anchors: IMutableTextAnchor[]): Promise>; } export interface IMutableTextAnchor { anchorId: string start: number end: number } export interface IMutableTextAnchorGateway { createAnchor(anchor: IMutableTextAnchor): Promise>; getAnchor(anchorId: string): Promise>; getAnchors(anchorIds: string[]): Promise>; deleteAnchor(anchorId: string): Promise>; deleteAnchors(anchorIds: string[]): Promise>; }