| | |
| | | // Type definitions for @babel/traverse 7.14 |
| | | // Type definitions for @babel/traverse 7.17 |
| | | // Project: https://github.com/babel/babel/tree/main/packages/babel-traverse, https://babeljs.io |
| | | // Definitions by: Troy Gerwien <https://github.com/yortus> |
| | | // Marvin Hagemeister <https://github.com/marvinhagemeister> |
| | |
| | | |
| | | crawl(): void; |
| | | |
| | | push(opts: { id: t.LVal; init?: t.Expression | undefined; unique?: boolean | undefined; kind?: 'var' | 'let' | 'const' | undefined }): void; |
| | | push(opts: { |
| | | id: t.LVal; |
| | | init?: t.Expression | undefined; |
| | | unique?: boolean | undefined; |
| | | kind?: 'var' | 'let' | 'const' | undefined; |
| | | }): void; |
| | | |
| | | getProgramParent(): Scope; |
| | | |
| | |
| | | constantViolations: NodePath[]; |
| | | } |
| | | |
| | | export type Visitor<S = {}> = VisitNodeObject<S, Node> & |
| | | { |
| | | [Type in Node['type']]?: VisitNode<S, Extract<Node, { type: Type }>>; |
| | | } & |
| | | { |
| | | [K in keyof t.Aliases]?: VisitNode<S, t.Aliases[K]>; |
| | | }; |
| | | export type Visitor<S = {}> = VisitNodeObject<S, Node> & { |
| | | [Type in Node['type']]?: VisitNode<S, Extract<Node, { type: Type }>>; |
| | | } & { |
| | | [K in keyof t.Aliases]?: VisitNode<S, t.Aliases[K]>; |
| | | }; |
| | | |
| | | export type VisitNode<S, P extends Node> = VisitNodeFunction<S, P> | VisitNodeObject<S, P>; |
| | | |
| | |
| | | setData(key: string, val: any): any; |
| | | |
| | | getData(key: string, def?: any): any; |
| | | |
| | | hasNode(): this is NodePath<NonNullable<this['node']>>; |
| | | |
| | | buildCodeFrameError<TError extends Error>(msg: string, Error?: new (msg: string) => TError): TError; |
| | | |
| | |
| | | context?: boolean | TraversalContext, |
| | | ): T[K] extends Array<Node | null | undefined> |
| | | ? Array<NodePath<T[K][number]>> |
| | | : T[K] extends Array<Node | null | undefined> | null | undefined |
| | | ? Array<NodePath<NonNullable<T[K]>[number]>> | NodePath<null | undefined> |
| | | : T[K] extends Node | null | undefined |
| | | ? NodePath<T[K]> |
| | | : never; |