From d689e2b61669805e64f9ad4ecc5a80f72d8ef8fe Mon Sep 17 00:00:00 2001 From: Jake Runzer Date: Tue, 11 Jun 2019 02:30:45 +0100 Subject: [PATCH] babel__traverse: allow undefined scope for both traverse functions (#35840) --- types/babel__traverse/babel__traverse-tests.ts | 2 ++ types/babel__traverse/index.d.ts | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/types/babel__traverse/babel__traverse-tests.ts b/types/babel__traverse/babel__traverse-tests.ts index 2bc5a404d6..72f04e380b 100644 --- a/types/babel__traverse/babel__traverse-tests.ts +++ b/types/babel__traverse/babel__traverse-tests.ts @@ -149,6 +149,8 @@ const VisitorStateTest: Visitor = { } }; +traverse(ast, VisitorStateTest, undefined, { someState: "test" }); + const VisitorAliasTest: Visitor = { Function() {}, Expression() {}, diff --git a/types/babel__traverse/index.d.ts b/types/babel__traverse/index.d.ts index 148f5dd7af..0e9ff767b1 100644 --- a/types/babel__traverse/index.d.ts +++ b/types/babel__traverse/index.d.ts @@ -11,8 +11,20 @@ import * as t from "@babel/types"; export type Node = t.Node; -export default function traverse(parent: Node | Node[], opts: TraverseOptions, scope: Scope, state: S, parentPath?: NodePath): void; -export default function traverse(parent: Node | Node[], opts: TraverseOptions, scope?: Scope, state?: any, parentPath?: NodePath): void; +export default function traverse( + parent: Node | Node[], + opts: TraverseOptions, + scope: Scope | undefined, + state: S, + parentPath?: NodePath, +): void; +export default function traverse( + parent: Node | Node[], + opts: TraverseOptions, + scope?: Scope, + state?: any, + parentPath?: NodePath, +): void; export interface TraverseOptions extends Visitor { scope?: Scope;