acorn

  • Version 8.11.3
  • Published
  • 531 kB
  • No dependencies
  • MIT license

Install

npm i acorn
yarn add acorn
pnpm add acorn

Overview

ECMAScript parser

Index

Variables

Functions

Classes

Interfaces

Type Aliases

Variables

variable defaultOptions

const defaultOptions: Options;

    variable tokTypes

    const tokTypes: {
    num: TokenType;
    regexp: TokenType;
    string: TokenType;
    name: TokenType;
    privateId: TokenType;
    eof: TokenType;
    bracketL: TokenType;
    bracketR: TokenType;
    braceL: TokenType;
    braceR: TokenType;
    parenL: TokenType;
    parenR: TokenType;
    comma: TokenType;
    semi: TokenType;
    colon: TokenType;
    dot: TokenType;
    question: TokenType;
    questionDot: TokenType;
    arrow: TokenType;
    template: TokenType;
    invalidTemplate: TokenType;
    ellipsis: TokenType;
    backQuote: TokenType;
    dollarBraceL: TokenType;
    eq: TokenType;
    assign: TokenType;
    incDec: TokenType;
    prefix: TokenType;
    logicalOR: TokenType;
    logicalAND: TokenType;
    bitwiseOR: TokenType;
    bitwiseXOR: TokenType;
    bitwiseAND: TokenType;
    equality: TokenType;
    relational: TokenType;
    bitShift: TokenType;
    plusMin: TokenType;
    modulo: TokenType;
    star: TokenType;
    slash: TokenType;
    starstar: TokenType;
    coalesce: TokenType;
    _break: TokenType;
    _case: TokenType;
    _catch: TokenType;
    _continue: TokenType;
    _debugger: TokenType;
    _default: TokenType;
    _do: TokenType;
    _else: TokenType;
    _finally: TokenType;
    _for: TokenType;
    _function: TokenType;
    _if: TokenType;
    _return: TokenType;
    _switch: TokenType;
    _throw: TokenType;
    _try: TokenType;
    _var: TokenType;
    _const: TokenType;
    _while: TokenType;
    _with: TokenType;
    _new: TokenType;
    _this: TokenType;
    _super: TokenType;
    _class: TokenType;
    _extends: TokenType;
    _export: TokenType;
    _import: TokenType;
    _null: TokenType;
    _true: TokenType;
    _false: TokenType;
    _in: TokenType;
    _instanceof: TokenType;
    _typeof: TokenType;
    _void: TokenType;
    _delete: TokenType;
    };

      variable version

      const version: string;

        Functions

        function getLineInfo

        getLineInfo: (input: string, offset: number) => Position;

          function parse

          parse: (input: string, options: Options) => Program;

            function parseExpressionAt

            parseExpressionAt: (input: string, pos: number, options: Options) => Expression;

              function tokenizer

              tokenizer: (
              input: string,
              options: Options
              ) => { getToken(): Token; [Symbol.iterator](): Iterator<Token> };

                Classes

                class Parser

                class Parser {}

                  property input

                  input: string;

                    property options

                    options: Options;

                      method extend

                      static extend: (
                      ...plugins: ((BaseParser: typeof Parser) => typeof Parser)[]
                      ) => typeof Parser;

                        method parse

                        static parse: (input: string, options: Options) => Program;

                          method parseExpressionAt

                          static parseExpressionAt: (
                          input: string,
                          pos: number,
                          options: Options
                          ) => Expression;

                            method tokenizer

                            static tokenizer: (
                            input: string,
                            options: Options
                            ) => { getToken(): Token; [Symbol.iterator](): Iterator<Token> };

                              class Token

                              class Token {}

                                property end

                                end: number;

                                  property loc

                                  loc?: SourceLocation;

                                    property range

                                    range?: [number, number];

                                      property start

                                      start: number;

                                        property type

                                        type: TokenType;

                                          class TokenType

                                          class TokenType {}

                                            property keyword

                                            keyword: string;

                                              property label

                                              label: string;

                                                Interfaces

                                                interface AnonymousClassDeclaration

                                                interface AnonymousClassDeclaration extends Class {}

                                                  property id

                                                  id: null;

                                                    property type

                                                    type: 'ClassDeclaration';

                                                      interface AnonymousFunctionDeclaration

                                                      interface AnonymousFunctionDeclaration extends Function {}

                                                        property body

                                                        body: BlockStatement;

                                                          property id

                                                          id: null;

                                                            property type

                                                            type: 'FunctionDeclaration';

                                                              interface ArrayExpression

                                                              interface ArrayExpression extends Node {}

                                                                property elements

                                                                elements: Array<Expression | SpreadElement | null>;

                                                                  property type

                                                                  type: 'ArrayExpression';

                                                                    interface ArrayPattern

                                                                    interface ArrayPattern extends Node {}

                                                                      property elements

                                                                      elements: Array<Pattern | null>;

                                                                        property type

                                                                        type: 'ArrayPattern';

                                                                          interface ArrowFunctionExpression

                                                                          interface ArrowFunctionExpression extends Function {}

                                                                            property type

                                                                            type: 'ArrowFunctionExpression';

                                                                              interface AssignmentExpression

                                                                              interface AssignmentExpression extends Node {}

                                                                                property left

                                                                                left: Pattern;

                                                                                  property operator

                                                                                  operator: AssignmentOperator;

                                                                                    property right

                                                                                    right: Expression;

                                                                                      property type

                                                                                      type: 'AssignmentExpression';

                                                                                        interface AssignmentPattern

                                                                                        interface AssignmentPattern extends Node {}

                                                                                          property left

                                                                                          left: Pattern;

                                                                                            property right

                                                                                            right: Expression;

                                                                                              property type

                                                                                              type: 'AssignmentPattern';

                                                                                                interface AssignmentProperty

                                                                                                interface AssignmentProperty extends Node {}

                                                                                                  property computed

                                                                                                  computed: boolean;

                                                                                                    property key

                                                                                                    key: Expression;

                                                                                                      property kind

                                                                                                      kind: 'init';

                                                                                                        property method

                                                                                                        method: false;

                                                                                                          property shorthand

                                                                                                          shorthand: boolean;

                                                                                                            property type

                                                                                                            type: 'Property';

                                                                                                              property value

                                                                                                              value: Pattern;

                                                                                                                interface AwaitExpression

                                                                                                                interface AwaitExpression extends Node {}

                                                                                                                  property argument

                                                                                                                  argument: Expression;

                                                                                                                    property type

                                                                                                                    type: 'AwaitExpression';

                                                                                                                      interface BinaryExpression

                                                                                                                      interface BinaryExpression extends Node {}

                                                                                                                        property left

                                                                                                                        left: Expression | PrivateIdentifier;

                                                                                                                          property operator

                                                                                                                          operator: BinaryOperator;

                                                                                                                            property right

                                                                                                                            right: Expression;

                                                                                                                              property type

                                                                                                                              type: 'BinaryExpression';

                                                                                                                                interface BlockStatement

                                                                                                                                interface BlockStatement extends Node {}

                                                                                                                                  property body

                                                                                                                                  body: Array<Statement>;

                                                                                                                                    property type

                                                                                                                                    type: 'BlockStatement';

                                                                                                                                      interface BreakStatement

                                                                                                                                      interface BreakStatement extends Node {}

                                                                                                                                        property label

                                                                                                                                        label?: Identifier | null;

                                                                                                                                          property type

                                                                                                                                          type: 'BreakStatement';

                                                                                                                                            interface CallExpression

                                                                                                                                            interface CallExpression extends Node {}

                                                                                                                                              property arguments

                                                                                                                                              arguments: Array<Expression | SpreadElement>;

                                                                                                                                                property callee

                                                                                                                                                callee: Expression | Super;

                                                                                                                                                  property optional

                                                                                                                                                  optional: boolean;

                                                                                                                                                    property type

                                                                                                                                                    type: 'CallExpression';

                                                                                                                                                      interface CatchClause

                                                                                                                                                      interface CatchClause extends Node {}

                                                                                                                                                        property body

                                                                                                                                                        body: BlockStatement;

                                                                                                                                                          property param

                                                                                                                                                          param?: Pattern | null;

                                                                                                                                                            property type

                                                                                                                                                            type: 'CatchClause';

                                                                                                                                                              interface ChainExpression

                                                                                                                                                              interface ChainExpression extends Node {}

                                                                                                                                                                property expression

                                                                                                                                                                expression: MemberExpression | CallExpression;

                                                                                                                                                                  property type

                                                                                                                                                                  type: 'ChainExpression';

                                                                                                                                                                    interface Class

                                                                                                                                                                    interface Class extends Node {}

                                                                                                                                                                      property body

                                                                                                                                                                      body: ClassBody;

                                                                                                                                                                        property id

                                                                                                                                                                        id?: Identifier | null;

                                                                                                                                                                          property superClass

                                                                                                                                                                          superClass?: Expression | null;

                                                                                                                                                                            interface ClassBody

                                                                                                                                                                            interface ClassBody extends Node {}

                                                                                                                                                                              property body

                                                                                                                                                                              body: Array<MethodDefinition | PropertyDefinition | StaticBlock>;

                                                                                                                                                                                property type

                                                                                                                                                                                type: 'ClassBody';

                                                                                                                                                                                  interface ClassDeclaration

                                                                                                                                                                                  interface ClassDeclaration extends Class {}

                                                                                                                                                                                    property id

                                                                                                                                                                                    id: Identifier;

                                                                                                                                                                                      property type

                                                                                                                                                                                      type: 'ClassDeclaration';

                                                                                                                                                                                        interface ClassExpression

                                                                                                                                                                                        interface ClassExpression extends Class {}

                                                                                                                                                                                          property type

                                                                                                                                                                                          type: 'ClassExpression';

                                                                                                                                                                                            interface Comment

                                                                                                                                                                                            interface Comment {}

                                                                                                                                                                                              property end

                                                                                                                                                                                              end: number;

                                                                                                                                                                                                property loc

                                                                                                                                                                                                loc?: SourceLocation;

                                                                                                                                                                                                  property range

                                                                                                                                                                                                  range?: [number, number];

                                                                                                                                                                                                    property start

                                                                                                                                                                                                    start: number;

                                                                                                                                                                                                      property type

                                                                                                                                                                                                      type: 'Line' | 'Block';

                                                                                                                                                                                                        property value

                                                                                                                                                                                                        value: string;

                                                                                                                                                                                                          interface ConditionalExpression

                                                                                                                                                                                                          interface ConditionalExpression extends Node {}

                                                                                                                                                                                                            property alternate

                                                                                                                                                                                                            alternate: Expression;

                                                                                                                                                                                                              property consequent

                                                                                                                                                                                                              consequent: Expression;

                                                                                                                                                                                                                property test

                                                                                                                                                                                                                test: Expression;

                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                  type: 'ConditionalExpression';

                                                                                                                                                                                                                    interface ContinueStatement

                                                                                                                                                                                                                    interface ContinueStatement extends Node {}

                                                                                                                                                                                                                      property label

                                                                                                                                                                                                                      label?: Identifier | null;

                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                        type: 'ContinueStatement';

                                                                                                                                                                                                                          interface DebuggerStatement

                                                                                                                                                                                                                          interface DebuggerStatement extends Node {}

                                                                                                                                                                                                                            property type

                                                                                                                                                                                                                            type: 'DebuggerStatement';

                                                                                                                                                                                                                              interface DoWhileStatement

                                                                                                                                                                                                                              interface DoWhileStatement extends Node {}

                                                                                                                                                                                                                                property body

                                                                                                                                                                                                                                body: Statement;

                                                                                                                                                                                                                                  property test

                                                                                                                                                                                                                                  test: Expression;

                                                                                                                                                                                                                                    property type

                                                                                                                                                                                                                                    type: 'DoWhileStatement';

                                                                                                                                                                                                                                      interface EmptyStatement

                                                                                                                                                                                                                                      interface EmptyStatement extends Node {}

                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                        type: 'EmptyStatement';

                                                                                                                                                                                                                                          interface ExportAllDeclaration

                                                                                                                                                                                                                                          interface ExportAllDeclaration extends Node {}

                                                                                                                                                                                                                                            property exported

                                                                                                                                                                                                                                            exported?: Identifier | Literal | null;

                                                                                                                                                                                                                                              property source

                                                                                                                                                                                                                                              source: Literal;

                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                type: 'ExportAllDeclaration';

                                                                                                                                                                                                                                                  interface ExportDefaultDeclaration

                                                                                                                                                                                                                                                  interface ExportDefaultDeclaration extends Node {}

                                                                                                                                                                                                                                                    property declaration

                                                                                                                                                                                                                                                    declaration:
                                                                                                                                                                                                                                                    | AnonymousFunctionDeclaration
                                                                                                                                                                                                                                                    | FunctionDeclaration
                                                                                                                                                                                                                                                    | AnonymousClassDeclaration
                                                                                                                                                                                                                                                    | ClassDeclaration
                                                                                                                                                                                                                                                    | Expression;

                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                      type: 'ExportDefaultDeclaration';

                                                                                                                                                                                                                                                        interface ExportNamedDeclaration

                                                                                                                                                                                                                                                        interface ExportNamedDeclaration extends Node {}

                                                                                                                                                                                                                                                          property declaration

                                                                                                                                                                                                                                                          declaration?: Declaration | null;

                                                                                                                                                                                                                                                            property source

                                                                                                                                                                                                                                                            source?: Literal | null;

                                                                                                                                                                                                                                                              property specifiers

                                                                                                                                                                                                                                                              specifiers: Array<ExportSpecifier>;

                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                type: 'ExportNamedDeclaration';

                                                                                                                                                                                                                                                                  interface ExportSpecifier

                                                                                                                                                                                                                                                                  interface ExportSpecifier extends Node {}

                                                                                                                                                                                                                                                                    property exported

                                                                                                                                                                                                                                                                    exported: Identifier | Literal;

                                                                                                                                                                                                                                                                      property local

                                                                                                                                                                                                                                                                      local: Identifier | Literal;

                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                        type: 'ExportSpecifier';

                                                                                                                                                                                                                                                                          interface ExpressionStatement

                                                                                                                                                                                                                                                                          interface ExpressionStatement extends Node {}

                                                                                                                                                                                                                                                                            property directive

                                                                                                                                                                                                                                                                            directive?: string;

                                                                                                                                                                                                                                                                              property expression

                                                                                                                                                                                                                                                                              expression: Expression | Literal;

                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                type: 'ExpressionStatement';

                                                                                                                                                                                                                                                                                  interface ForInStatement

                                                                                                                                                                                                                                                                                  interface ForInStatement extends Node {}

                                                                                                                                                                                                                                                                                    property body

                                                                                                                                                                                                                                                                                    body: Statement;

                                                                                                                                                                                                                                                                                      property left

                                                                                                                                                                                                                                                                                      left: VariableDeclaration | Pattern;

                                                                                                                                                                                                                                                                                        property right

                                                                                                                                                                                                                                                                                        right: Expression;

                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                          type: 'ForInStatement';

                                                                                                                                                                                                                                                                                            interface ForOfStatement

                                                                                                                                                                                                                                                                                            interface ForOfStatement extends Node {}

                                                                                                                                                                                                                                                                                              property await

                                                                                                                                                                                                                                                                                              await: boolean;

                                                                                                                                                                                                                                                                                                property body

                                                                                                                                                                                                                                                                                                body: Statement;

                                                                                                                                                                                                                                                                                                  property left

                                                                                                                                                                                                                                                                                                  left: VariableDeclaration | Pattern;

                                                                                                                                                                                                                                                                                                    property right

                                                                                                                                                                                                                                                                                                    right: Expression;

                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                      type: 'ForOfStatement';

                                                                                                                                                                                                                                                                                                        interface ForStatement

                                                                                                                                                                                                                                                                                                        interface ForStatement extends Node {}

                                                                                                                                                                                                                                                                                                          property body

                                                                                                                                                                                                                                                                                                          body: Statement;

                                                                                                                                                                                                                                                                                                            property init

                                                                                                                                                                                                                                                                                                            init?: VariableDeclaration | Expression | null;

                                                                                                                                                                                                                                                                                                              property test

                                                                                                                                                                                                                                                                                                              test?: Expression | null;

                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                type: 'ForStatement';

                                                                                                                                                                                                                                                                                                                  property update

                                                                                                                                                                                                                                                                                                                  update?: Expression | null;

                                                                                                                                                                                                                                                                                                                    interface Function

                                                                                                                                                                                                                                                                                                                    interface Function extends Node {}

                                                                                                                                                                                                                                                                                                                      property async

                                                                                                                                                                                                                                                                                                                      async: boolean;

                                                                                                                                                                                                                                                                                                                        property body

                                                                                                                                                                                                                                                                                                                        body: BlockStatement | Expression;

                                                                                                                                                                                                                                                                                                                          property expression

                                                                                                                                                                                                                                                                                                                          expression: boolean;

                                                                                                                                                                                                                                                                                                                            property generator

                                                                                                                                                                                                                                                                                                                            generator: boolean;

                                                                                                                                                                                                                                                                                                                              property id

                                                                                                                                                                                                                                                                                                                              id?: Identifier | null;

                                                                                                                                                                                                                                                                                                                                property params

                                                                                                                                                                                                                                                                                                                                params: Array<Pattern>;

                                                                                                                                                                                                                                                                                                                                  interface FunctionDeclaration

                                                                                                                                                                                                                                                                                                                                  interface FunctionDeclaration extends Function {}

                                                                                                                                                                                                                                                                                                                                    property body

                                                                                                                                                                                                                                                                                                                                    body: BlockStatement;

                                                                                                                                                                                                                                                                                                                                      property id

                                                                                                                                                                                                                                                                                                                                      id: Identifier;

                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                        type: 'FunctionDeclaration';

                                                                                                                                                                                                                                                                                                                                          interface FunctionExpression

                                                                                                                                                                                                                                                                                                                                          interface FunctionExpression extends Function {}

                                                                                                                                                                                                                                                                                                                                            property body

                                                                                                                                                                                                                                                                                                                                            body: BlockStatement;

                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                              type: 'FunctionExpression';

                                                                                                                                                                                                                                                                                                                                                interface Identifier

                                                                                                                                                                                                                                                                                                                                                interface Identifier extends Node {}

                                                                                                                                                                                                                                                                                                                                                  property name

                                                                                                                                                                                                                                                                                                                                                  name: string;

                                                                                                                                                                                                                                                                                                                                                    property type

                                                                                                                                                                                                                                                                                                                                                    type: 'Identifier';

                                                                                                                                                                                                                                                                                                                                                      interface IfStatement

                                                                                                                                                                                                                                                                                                                                                      interface IfStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                        property alternate

                                                                                                                                                                                                                                                                                                                                                        alternate?: Statement | null;

                                                                                                                                                                                                                                                                                                                                                          property consequent

                                                                                                                                                                                                                                                                                                                                                          consequent: Statement;

                                                                                                                                                                                                                                                                                                                                                            property test

                                                                                                                                                                                                                                                                                                                                                            test: Expression;

                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                              type: 'IfStatement';

                                                                                                                                                                                                                                                                                                                                                                interface ImportDeclaration

                                                                                                                                                                                                                                                                                                                                                                interface ImportDeclaration extends Node {}

                                                                                                                                                                                                                                                                                                                                                                  property source

                                                                                                                                                                                                                                                                                                                                                                  source: Literal;

                                                                                                                                                                                                                                                                                                                                                                    property specifiers

                                                                                                                                                                                                                                                                                                                                                                    specifiers: Array<
                                                                                                                                                                                                                                                                                                                                                                    ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier
                                                                                                                                                                                                                                                                                                                                                                    >;

                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                      type: 'ImportDeclaration';

                                                                                                                                                                                                                                                                                                                                                                        interface ImportDefaultSpecifier

                                                                                                                                                                                                                                                                                                                                                                        interface ImportDefaultSpecifier extends Node {}

                                                                                                                                                                                                                                                                                                                                                                          property local

                                                                                                                                                                                                                                                                                                                                                                          local: Identifier;

                                                                                                                                                                                                                                                                                                                                                                            property type

                                                                                                                                                                                                                                                                                                                                                                            type: 'ImportDefaultSpecifier';

                                                                                                                                                                                                                                                                                                                                                                              interface ImportExpression

                                                                                                                                                                                                                                                                                                                                                                              interface ImportExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                property source

                                                                                                                                                                                                                                                                                                                                                                                source: Expression;

                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                  type: 'ImportExpression';

                                                                                                                                                                                                                                                                                                                                                                                    interface ImportNamespaceSpecifier

                                                                                                                                                                                                                                                                                                                                                                                    interface ImportNamespaceSpecifier extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                      property local

                                                                                                                                                                                                                                                                                                                                                                                      local: Identifier;

                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                        type: 'ImportNamespaceSpecifier';

                                                                                                                                                                                                                                                                                                                                                                                          interface ImportSpecifier

                                                                                                                                                                                                                                                                                                                                                                                          interface ImportSpecifier extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                            property imported

                                                                                                                                                                                                                                                                                                                                                                                            imported: Identifier | Literal;

                                                                                                                                                                                                                                                                                                                                                                                              property local

                                                                                                                                                                                                                                                                                                                                                                                              local: Identifier;

                                                                                                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                                                                                                type: 'ImportSpecifier';

                                                                                                                                                                                                                                                                                                                                                                                                  interface LabeledStatement

                                                                                                                                                                                                                                                                                                                                                                                                  interface LabeledStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                    property body

                                                                                                                                                                                                                                                                                                                                                                                                    body: Statement;

                                                                                                                                                                                                                                                                                                                                                                                                      property label

                                                                                                                                                                                                                                                                                                                                                                                                      label: Identifier;

                                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                                        type: 'LabeledStatement';

                                                                                                                                                                                                                                                                                                                                                                                                          interface Literal

                                                                                                                                                                                                                                                                                                                                                                                                          interface Literal extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                            property bigint

                                                                                                                                                                                                                                                                                                                                                                                                            bigint?: string;

                                                                                                                                                                                                                                                                                                                                                                                                              property raw

                                                                                                                                                                                                                                                                                                                                                                                                              raw?: string;

                                                                                                                                                                                                                                                                                                                                                                                                                property regex

                                                                                                                                                                                                                                                                                                                                                                                                                regex?: {
                                                                                                                                                                                                                                                                                                                                                                                                                pattern: string;
                                                                                                                                                                                                                                                                                                                                                                                                                flags: string;
                                                                                                                                                                                                                                                                                                                                                                                                                };

                                                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                                                  type: 'Literal';

                                                                                                                                                                                                                                                                                                                                                                                                                    property value

                                                                                                                                                                                                                                                                                                                                                                                                                    value?: string | boolean | null | number | RegExp | bigint;

                                                                                                                                                                                                                                                                                                                                                                                                                      interface LogicalExpression

                                                                                                                                                                                                                                                                                                                                                                                                                      interface LogicalExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                        property left

                                                                                                                                                                                                                                                                                                                                                                                                                        left: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                          property operator

                                                                                                                                                                                                                                                                                                                                                                                                                          operator: LogicalOperator;

                                                                                                                                                                                                                                                                                                                                                                                                                            property right

                                                                                                                                                                                                                                                                                                                                                                                                                            right: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'LogicalExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                interface MemberExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                interface MemberExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                  property computed

                                                                                                                                                                                                                                                                                                                                                                                                                                  computed: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                    property object

                                                                                                                                                                                                                                                                                                                                                                                                                                    object: Expression | Super;

                                                                                                                                                                                                                                                                                                                                                                                                                                      property optional

                                                                                                                                                                                                                                                                                                                                                                                                                                      optional: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                        property property

                                                                                                                                                                                                                                                                                                                                                                                                                                        property: Expression | PrivateIdentifier;

                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'MemberExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                            interface MetaProperty

                                                                                                                                                                                                                                                                                                                                                                                                                                            interface MetaProperty extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                              property meta

                                                                                                                                                                                                                                                                                                                                                                                                                                              meta: Identifier;

                                                                                                                                                                                                                                                                                                                                                                                                                                                property property

                                                                                                                                                                                                                                                                                                                                                                                                                                                property: Identifier;

                                                                                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                  type: 'MetaProperty';

                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface MethodDefinition

                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface MethodDefinition extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                      property computed

                                                                                                                                                                                                                                                                                                                                                                                                                                                      computed: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                        property key

                                                                                                                                                                                                                                                                                                                                                                                                                                                        key: Expression | PrivateIdentifier;

                                                                                                                                                                                                                                                                                                                                                                                                                                                          property kind

                                                                                                                                                                                                                                                                                                                                                                                                                                                          kind: 'constructor' | 'method' | 'get' | 'set';

                                                                                                                                                                                                                                                                                                                                                                                                                                                            property static

                                                                                                                                                                                                                                                                                                                                                                                                                                                            static: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'MethodDefinition';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                property value

                                                                                                                                                                                                                                                                                                                                                                                                                                                                value: FunctionExpression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface NewExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface NewExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property arguments

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    arguments: Array<Expression | SpreadElement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property callee

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      callee: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type: 'NewExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Node

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property end

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            end: number;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property loc

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              loc?: SourceLocation | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property range

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                range?: [number, number];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property start

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  start: number;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface ObjectExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface ObjectExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property properties

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        properties: Array<Property | SpreadElement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'ObjectExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ObjectPattern

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ObjectPattern extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property properties

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              properties: Array<AssignmentProperty | RestElement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type: 'ObjectPattern';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Options

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Options {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowAwaitOutsideFunction

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowAwaitOutsideFunction?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • By default, await identifiers are allowed to appear at the top-level scope only if ecmaVersion >= 2022. When enabled, await identifiers are allowed to appear at the top-level scope, but they are still not allowed in non-async functions.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowHashBang

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowHashBang?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When enabled, hashbang directive in the beginning of file is allowed and treated as a line comment. Enabled by default when ecmaVersion >= 2023.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowImportExportEverywhere

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowImportExportEverywhere?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When enabled, import/export statements are not constrained to appearing at the top of the program, and an import.meta expression in a script isn't considered an error.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowReserved

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowReserved?: boolean | 'never';
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • By default, reserved words are only enforced if ecmaVersion >= 5. Set allowReserved to a boolean value to explicitly turn this on an off. When this option has the value "never", reserved words and keywords can also not be used as property names.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowReturnOutsideFunction

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowReturnOutsideFunction?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When enabled, a return at the top level is not considered an error.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property allowSuperOutsideMethod

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    allowSuperOutsideMethod?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When enabled, super identifiers are not constrained to appearing in methods and do not raise an error when they appear elsewhere.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property checkPrivateFields

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    checkPrivateFields?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • By default, the parser will verify that private properties are only used in places where they are valid and have been declared. Set this to false to turn such checks off.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property directSourceFile

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    directSourceFile?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • This value, if given, is stored in every node, whether locations is on or off.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property ecmaVersion

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ecmaVersion: ecmaVersion;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • ecmaVersion indicates the ECMAScript version to parse. Must be either 3, 5, 6 (or 2015), 7 (2016), 8 (2017), 9 (2018), 10 (2019), 11 (2020), 12 (2021), 13 (2022), 14 (2023), or "latest" (the latest version the library supports). This influences support for strict mode, the set of reserved words, and support for new syntax features.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property locations

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    locations?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When locations is on, loc properties holding objects with start and end properties as Position objects will be attached to the nodes.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property onComment

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    onComment?:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | ((
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    isBlock: boolean,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    text: string,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    start: number,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    end: number,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    startLoc?: Position,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    endLoc?: Position
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => void)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Comment[];
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • This takes a export function or an array.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      When a export function is passed, Acorn will call that export function with `(block, text, start, end) parameters whenever a comment is skipped. block` is a boolean indicating whether this is a block (/* *\/) comment, text is the content of the comment, and start and end are character offsets that denote the start and end of the comment. When the locations option is on, two more parameters are passed, the full locations of Position export type of the start and end of the comments.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      When a array is passed, each found comment of Comment export type is pushed to the array.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Note that you are not allowed to call the parser from the callback—that will corrupt its internal state.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property onInsertedSemicolon

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    onInsertedSemicolon?: (lastTokEnd: number, lastTokEndLoc?: Position) => void;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • a callback that will be called when a semicolon is automatically inserted.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Parameter lastTokEnd

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      the position of the comma as an offset

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Parameter lastTokEndLoc

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      location if locations is enabled

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property onToken

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    onToken?: ((token: Token) => void) | Token[];
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • a callback that will cause Acorn to call that export function with object in the same format as tokens returned from tokenizer().getToken(). Note that you are not allowed to call the parser from the callback—that will corrupt its internal state.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property onTrailingComma

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    onTrailingComma?: (lastTokEnd: number, lastTokEndLoc?: Position) => void;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • similar to onInsertedSemicolon, but for trailing commas

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Parameter lastTokEnd

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      the position of the comma as an offset

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Parameter lastTokEndLoc

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      location if locations is enabled

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property preserveParens

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    preserveParens?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When enabled, parenthesized expressions are represented by (non-standard) ParenthesizedExpression nodes

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property program

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    program?: Node;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • It is possible to parse multiple files into a single AST by passing the tree produced by parsing the first file as program option in subsequent parses. This will add the toplevel forms of the parsed file to the Program (top) node of an existing parse tree.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property ranges

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ranges?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • Nodes have their start and end characters offsets recorded in start and end properties (directly on the node, rather than the loc object, which holds line/column data. To also add a [semi-standardized][range] range property holding a `[start, end] array with the same numbers, set the ranges` option to true.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property sourceFile

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    sourceFile?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • When locations is on, you can pass this to record the source file in every node's loc object.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property sourceType

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    sourceType?: 'script' | 'module';
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    • sourceType indicates the mode the code should be parsed in. Can be either "script" or "module". This influences global strict mode and parsing of import and export declarations.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ParenthesizedExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ParenthesizedExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property expression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      expression: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type: 'ParenthesizedExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Position

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Position {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property column

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            column: number;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • 0-based

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property line

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            line: number;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            • 1-based

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface PrivateIdentifier

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface PrivateIdentifier extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property name

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              name: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type: 'PrivateIdentifier';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Program

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Program extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property body

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    body: Array<Statement | ModuleDeclaration>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property sourceType

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      sourceType: 'script' | 'module';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type: 'Program';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Property

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface Property extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property computed

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            computed: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property key

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              key: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property kind

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                kind: 'init' | 'get' | 'set';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property method

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property shorthand

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    shorthand: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'Property';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property value

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        value: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface PropertyDefinition

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface PropertyDefinition extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property computed

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            computed: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property key

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              key: Expression | PrivateIdentifier;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property static

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                static: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type: 'PropertyDefinition';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property value

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    value?: Expression | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface RestElement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface RestElement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        argument: Pattern;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'RestElement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ReturnStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ReturnStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              argument?: Expression | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type: 'ReturnStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface SequenceExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface SequenceExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property expressions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    expressions: Array<Expression>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'SequenceExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SourceLocation

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SourceLocation {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property end

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          end: Position;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property source

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            source?: string | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property start

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              start: Position;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SpreadElement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SpreadElement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  argument: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type: 'SpreadElement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface StaticBlock

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface StaticBlock extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property body

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        body: Array<Statement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'StaticBlock';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface Super

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface Super extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'Super';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SwitchCase

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SwitchCase extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property consequent

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  consequent: Array<Statement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property test

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    test?: Expression | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'SwitchCase';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SwitchStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SwitchStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property cases

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          cases: Array<SwitchCase>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property discriminant

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            discriminant: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'SwitchStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TaggedTemplateExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TaggedTemplateExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property quasi

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  quasi: TemplateLiteral;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property tag

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    tag: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'TaggedTemplateExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface TemplateElement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface TemplateElement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property tail

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          tail: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type: 'TemplateElement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property value

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              value: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              cooked?: string | null;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              raw: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TemplateLiteral

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TemplateLiteral extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property expressions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  expressions: Array<Expression>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property quasis

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    quasis: Array<TemplateElement>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'TemplateLiteral';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface ThisExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface ThisExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'ThisExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ThrowStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface ThrowStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              argument: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type: 'ThrowStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface TryStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface TryStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property block

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    block: BlockStatement;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property finalizer

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      finalizer?: BlockStatement | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property handler

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        handler?: CatchClause | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type: 'TryStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface UnaryExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface UnaryExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              argument: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property operator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                operator: UnaryOperator;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property prefix

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  prefix: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type: 'UnaryExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface UpdateExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      interface UpdateExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        argument: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property operator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          operator: UpdateOperator;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property prefix

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            prefix: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'UpdateExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface VariableDeclaration

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface VariableDeclaration extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property declarations

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  declarations: Array<VariableDeclarator>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property kind

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    kind: 'var' | 'let' | 'const';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'VariableDeclaration';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface VariableDeclarator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface VariableDeclarator extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property id

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          id: Pattern;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property init

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            init?: Expression | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'VariableDeclarator';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface WhileStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface WhileStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property body

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  body: Statement;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property test

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    test: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'WhileStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface WithStatement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface WithStatement extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property body

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          body: Statement;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property object

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            object: Expression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: 'WithStatement';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface YieldExpression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface YieldExpression extends Node {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property argument

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  argument?: Expression | null;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property delegate

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    delegate: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type: 'YieldExpression';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Type Aliases

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type AnyNode

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type AnyNode =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Statement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Expression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Declaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ModuleDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Literal
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Program
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | SwitchCase
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | CatchClause
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Property
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Super
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | SpreadElement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | TemplateElement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | AssignmentProperty
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ObjectPattern
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ArrayPattern
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | RestElement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | AssignmentPattern
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ClassBody
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | MethodDefinition
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | MetaProperty
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ImportSpecifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ImportDefaultSpecifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ImportNamespaceSpecifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ExportSpecifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | AnonymousFunctionDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | AnonymousClassDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | PropertyDefinition
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | PrivateIdentifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | StaticBlock;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type AssignmentOperator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type AssignmentOperator =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '+='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '-='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '*='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '/='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '%='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '<<='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '>>='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '>>>='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '|='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '^='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '&='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '**='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '||='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '&&='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | '??=';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type BinaryOperator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type BinaryOperator =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '=='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '!='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '==='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '!=='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '<'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '<='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '>'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '>='
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '<<'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '>>'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '>>>'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '+'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '-'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '*'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '/'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '%'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '|'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '^'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '&'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 'in'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 'instanceof'
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | '**';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type Declaration

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type Declaration = FunctionDeclaration | VariableDeclaration | ClassDeclaration;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type ecmaVersion

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type ecmaVersion =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 3
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 5
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 6
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 7
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 8
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 9
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 10
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 11
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 12
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 13
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 14
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 15
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2015
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2016
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2017
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2018
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2019
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2020
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2021
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2022
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2023
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 2024
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 'latest';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type Expression

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type Expression =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Identifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Literal
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ThisExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ArrayExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ObjectExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | FunctionExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | UnaryExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | UpdateExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | BinaryExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | AssignmentExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | LogicalExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | MemberExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ConditionalExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | CallExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | NewExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | SequenceExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ArrowFunctionExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | YieldExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | TemplateLiteral
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | TaggedTemplateExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ClassExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | MetaProperty
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | AwaitExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ChainExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ImportExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ParenthesizedExpression;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type LogicalOperator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type LogicalOperator = '||' | '&&' | '??';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type ModuleDeclaration

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type ModuleDeclaration =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | ImportDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | ExportNamedDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | ExportDefaultDeclaration
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | ExportAllDeclaration;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type Pattern

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type Pattern =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Identifier
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | MemberExpression
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ObjectPattern
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | ArrayPattern
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | RestElement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | AssignmentPattern;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Statement

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Statement =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ExpressionStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BlockStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | EmptyStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | DebuggerStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | WithStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ReturnStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | LabeledStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BreakStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ContinueStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | IfStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | SwitchStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ThrowStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | TryStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | WhileStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | DoWhileStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ForStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ForInStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | ForOfStatement
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | Declaration;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type UnaryOperator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type UnaryOperator = '-' | '+' | '!' | '~' | 'typeof' | 'void' | 'delete';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type UpdateOperator

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type UpdateOperator = '++' | '--';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Package Files (1)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Dependencies (0)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                No dependencies.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Dev Dependencies (0)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                No dev dependencies.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Peer Dependencies (0)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                No peer dependencies.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Badge

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/acorn.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                • Markdown
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/acorn)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                • HTML
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  <a href="https://www.jsdocs.io/package/acorn"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>