JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsImport { import_token: IMPORT_KW@0..7 "import" [] [Whitespace(" ")], import_clause: JsImportDefaultClause { type_token: missing (optional), default_specifier: JsDefaultImportSpecifier { local_name: JsIdentifierBinding { name_token: IDENT@7..11 "foo" [] [Whitespace(" ")], }, }, from_token: FROM_KW@11..16 "from" [] [Whitespace(" ")], source: JsModuleSource { value_token: JS_STRING_LITERAL@16..22 "\"test\"" [] [], }, assertion: missing (optional), }, semicolon_token: SEMICOLON@22..23 ";" [] [], }, ], eof_token: EOF@23..24 "" [Newline("\n")] [], } 0: JS_MODULE@0..24 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..23 0: JS_IMPORT@0..23 0: IMPORT_KW@0..7 "import" [] [Whitespace(" ")] 1: JS_IMPORT_DEFAULT_CLAUSE@7..22 0: (empty) 1: JS_DEFAULT_IMPORT_SPECIFIER@7..11 0: JS_IDENTIFIER_BINDING@7..11 0: IDENT@7..11 "foo" [] [Whitespace(" ")] 2: FROM_KW@11..16 "from" [] [Whitespace(" ")] 3: JS_MODULE_SOURCE@16..22 0: JS_STRING_LITERAL@16..22 "\"test\"" [] [] 4: (empty) 2: SEMICOLON@22..23 ";" [] [] 4: EOF@23..24 "" [Newline("\n")] []