UNPKG

@readium/shared

Version:

Shared models to be used across other Readium projects and implementations in Typescript

37 lines (36 loc) 1.48 kB
/** * A serializable representation of a boundary point in a DOM Range. * * The [cssSelector] field always references a DOM element. If the original DOM Range * start/endContainer property references a DOM text node, the [textNodeIndex] field is used to * complement the CSS Selector; thereby providing a pointer to a child DOM text node; and * [charOffset] is used to tell a position within the character data of that DOM text node * (just as the DOM Range start/endOffset does). If the original DOM Range start/endContainer * property references a DOM Element, then the [textNodeIndex] field is used to designate the * child Text node (just as the DOM Range start/endOffset does), and the optional [charOffset] * field is not used (as there is no explicit position within the character data of the text * node). * * https://github.com/readium/architecture/blob/master/models/locators/extensions/html.md#the-start-and-end-object */ export declare class DomRangePoint { cssSelector: string; textNodeIndex: number; charOffset?: number; /** * Creates a [DomRange]. */ constructor(values: { cssSelector: string; textNodeIndex: number; charOffset?: number; }); /** * Parses a [DomRangePoint] from its RWPM JSON representation. */ static deserialize(json: any): DomRangePoint | undefined; /** * Serializes a [DomRangePoint] to its RWPM JSON representation. */ serialize(): any; }