UNPKG

846 BTypeScriptView Raw
1/**
2 * @description 定义数据类型
3 * @author fangzhicong
4 */
5/**
6 * 差异备份:节点相对位置信息
7 */
8export interface TargetPosition {
9 type: 'before' | 'after' | 'parent';
10 target: Node;
11}
12/**
13 * 差异备份:Node 节点
14 */
15export interface DiffNodes {
16 add?: Node[];
17 remove?: Node[];
18}
19/**
20 * 差异备份:处理后的 MutationRecord 对象
21 */
22export interface Compile {
23 type: 'node' | 'text' | 'attr';
24 target: Element | Node;
25 attr: string;
26 value: string;
27 oldValue: string;
28 nodes: DiffNodes;
29 position: TargetPosition;
30}
31/**
32 * Range 缓存
33 */
34export interface RangeItem {
35 start: [Node, number];
36 end: [Node, number];
37 root: Node;
38 collapsed: boolean;
39}
40/**
41 * scroll 数据。[last-scrollTop, current-scrollTop]
42 */
43export declare type ScrollItem = [number, number];