UNPKG

1.33 kBTypeScriptView Raw
1import { ExtendedType, Operation, Path, Point, PointEntry } from '..';
2/**
3 * `Range` objects are a set of points that refer to a specific span of a Slate
4 * document. They can define a span inside a single node or a can span across
5 * multiple nodes.
6 */
7export interface BaseRange {
8 anchor: Point;
9 focus: Point;
10}
11export declare type Range = ExtendedType<'Range', BaseRange>;
12export interface RangeInterface {
13 edges: (range: Range, options?: {
14 reverse?: boolean;
15 }) => [Point, Point];
16 end: (range: Range) => Point;
17 equals: (range: Range, another: Range) => boolean;
18 includes: (range: Range, target: Path | Point | Range) => boolean;
19 intersection: (range: Range, another: Range) => Range | null;
20 isBackward: (range: Range) => boolean;
21 isCollapsed: (range: Range) => boolean;
22 isExpanded: (range: Range) => boolean;
23 isForward: (range: Range) => boolean;
24 isRange: (value: any) => value is Range;
25 points: (range: Range) => Generator<PointEntry, void, undefined>;
26 start: (range: Range) => Point;
27 transform: (range: Range, op: Operation, options?: {
28 affinity?: 'forward' | 'backward' | 'outward' | 'inward' | null;
29 }) => Range | null;
30}
31export declare const Range: RangeInterface;
32//# sourceMappingURL=range.d.ts.map
\No newline at end of file