UNPKG

json-joy

Version:

Collection of libraries for building collaborative editing apps.

26 lines (25 loc) 1.31 kB
import type { MarkerOverlayPoint } from './MarkerOverlayPoint'; import type { OverlayPoint } from './OverlayPoint'; /** * Represents a two adjacent overlay points. The first point is the point * that is closer to the start of the document, and the second point is the * point that is closer to the end of the document. When an absolute start is * missing, the `p1` will be `undefined`. When an absolute end is missing, the * `p2` will be `undefined`. */ export type OverlayPair<T> = [p1: OverlayPoint<T> | undefined, p2: OverlayPoint<T> | undefined]; /** * The *overlay tuple* is similar to the {@link OverlayPair}, but ensures that * both points are defined. The leasing and trailing `undefined` are substituted * by virtual points. */ export type OverlayTuple<T> = [p1: OverlayPoint<T>, p2: OverlayPoint<T>]; /** * Represents a two adjacent marker overlay points. The first point is the point * that is closer to the start of the document, and the second point is the * point that is closer to the end of the document. * * When point is `undefined`, it means the point represents the end of range. * In the complete document it is ABS start or ABS end of the document. */ export type MarkerOverlayPair<T> = [p1: MarkerOverlayPoint<T> | undefined, p2: MarkerOverlayPoint<T> | undefined];