1 | /** @typedef { import('estree').BaseNode} BaseNode */
|
---|
2 | /** @typedef { import('./walker.js').WalkerContext} WalkerContext */
|
---|
3 | /** @typedef {(
|
---|
4 | * this: WalkerContext,
|
---|
5 | * node: BaseNode,
|
---|
6 | * parent: BaseNode,
|
---|
7 | * key: string,
|
---|
8 | * index: number
|
---|
9 | * ) => void} SyncHandler */
|
---|
10 | export class SyncWalker extends WalkerBase {
|
---|
11 | /**
|
---|
12 | *
|
---|
13 | * @param {SyncHandler} enter
|
---|
14 | * @param {SyncHandler} leave
|
---|
15 | */
|
---|
16 | constructor(enter: (this: {
|
---|
17 | skip: () => void;
|
---|
18 | remove: () => void;
|
---|
19 | replace: (node: import("estree").BaseNode) => void;
|
---|
20 | }, node: import("estree").BaseNode, parent: import("estree").BaseNode, key: string, index: number) => void, leave: (this: {
|
---|
21 | skip: () => void;
|
---|
22 | remove: () => void;
|
---|
23 | replace: (node: import("estree").BaseNode) => void;
|
---|
24 | }, node: import("estree").BaseNode, parent: import("estree").BaseNode, key: string, index: number) => void);
|
---|
25 | /** @type {SyncHandler} */
|
---|
26 | enter: SyncHandler;
|
---|
27 | /** @type {SyncHandler} */
|
---|
28 | leave: SyncHandler;
|
---|
29 | /**
|
---|
30 | *
|
---|
31 | * @param {BaseNode} node
|
---|
32 | * @param {BaseNode} parent
|
---|
33 | * @param {string} [prop]
|
---|
34 | * @param {number} [index]
|
---|
35 | * @returns {BaseNode}
|
---|
36 | */
|
---|
37 | visit(node: import("estree").BaseNode, parent: import("estree").BaseNode, prop?: string, index?: number): import("estree").BaseNode;
|
---|
38 | should_skip: any;
|
---|
39 | should_remove: any;
|
---|
40 | replacement: any;
|
---|
41 | }
|
---|
42 | export type BaseNode = import("estree").BaseNode;
|
---|
43 | export type WalkerContext = {
|
---|
44 | skip: () => void;
|
---|
45 | remove: () => void;
|
---|
46 | replace: (node: import("estree").BaseNode) => void;
|
---|
47 | };
|
---|
48 | export type SyncHandler = (this: {
|
---|
49 | skip: () => void;
|
---|
50 | remove: () => void;
|
---|
51 | replace: (node: import("estree").BaseNode) => void;
|
---|
52 | }, node: import("estree").BaseNode, parent: import("estree").BaseNode, key: string, index: number) => void;
|
---|
53 | import { WalkerBase } from "./walker.js";
|
---|