UNPKG

ast-types

Version:

Esprima-compatible implementation of the Mozilla JS Parser API

26 lines (25 loc) 847 B
import { Fork } from "../types"; import { ASTNode } from "./types"; export interface Path<V = any> { value: V; parentPath: any; name: any; __childCache: object | null; getValueProperty(name: any): any; get(...names: any[]): any; each(callback: any, context: any): any; map(callback: any, context: any): any; filter(callback: any, context: any): any; shift(): any; unshift(...args: any[]): any; push(...args: any[]): any; pop(): any; insertAt(index: number, ...args: any[]): any; insertBefore(...args: any[]): any; insertAfter(...args: any[]): any; replace(replacement?: ASTNode, ...args: ASTNode[]): any; } export interface PathConstructor { new <V = any>(value: any, parentPath?: any, name?: any): Path<V>; } export default function pathPlugin(fork: Fork): PathConstructor;