JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsClassDeclaration { decorators: JsDecoratorList [], abstract_token: missing (optional), class_token: CLASS_KW@0..6 "class" [] [Whitespace(" ")], id: JsIdentifierBinding { name_token: IDENT@6..10 "foo" [] [Whitespace(" ")], }, type_parameters: missing (optional), extends_clause: missing (optional), implements_clause: missing (optional), l_curly_token: L_CURLY@10..11 "{" [] [], members: JsClassMemberList [ JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsLiteralMemberName { value: IDENT@11..22 "property" [Newline("\n"), Whitespace(" ")] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsLiteralMemberName { value: IDENT@22..32 "declare" [Newline("\n"), Whitespace(" ")] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: SEMICOLON@32..33 ";" [] [], }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsLiteralMemberName { value: IDENT@33..56 "initializedProperty" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")], }, property_annotation: missing (optional), value: JsInitializerClause { eq_token: EQ@56..58 "=" [] [Whitespace(" ")], expression: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@58..61 "\"a\"" [] [], }, }, semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsLiteralMemberName { value: JS_STRING_LITERAL@61..67 "\"a\"" [Newline("\n"), Whitespace(" ")] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: SEMICOLON@67..68 ";" [] [], }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsLiteralMemberName { value: JS_NUMBER_LITERAL@68..72 "5" [Newline("\n"), Whitespace(" ")] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsComputedMemberName { l_brack_token: L_BRACK@72..76 "[" [Newline("\n"), Whitespace(" ")] [], expression: JsBinaryExpression { left: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@76..80 "\"a\"" [] [Whitespace(" ")], }, operator_token: PLUS@80..82 "+" [] [Whitespace(" ")], right: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@82..85 "\"b\"" [] [], }, }, r_brack_token: R_BRACK@85..86 "]" [] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [ JsStaticModifier { modifier_token: STATIC_KW@86..96 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")], }, ], name: JsLiteralMemberName { value: IDENT@96..110 "staticProperty" [] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [ JsStaticModifier { modifier_token: STATIC_KW@110..120 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")], }, ], name: JsLiteralMemberName { value: IDENT@120..146 "staticInitializedProperty" [] [Whitespace(" ")], }, property_annotation: missing (optional), value: JsInitializerClause { eq_token: EQ@146..148 "=" [] [Whitespace(" ")], expression: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@148..149 "1" [] [], }, }, semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsPrivateClassMemberName { hash_token: HASH@149..153 "#" [Newline("\n"), Whitespace(" ")] [], id_token: IDENT@153..160 "private" [] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [], name: JsPrivateClassMemberName { hash_token: HASH@160..164 "#" [Newline("\n"), Whitespace(" ")] [], id_token: IDENT@164..183 "privateInitialized" [] [Whitespace(" ")], }, property_annotation: missing (optional), value: JsInitializerClause { eq_token: EQ@183..185 "=" [] [Whitespace(" ")], expression: JsStringLiteralExpression { value_token: JS_STRING_LITERAL@185..188 "\"a\"" [] [], }, }, semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [ JsStaticModifier { modifier_token: STATIC_KW@188..198 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")], }, ], name: JsPrivateClassMemberName { hash_token: HASH@198..199 "#" [] [], id_token: IDENT@199..212 "staticPrivate" [] [], }, property_annotation: missing (optional), value: missing (optional), semicolon_token: missing (optional), }, JsPropertyClassMember { modifiers: JsPropertyModifierList [ JsStaticModifier { modifier_token: STATIC_KW@212..222 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")], }, ], name: JsPrivateClassMemberName { hash_token: HASH@222..223 "#" [] [], id_token: IDENT@223..256 "staticPrivateInitializedProperty" [] [Whitespace(" ")], }, property_annotation: missing (optional), value: JsInitializerClause { eq_token: EQ@256..258 "=" [] [Whitespace(" ")], expression: JsNumberLiteralExpression { value_token: JS_NUMBER_LITERAL@258..259 "1" [] [], }, }, semicolon_token: missing (optional), }, ], r_curly_token: R_CURLY@259..261 "}" [Newline("\n")] [], }, ], eof_token: EOF@261..262 "" [Newline("\n")] [], } 0: JS_MODULE@0..262 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..261 0: JS_CLASS_DECLARATION@0..261 0: JS_DECORATOR_LIST@0..0 1: (empty) 2: CLASS_KW@0..6 "class" [] [Whitespace(" ")] 3: JS_IDENTIFIER_BINDING@6..10 0: IDENT@6..10 "foo" [] [Whitespace(" ")] 4: (empty) 5: (empty) 6: (empty) 7: L_CURLY@10..11 "{" [] [] 8: JS_CLASS_MEMBER_LIST@11..259 0: JS_PROPERTY_CLASS_MEMBER@11..22 0: JS_PROPERTY_MODIFIER_LIST@11..11 1: JS_LITERAL_MEMBER_NAME@11..22 0: IDENT@11..22 "property" [Newline("\n"), Whitespace(" ")] [] 2: (empty) 3: (empty) 4: (empty) 1: JS_PROPERTY_CLASS_MEMBER@22..33 0: JS_PROPERTY_MODIFIER_LIST@22..22 1: JS_LITERAL_MEMBER_NAME@22..32 0: IDENT@22..32 "declare" [Newline("\n"), Whitespace(" ")] [] 2: (empty) 3: (empty) 4: SEMICOLON@32..33 ";" [] [] 2: JS_PROPERTY_CLASS_MEMBER@33..61 0: JS_PROPERTY_MODIFIER_LIST@33..33 1: JS_LITERAL_MEMBER_NAME@33..56 0: IDENT@33..56 "initializedProperty" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")] 2: (empty) 3: JS_INITIALIZER_CLAUSE@56..61 0: EQ@56..58 "=" [] [Whitespace(" ")] 1: JS_STRING_LITERAL_EXPRESSION@58..61 0: JS_STRING_LITERAL@58..61 "\"a\"" [] [] 4: (empty) 3: JS_PROPERTY_CLASS_MEMBER@61..68 0: JS_PROPERTY_MODIFIER_LIST@61..61 1: JS_LITERAL_MEMBER_NAME@61..67 0: JS_STRING_LITERAL@61..67 "\"a\"" [Newline("\n"), Whitespace(" ")] [] 2: (empty) 3: (empty) 4: SEMICOLON@67..68 ";" [] [] 4: JS_PROPERTY_CLASS_MEMBER@68..72 0: JS_PROPERTY_MODIFIER_LIST@68..68 1: JS_LITERAL_MEMBER_NAME@68..72 0: JS_NUMBER_LITERAL@68..72 "5" [Newline("\n"), Whitespace(" ")] [] 2: (empty) 3: (empty) 4: (empty) 5: JS_PROPERTY_CLASS_MEMBER@72..86 0: JS_PROPERTY_MODIFIER_LIST@72..72 1: JS_COMPUTED_MEMBER_NAME@72..86 0: L_BRACK@72..76 "[" [Newline("\n"), Whitespace(" ")] [] 1: JS_BINARY_EXPRESSION@76..85 0: JS_STRING_LITERAL_EXPRESSION@76..80 0: JS_STRING_LITERAL@76..80 "\"a\"" [] [Whitespace(" ")] 1: PLUS@80..82 "+" [] [Whitespace(" ")] 2: JS_STRING_LITERAL_EXPRESSION@82..85 0: JS_STRING_LITERAL@82..85 "\"b\"" [] [] 2: R_BRACK@85..86 "]" [] [] 2: (empty) 3: (empty) 4: (empty) 6: JS_PROPERTY_CLASS_MEMBER@86..110 0: JS_PROPERTY_MODIFIER_LIST@86..96 0: JS_STATIC_MODIFIER@86..96 0: STATIC_KW@86..96 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")] 1: JS_LITERAL_MEMBER_NAME@96..110 0: IDENT@96..110 "staticProperty" [] [] 2: (empty) 3: (empty) 4: (empty) 7: JS_PROPERTY_CLASS_MEMBER@110..149 0: JS_PROPERTY_MODIFIER_LIST@110..120 0: JS_STATIC_MODIFIER@110..120 0: STATIC_KW@110..120 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")] 1: JS_LITERAL_MEMBER_NAME@120..146 0: IDENT@120..146 "staticInitializedProperty" [] [Whitespace(" ")] 2: (empty) 3: JS_INITIALIZER_CLAUSE@146..149 0: EQ@146..148 "=" [] [Whitespace(" ")] 1: JS_NUMBER_LITERAL_EXPRESSION@148..149 0: JS_NUMBER_LITERAL@148..149 "1" [] [] 4: (empty) 8: JS_PROPERTY_CLASS_MEMBER@149..160 0: JS_PROPERTY_MODIFIER_LIST@149..149 1: JS_PRIVATE_CLASS_MEMBER_NAME@149..160 0: HASH@149..153 "#" [Newline("\n"), Whitespace(" ")] [] 1: IDENT@153..160 "private" [] [] 2: (empty) 3: (empty) 4: (empty) 9: JS_PROPERTY_CLASS_MEMBER@160..188 0: JS_PROPERTY_MODIFIER_LIST@160..160 1: JS_PRIVATE_CLASS_MEMBER_NAME@160..183 0: HASH@160..164 "#" [Newline("\n"), Whitespace(" ")] [] 1: IDENT@164..183 "privateInitialized" [] [Whitespace(" ")] 2: (empty) 3: JS_INITIALIZER_CLAUSE@183..188 0: EQ@183..185 "=" [] [Whitespace(" ")] 1: JS_STRING_LITERAL_EXPRESSION@185..188 0: JS_STRING_LITERAL@185..188 "\"a\"" [] [] 4: (empty) 10: JS_PROPERTY_CLASS_MEMBER@188..212 0: JS_PROPERTY_MODIFIER_LIST@188..198 0: JS_STATIC_MODIFIER@188..198 0: STATIC_KW@188..198 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")] 1: JS_PRIVATE_CLASS_MEMBER_NAME@198..212 0: HASH@198..199 "#" [] [] 1: IDENT@199..212 "staticPrivate" [] [] 2: (empty) 3: (empty) 4: (empty) 11: JS_PROPERTY_CLASS_MEMBER@212..259 0: JS_PROPERTY_MODIFIER_LIST@212..222 0: JS_STATIC_MODIFIER@212..222 0: STATIC_KW@212..222 "static" [Newline("\n"), Whitespace(" ")] [Whitespace(" ")] 1: JS_PRIVATE_CLASS_MEMBER_NAME@222..256 0: HASH@222..223 "#" [] [] 1: IDENT@223..256 "staticPrivateInitializedProperty" [] [Whitespace(" ")] 2: (empty) 3: JS_INITIALIZER_CLAUSE@256..259 0: EQ@256..258 "=" [] [Whitespace(" ")] 1: JS_NUMBER_LITERAL_EXPRESSION@258..259 0: JS_NUMBER_LITERAL@258..259 "1" [] [] 4: (empty) 9: R_CURLY@259..261 "}" [Newline("\n")] [] 4: EOF@261..262 "" [Newline("\n")] []