summaryrefslogtreecommitdiff
path: root/alarm/node_modules/acorn-walk/dist/walk.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'alarm/node_modules/acorn-walk/dist/walk.d.ts')
-rw-r--r--alarm/node_modules/acorn-walk/dist/walk.d.ts112
1 files changed, 112 insertions, 0 deletions
diff --git a/alarm/node_modules/acorn-walk/dist/walk.d.ts b/alarm/node_modules/acorn-walk/dist/walk.d.ts
new file mode 100644
index 0000000..00cc005
--- /dev/null
+++ b/alarm/node_modules/acorn-walk/dist/walk.d.ts
@@ -0,0 +1,112 @@
+import {Node} from 'acorn';
+
+declare module "acorn-walk" {
+ type FullWalkerCallback<TState> = (
+ node: Node,
+ state: TState,
+ type: string
+ ) => void;
+
+ type FullAncestorWalkerCallback<TState> = (
+ node: Node,
+ state: TState | Node[],
+ ancestors: Node[],
+ type: string
+ ) => void;
+ type WalkerCallback<TState> = (node: Node, state: TState) => void;
+
+ type SimpleWalkerFn<TState> = (
+ node: Node,
+ state: TState
+ ) => void;
+
+ type AncestorWalkerFn<TState> = (
+ node: Node,
+ state: TState| Node[],
+ ancestors: Node[]
+ ) => void;
+
+ type RecursiveWalkerFn<TState> = (
+ node: Node,
+ state: TState,
+ callback: WalkerCallback<TState>
+ ) => void;
+
+ type SimpleVisitors<TState> = {
+ [type: string]: SimpleWalkerFn<TState>
+ };
+
+ type AncestorVisitors<TState> = {
+ [type: string]: AncestorWalkerFn<TState>
+ };
+
+ type RecursiveVisitors<TState> = {
+ [type: string]: RecursiveWalkerFn<TState>
+ };
+
+ type FindPredicate = (type: string, node: Node) => boolean;
+
+ interface Found<TState> {
+ node: Node,
+ state: TState
+ }
+
+ export function simple<TState>(
+ node: Node,
+ visitors: SimpleVisitors<TState>,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): void;
+
+ export function ancestor<TState>(
+ node: Node,
+ visitors: AncestorVisitors<TState>,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): void;
+
+ export function recursive<TState>(
+ node: Node,
+ state: TState,
+ functions: RecursiveVisitors<TState>,
+ base?: RecursiveVisitors<TState>
+ ): void;
+
+ export function full<TState>(
+ node: Node,
+ callback: FullWalkerCallback<TState>,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): void;
+
+ export function fullAncestor<TState>(
+ node: Node,
+ callback: FullAncestorWalkerCallback<TState>,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): void;
+
+ export function make<TState>(
+ functions: RecursiveVisitors<TState>,
+ base?: RecursiveVisitors<TState>
+ ): RecursiveVisitors<TState>;
+
+ export function findNodeAt<TState>(
+ node: Node,
+ start: number | undefined,
+ end?: number | undefined,
+ type?: FindPredicate | string,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): Found<TState> | undefined;
+
+ export function findNodeAround<TState>(
+ node: Node,
+ start: number | undefined,
+ type?: FindPredicate | string,
+ base?: RecursiveVisitors<TState>,
+ state?: TState
+ ): Found<TState> | undefined;
+
+ export const findNodeAfter: typeof findNodeAround;
+}