diff --git a/packages/babel-parser/src/plugins/estree.ts b/packages/babel-parser/src/plugins/estree.ts index b8538efe882d..98c83cc41702 100644 --- a/packages/babel-parser/src/plugins/estree.ts +++ b/packages/babel-parser/src/plugins/estree.ts @@ -426,6 +426,9 @@ export default (superClass: typeof Parser) => ) { (node as N.Node as N.EstreeImportExpression).options = node.arguments[1] ?? null; + // compatibility with previous ESTree AST + (node as N.Node as N.EstreeImportExpression).attributes = + node.arguments[1] ?? null; } // arguments isn't optional in the type definition delete node.arguments; diff --git a/packages/babel-parser/src/types.d.ts b/packages/babel-parser/src/types.d.ts index 868f234fe69f..1c21761bafff 100644 --- a/packages/babel-parser/src/types.d.ts +++ b/packages/babel-parser/src/types.d.ts @@ -1220,6 +1220,10 @@ export interface EstreeImportExpression extends NodeBase { type: "ImportExpression"; source: Expression; options?: Expression | null; + /** + * @deprecated Use options instead + */ + attributes?: Expression | null; } export interface EstreePrivateIdentifier extends NodeBase {