JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ TsDeclareStatement { declare_token: DECLARE_KW@0..8 "declare" [] [Whitespace(" ")], declaration: TsEnumDeclaration { const_token: missing (optional), enum_token: ENUM_KW@8..13 "enum" [] [Whitespace(" ")], id: JsIdentifierBinding { name_token: IDENT@13..15 "A" [] [Whitespace(" ")], }, l_curly_token: L_CURLY@15..17 "{" [] [Whitespace(" ")], members: TsEnumMemberList [ TsEnumMember { name: JsLiteralMemberName { value: IDENT@17..18 "X" [] [], }, initializer: missing (optional), }, COMMA@18..20 "," [] [Whitespace(" ")], TsEnumMember { name: JsLiteralMemberName { value: IDENT@20..21 "Y" [] [], }, initializer: missing (optional), }, COMMA@21..23 "," [] [Whitespace(" ")], TsEnumMember { name: JsLiteralMemberName { value: IDENT@23..25 "Z" [] [Whitespace(" ")], }, initializer: missing (optional), }, ], r_curly_token: R_CURLY@25..26 "}" [] [], }, }, TsDeclareStatement { declare_token: DECLARE_KW@26..35 "declare" [Newline("\n")] [Whitespace(" ")], declaration: TsEnumDeclaration { const_token: CONST_KW@35..41 "const" [] [Whitespace(" ")], enum_token: ENUM_KW@41..46 "enum" [] [Whitespace(" ")], id: JsIdentifierBinding { name_token: IDENT@46..48 "B" [] [Whitespace(" ")], }, l_curly_token: L_CURLY@48..50 "{" [] [Whitespace(" ")], members: TsEnumMemberList [ TsEnumMember { name: JsLiteralMemberName { value: IDENT@50..51 "X" [] [], }, initializer: missing (optional), }, COMMA@51..53 "," [] [Whitespace(" ")], TsEnumMember { name: JsLiteralMemberName { value: IDENT@53..54 "Y" [] [], }, initializer: missing (optional), }, COMMA@54..56 "," [] [Whitespace(" ")], TsEnumMember { name: JsLiteralMemberName { value: IDENT@56..58 "Z" [] [Whitespace(" ")], }, initializer: missing (optional), }, ], r_curly_token: R_CURLY@58..59 "}" [] [], }, }, ], eof_token: EOF@59..60 "" [Newline("\n")] [], } 0: JS_MODULE@0..60 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..59 0: TS_DECLARE_STATEMENT@0..26 0: DECLARE_KW@0..8 "declare" [] [Whitespace(" ")] 1: TS_ENUM_DECLARATION@8..26 0: (empty) 1: ENUM_KW@8..13 "enum" [] [Whitespace(" ")] 2: JS_IDENTIFIER_BINDING@13..15 0: IDENT@13..15 "A" [] [Whitespace(" ")] 3: L_CURLY@15..17 "{" [] [Whitespace(" ")] 4: TS_ENUM_MEMBER_LIST@17..25 0: TS_ENUM_MEMBER@17..18 0: JS_LITERAL_MEMBER_NAME@17..18 0: IDENT@17..18 "X" [] [] 1: (empty) 1: COMMA@18..20 "," [] [Whitespace(" ")] 2: TS_ENUM_MEMBER@20..21 0: JS_LITERAL_MEMBER_NAME@20..21 0: IDENT@20..21 "Y" [] [] 1: (empty) 3: COMMA@21..23 "," [] [Whitespace(" ")] 4: TS_ENUM_MEMBER@23..25 0: JS_LITERAL_MEMBER_NAME@23..25 0: IDENT@23..25 "Z" [] [Whitespace(" ")] 1: (empty) 5: R_CURLY@25..26 "}" [] [] 1: TS_DECLARE_STATEMENT@26..59 0: DECLARE_KW@26..35 "declare" [Newline("\n")] [Whitespace(" ")] 1: TS_ENUM_DECLARATION@35..59 0: CONST_KW@35..41 "const" [] [Whitespace(" ")] 1: ENUM_KW@41..46 "enum" [] [Whitespace(" ")] 2: JS_IDENTIFIER_BINDING@46..48 0: IDENT@46..48 "B" [] [Whitespace(" ")] 3: L_CURLY@48..50 "{" [] [Whitespace(" ")] 4: TS_ENUM_MEMBER_LIST@50..58 0: TS_ENUM_MEMBER@50..51 0: JS_LITERAL_MEMBER_NAME@50..51 0: IDENT@50..51 "X" [] [] 1: (empty) 1: COMMA@51..53 "," [] [Whitespace(" ")] 2: TS_ENUM_MEMBER@53..54 0: JS_LITERAL_MEMBER_NAME@53..54 0: IDENT@53..54 "Y" [] [] 1: (empty) 3: COMMA@54..56 "," [] [Whitespace(" ")] 4: TS_ENUM_MEMBER@56..58 0: JS_LITERAL_MEMBER_NAME@56..58 0: IDENT@56..58 "Z" [] [Whitespace(" ")] 1: (empty) 5: R_CURLY@58..59 "}" [] [] 4: EOF@59..60 "" [Newline("\n")] []