1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // Type definitions for non-npm package Unist 2.0
- // Project: https://github.com/syntax-tree/unist
- // Definitions by: bizen241 <https://github.com/bizen241>
- // Jun Lu <https://github.com/lujun2>
- // Hernan Rajchert <https://github.com/hrajchert>
- // Titus Wormer <https://github.com/wooorm>
- // Junyoung Choi <https://github.com/rokt33r>
- // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
- // TypeScript Version: 3.0
-
- /**
- * Syntactic units in unist syntax trees are called nodes.
- */
- export interface Node {
- /**
- * The variant of a node.
- */
- type: string;
-
- /**
- * Information from the ecosystem.
- */
- data?: Data | undefined;
-
- /**
- * Location of a node in a source document.
- * Must not be present if a node is generated.
- */
- position?: Position | undefined;
-
- [key: string]: unknown;
- }
-
- /**
- * Information associated by the ecosystem with the node.
- * Space is guaranteed to never be specified by unist or specifications
- * implementing unist.
- */
- export interface Data {
- [key: string]: unknown;
- }
-
- /**
- * Location of a node in a source file.
- */
- export interface Position {
- /**
- * Place of the first character of the parsed source region.
- */
- start: Point;
-
- /**
- * Place of the first character after the parsed source region.
- */
- end: Point;
-
- /**
- * Start column at each index (plus start line) in the source region,
- * for elements that span multiple lines.
- */
- indent?: number[] | undefined;
- }
-
- /**
- * One place in a source file.
- */
- export interface Point {
- /**
- * Line in a source file (1-indexed integer).
- */
- line: number;
-
- /**
- * Column in a source file (1-indexed integer).
- */
- column: number;
- /**
- * Character in a source file (0-indexed integer).
- */
- offset?: number | undefined;
- }
-
- /**
- * Nodes containing other nodes.
- */
- export interface Parent extends Node {
- /**
- * List representing the children of a node.
- */
- children: Node[];
- }
-
- /**
- * Nodes containing a value.
- */
- export interface Literal extends Node {
- value: unknown;
- }
|