diff --git a/DEPS b/DEPS
index ff0a30e..eb586c2 100644
--- a/DEPS
+++ b/DEPS
@@ -108,7 +108,7 @@
   # For more details, see https://github.com/dart-lang/sdk/issues/30164.
   "dart_style_rev": "d7b73536a8079331c888b7da539b80e6825270ea", # manually rev'd
 
-  "dartdoc_rev": "7edeeeb20a506cadec3788c273fdee6cad91e07c",
+  "dartdoc_rev": "bd57c0e7b7562abda6d556ce5a386b67fb4ff4c7",
   "devtools_rev": "d131d19091f6b89ac89486bd92440a25a523e8b0",
   "ffi_rev": "18b2b549d55009ff594600b04705ff6161681e07",
   "file_rev": "0132eeedea2933513bf230513a766a8baeab0c4f",
diff --git a/pkg/analysis_server/lib/src/analysis_server.dart b/pkg/analysis_server/lib/src/analysis_server.dart
index 92511cc..a4ea05d 100644
--- a/pkg/analysis_server/lib/src/analysis_server.dart
+++ b/pkg/analysis_server/lib/src/analysis_server.dart
@@ -90,8 +90,8 @@
 import 'package:analysis_server/src/services/completion/completion_state.dart';
 import 'package:analysis_server/src/services/execution/execution_context.dart';
 import 'package:analysis_server/src/services/flutter/widget_descriptions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_manager.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_manager.dart';
 import 'package:analysis_server/src/utilities/process.dart';
 import 'package:analysis_server/src/utilities/request_statistics.dart';
 import 'package:analyzer/dart/analysis/results.dart';
diff --git a/pkg/analysis_server/lib/src/cider/rename.dart b/pkg/analysis_server/lib/src/cider/rename.dart
index 3ff2d18..7b00736 100644
--- a/pkg/analysis_server/lib/src/cider/rename.dart
+++ b/pkg/analysis_server/lib/src/cider/rename.dart
@@ -5,8 +5,8 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/utilities/flutter.dart';
 import 'package:analyzer/dart/ast/ast.dart';
diff --git a/pkg/analysis_server/lib/src/handler/legacy/edit_get_available_refactorings.dart b/pkg/analysis_server/lib/src/handler/legacy/edit_get_available_refactorings.dart
index 5fa0b4a..1e63f00 100644
--- a/pkg/analysis_server/lib/src/handler/legacy/edit_get_available_refactorings.dart
+++ b/pkg/analysis_server/lib/src/handler/legacy/edit_get_available_refactorings.dart
@@ -6,7 +6,7 @@
 
 import 'package:analysis_server/protocol/protocol_generated.dart';
 import 'package:analysis_server/src/handler/legacy/legacy_handler.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/dart/ast/utilities.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart b/pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart
index 561cd23..8d46e20 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart
@@ -10,7 +10,7 @@
 import 'package:analysis_server/src/lsp/handlers/handlers.dart';
 import 'package:analysis_server/src/lsp/progress.dart';
 import 'package:analysis_server/src/protocol_server.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/dart/ast/utilities.dart';
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/handler_code_actions.dart b/pkg/analysis_server/lib/src/lsp/handlers/handler_code_actions.dart
index bd82a4a..e11e588 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/handler_code_actions.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/handler_code_actions.dart
@@ -13,7 +13,7 @@
 import 'package:analysis_server/src/services/correction/change_workspace.dart';
 import 'package:analysis_server/src/services/correction/fix.dart';
 import 'package:analysis_server/src/services/correction/fix_internal.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/analysis/session.dart'
     show InconsistentAnalysisException;
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/handler_rename.dart b/pkg/analysis_server/lib/src/lsp/handlers/handler_rename.dart
index facbfd8..8c57881 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/handler_rename.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/handler_rename.dart
@@ -7,8 +7,8 @@
 import 'package:analysis_server/src/lsp/constants.dart';
 import 'package:analysis_server/src/lsp/handlers/handlers.dart';
 import 'package:analysis_server/src/lsp/mapping.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename_unit_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_unit_member.dart';
 import 'package:analyzer/dart/element/element.dart';
 
 class PrepareRenameHandler extends MessageHandler<TextDocumentPositionParams,
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/handler_will_rename_files.dart b/pkg/analysis_server/lib/src/lsp/handlers/handler_will_rename_files.dart
index 2091ecf..b7b089a 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/handler_will_rename_files.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/handler_will_rename_files.dart
@@ -5,7 +5,7 @@
 import 'package:analysis_server/lsp_protocol/protocol.dart';
 import 'package:analysis_server/src/lsp/handlers/handlers.dart';
 import 'package:analysis_server/src/lsp/mapping.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 
 class WillRenameFilesHandler
     extends MessageHandler<RenameFilesParams, WorkspaceEdit?> {
diff --git a/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart b/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
index 3c57d35..e7f0ca9 100644
--- a/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
+++ b/pkg/analysis_server/lib/src/lsp/lsp_analysis_server.dart
@@ -30,7 +30,7 @@
 import 'package:analysis_server/src/server/diagnostic_server.dart';
 import 'package:analysis_server/src/server/error_notifier.dart';
 import 'package:analysis_server/src/server/performance.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analysis_server/src/utilities/process.dart';
 import 'package:analyzer/dart/analysis/context_locator.dart';
 import 'package:analyzer/dart/analysis/results.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/convert_getter_to_method.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/convert_getter_to_method.dart
similarity index 95%
rename from pkg/analysis_server/lib/src/services/refactoring/convert_getter_to_method.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/convert_getter_to_method.dart
index e0f9237..b10f214 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/convert_getter_to_method.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/convert_getter_to_method.dart
@@ -4,8 +4,8 @@
 
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/session.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/convert_method_to_getter.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/convert_method_to_getter.dart
similarity index 96%
rename from pkg/analysis_server/lib/src/services/refactoring/convert_method_to_getter.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/convert_method_to_getter.dart
index 427b1a1..069baef 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/convert_method_to_getter.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/convert_method_to_getter.dart
@@ -4,8 +4,8 @@
 
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/session.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/extract_local.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_local.dart
similarity index 98%
rename from pkg/analysis_server/lib/src/services/refactoring/extract_local.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/extract_local.dart
index 607535c..2bd7555 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/extract_local.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_local.dart
@@ -8,9 +8,9 @@
 import 'package:analysis_server/src/services/correction/name_suggestion.dart';
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/utilities/strings.dart';
 import 'package:analyzer/dart/analysis/code_style_options.dart';
 import 'package:analyzer/dart/analysis/features.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/extract_method.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_method.dart
similarity index 98%
rename from pkg/analysis_server/lib/src/services/refactoring/extract_method.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/extract_method.dart
index 80d5192..c18f88f 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/extract_method.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_method.dart
@@ -8,12 +8,12 @@
 import 'package:analysis_server/src/services/correction/statement_analyzer.dart';
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
-import 'package:analysis_server/src/services/refactoring/rename_class_member.dart';
-import 'package:analysis_server/src/services/refactoring/rename_unit_member.dart';
-import 'package:analysis_server/src/services/refactoring/visible_ranges_computer.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_class_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_unit_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/visible_ranges_computer.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/utilities/extensions/ast.dart';
 import 'package:analyzer/dart/analysis/features.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/extract_widget.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_widget.dart
similarity index 98%
rename from pkg/analysis_server/lib/src/services/refactoring/extract_widget.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/extract_widget.dart
index b476d7c..85bbc24 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/extract_widget.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/extract_widget.dart
@@ -5,9 +5,9 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/services/search/element_visitors.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/utilities/flutter.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/inline_local.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/inline_local.dart
similarity index 97%
rename from pkg/analysis_server/lib/src/services/refactoring/inline_local.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/inline_local.dart
index e0f3df71..62b9140 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/inline_local.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/inline_local.dart
@@ -5,8 +5,8 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/ast/ast.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/inline_method.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/inline_method.dart
similarity index 98%
rename from pkg/analysis_server/lib/src/services/refactoring/inline_method.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/inline_method.dart
index fec885d..c44741a 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/inline_method.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/inline_method.dart
@@ -5,9 +5,9 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
-import 'package:analysis_server/src/services/refactoring/visible_ranges_computer.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/visible_ranges_computer.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/utilities/strings.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/move_file.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/move_file.dart
similarity index 98%
rename from pkg/analysis_server/lib/src/services/refactoring/move_file.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/move_file.dart
index f3f985b..fab53d5 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/move_file.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/move_file.dart
@@ -4,8 +4,8 @@
 
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/utilities/extensions/ast.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/analysis/session.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/naming_conventions.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/naming_conventions.dart
similarity index 100%
rename from pkg/analysis_server/lib/src/services/refactoring/naming_conventions.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/naming_conventions.dart
diff --git a/pkg/analysis_server/lib/src/services/refactoring/refactoring.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring.dart
similarity index 93%
rename from pkg/analysis_server/lib/src/services/refactoring/refactoring.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring.dart
index 88c21de..12758bf 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/refactoring.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring.dart
@@ -3,22 +3,22 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/convert_getter_to_method.dart';
-import 'package:analysis_server/src/services/refactoring/convert_method_to_getter.dart';
-import 'package:analysis_server/src/services/refactoring/extract_local.dart';
-import 'package:analysis_server/src/services/refactoring/extract_method.dart';
-import 'package:analysis_server/src/services/refactoring/extract_widget.dart';
-import 'package:analysis_server/src/services/refactoring/inline_local.dart';
-import 'package:analysis_server/src/services/refactoring/inline_method.dart';
-import 'package:analysis_server/src/services/refactoring/move_file.dart';
-import 'package:analysis_server/src/services/refactoring/rename_class_member.dart';
-import 'package:analysis_server/src/services/refactoring/rename_constructor.dart';
-import 'package:analysis_server/src/services/refactoring/rename_extension_member.dart';
-import 'package:analysis_server/src/services/refactoring/rename_import.dart';
-import 'package:analysis_server/src/services/refactoring/rename_label.dart';
-import 'package:analysis_server/src/services/refactoring/rename_library.dart';
-import 'package:analysis_server/src/services/refactoring/rename_local.dart';
-import 'package:analysis_server/src/services/refactoring/rename_unit_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/convert_getter_to_method.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/convert_method_to_getter.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_local.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_method.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_widget.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/inline_local.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/inline_method.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/move_file.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_class_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_constructor.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_extension_member.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_import.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_label.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_library.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_local.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename_unit_member.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/analysis/session.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/refactoring_internal.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_internal.dart
similarity index 97%
rename from pkg/analysis_server/lib/src/services/refactoring/refactoring_internal.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_internal.dart
index d1b121e..76be8d4 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/refactoring_internal.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_internal.dart
@@ -6,7 +6,7 @@
 
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/generated/source.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/refactoring_manager.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_manager.dart
similarity index 99%
rename from pkg/analysis_server/lib/src/services/refactoring/refactoring_manager.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_manager.dart
index bcc0341..730a8c8 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/refactoring_manager.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/refactoring_manager.dart
@@ -9,7 +9,7 @@
 import 'package:analysis_server/src/protocol_server.dart'
     hide AnalysisError, Element;
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/session.dart';
 import 'package:analyzer/dart/element/element.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename.dart
similarity index 95%
rename from pkg/analysis_server/lib/src/services/refactoring/rename.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename.dart
index a4cba5b..bc26e15 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename.dart
@@ -5,8 +5,8 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/generated/java_core.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_class_member.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
similarity index 96%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_class_member.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
index 7661de2..cafd967 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_class_member.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
@@ -6,11 +6,11 @@
     hide Element, ElementKind;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
-import 'package:analysis_server/src/services/refactoring/visible_ranges_computer.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/visible_ranges_computer.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/utilities/strings.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_constructor.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_constructor.dart
similarity index 93%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_constructor.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_constructor.dart
index 134d6e4..d4972cb 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_constructor.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_constructor.dart
@@ -5,10 +5,10 @@
 import 'package:analysis_server/src/protocol_server.dart' hide Element;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analyzer/dart/analysis/session.dart';
 import 'package:analyzer/dart/ast/ast.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_extension_member.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_extension_member.dart
similarity index 95%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_extension_member.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_extension_member.dart
index f0b65ab..c1bb99b 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_extension_member.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_extension_member.dart
@@ -6,10 +6,10 @@
     hide Element, ElementKind;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
-import 'package:analysis_server/src/services/refactoring/visible_ranges_computer.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/visible_ranges_computer.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analyzer/dart/analysis/session.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_import.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_import.dart
similarity index 92%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_import.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_import.dart
index edcdd80..01e2ccd 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_import.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_import.dart
@@ -4,10 +4,10 @@
 
 import 'package:analysis_server/src/protocol_server.dart';
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_internal.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_internal.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/dart/analysis/session.dart';
 import 'package:analyzer/dart/ast/ast.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_label.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_label.dart
similarity index 81%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_label.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_label.dart
index a2ca221..b6c3710 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_label.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_label.dart
@@ -3,9 +3,9 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
 import 'package:analyzer/dart/element/element.dart';
 
 /// A [Refactoring] for renaming [LabelElement]s.
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_library.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_library.dart
similarity index 82%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_library.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_library.dart
index ae5d654..1423092 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_library.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_library.dart
@@ -3,9 +3,9 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
 import 'package:analyzer/dart/element/element.dart';
 
 /// A [Refactoring] for renaming [LibraryElement]s.
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_local.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_local.dart
similarity index 94%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_local.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_local.dart
index 26b9a08..1df2986 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_local.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_local.dart
@@ -6,10 +6,10 @@
     hide Element, ElementKind;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
-import 'package:analysis_server/src/services/refactoring/visible_ranges_computer.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/visible_ranges_computer.dart';
 import 'package:analysis_server/src/services/search/hierarchy.dart';
 import 'package:analyzer/dart/analysis/session.dart';
 import 'package:analyzer/dart/ast/ast.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/rename_unit_member.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_unit_member.dart
similarity index 97%
rename from pkg/analysis_server/lib/src/services/refactoring/rename_unit_member.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/rename_unit_member.dart
index caa5679..0ef382b 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/rename_unit_member.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_unit_member.dart
@@ -6,9 +6,9 @@
     show newLocation_fromElement, newLocation_fromMatch;
 import 'package:analysis_server/src/services/correction/status.dart';
 import 'package:analysis_server/src/services/correction/util.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
-import 'package:analysis_server/src/services/refactoring/rename.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/rename.dart';
 import 'package:analysis_server/src/services/search/element_visitors.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/utilities/flutter.dart';
diff --git a/pkg/analysis_server/lib/src/services/refactoring/visible_ranges_computer.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/visible_ranges_computer.dart
similarity index 100%
rename from pkg/analysis_server/lib/src/services/refactoring/visible_ranges_computer.dart
rename to pkg/analysis_server/lib/src/services/refactoring/legacy/visible_ranges_computer.dart
diff --git a/pkg/analysis_server/test/edit/refactoring_test.dart b/pkg/analysis_server/test/edit/refactoring_test.dart
index e397c48..f080f50 100644
--- a/pkg/analysis_server/test/edit/refactoring_test.dart
+++ b/pkg/analysis_server/test/edit/refactoring_test.dart
@@ -6,7 +6,7 @@
 
 import 'package:analysis_server/protocol/protocol.dart';
 import 'package:analysis_server/protocol/protocol_generated.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring_manager.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring_manager.dart';
 import 'package:analyzer/src/test_utilities/package_config_file_builder.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/abstract_refactoring.dart b/pkg/analysis_server/test/services/refactoring/abstract_refactoring.dart
index 010d536..793296a 100644
--- a/pkg/analysis_server/test/services/refactoring/abstract_refactoring.dart
+++ b/pkg/analysis_server/test/services/refactoring/abstract_refactoring.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analysis_server/src/services/search/search_engine.dart';
 import 'package:analysis_server/src/services/search/search_engine_internal.dart';
 import 'package:analyzer/src/generated/source.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/abstract_rename.dart b/pkg/analysis_server/test/services/refactoring/abstract_rename.dart
index dab7e2c..9bbe6a5 100644
--- a/pkg/analysis_server/test/services/refactoring/abstract_rename.dart
+++ b/pkg/analysis_server/test/services/refactoring/abstract_rename.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/namespace.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/ast/ast.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer/src/dart/ast/element_locator.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/convert_getter_to_method_test.dart b/pkg/analysis_server/test/services/refactoring/convert_getter_to_method_test.dart
index a0a8d9a..29d6dd9 100644
--- a/pkg/analysis_server/test/services/refactoring/convert_getter_to_method_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/convert_getter_to_method_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart' hide ElementKind;
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/convert_method_to_getter_test.dart b/pkg/analysis_server/test/services/refactoring/convert_method_to_getter_test.dart
index 3c20426..af7fa9a 100644
--- a/pkg/analysis_server/test/services/refactoring/convert_method_to_getter_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/convert_method_to_getter_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/element/element.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart'
     show RefactoringProblemSeverity;
diff --git a/pkg/analysis_server/test/services/refactoring/extract_local_test.dart b/pkg/analysis_server/test/services/refactoring/extract_local_test.dart
index 018abef..b2db53c 100644
--- a/pkg/analysis_server/test/services/refactoring/extract_local_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/extract_local_test.dart
@@ -5,7 +5,7 @@
 import 'dart:convert';
 
 import 'package:analysis_server/src/services/linter/lint_names.dart';
-import 'package:analysis_server/src/services/refactoring/extract_local.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_local.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/extract_method_test.dart b/pkg/analysis_server/test/services/refactoring/extract_method_test.dart
index 4335a2d..759b9c5 100644
--- a/pkg/analysis_server/test/services/refactoring/extract_method_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/extract_method_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analysis_server/src/services/refactoring/extract_method.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_method.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/extract_widget_test.dart b/pkg/analysis_server/test/services/refactoring/extract_widget_test.dart
index eabe685..2c5b473 100644
--- a/pkg/analysis_server/test/services/refactoring/extract_widget_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/extract_widget_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analysis_server/src/services/refactoring/extract_widget.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/extract_widget.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/inline_local_test.dart b/pkg/analysis_server/test/services/refactoring/inline_local_test.dart
index 3f299ed..174be56 100644
--- a/pkg/analysis_server/test/services/refactoring/inline_local_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/inline_local_test.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/inline_local.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/inline_local.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart' hide Element;
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/inline_method_test.dart b/pkg/analysis_server/test/services/refactoring/inline_method_test.dart
index 372ce62..d504889 100644
--- a/pkg/analysis_server/test/services/refactoring/inline_method_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/inline_method_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analysis_server/src/services/refactoring/inline_method.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/inline_method.dart';
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart' hide Element;
 import 'package:test/test.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/move_file_test.dart b/pkg/analysis_server/test/services/refactoring/move_file_test.dart
index c4baa27..c605bcd 100644
--- a/pkg/analysis_server/test/services/refactoring/move_file_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/move_file_test.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/protocol_server.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/naming_conventions_test.dart b/pkg/analysis_server/test/services/refactoring/naming_conventions_test.dart
index 05be8f8..d721d15 100644
--- a/pkg/analysis_server/test/services/refactoring/naming_conventions_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/naming_conventions_test.dart
@@ -3,8 +3,8 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/correction/status.dart';
-import 'package:analysis_server/src/services/refactoring/naming_conventions.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/naming_conventions.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart'
     show RefactoringProblemSeverity;
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/analysis_server/test/services/refactoring/rename_constructor_test.dart b/pkg/analysis_server/test/services/refactoring/rename_constructor_test.dart
index acb01ea..a690c71 100644
--- a/pkg/analysis_server/test/services/refactoring/rename_constructor_test.dart
+++ b/pkg/analysis_server/test/services/refactoring/rename_constructor_test.dart
@@ -3,7 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'package:analysis_server/src/services/linter/lint_names.dart';
-import 'package:analysis_server/src/services/refactoring/refactoring.dart';
+import 'package:analysis_server/src/services/refactoring/legacy/refactoring.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
diff --git a/pkg/dart2js_info/bin/src/to_devtools_format.dart b/pkg/dart2js_info/bin/src/to_devtools_format.dart
index 8e12f5d..9469c95 100644
--- a/pkg/dart2js_info/bin/src/to_devtools_format.dart
+++ b/pkg/dart2js_info/bin/src/to_devtools_format.dart
@@ -1,13 +1,13 @@
+library dart2js_info.bin.to_devtools_format;
+
 import 'dart:convert';
 import 'dart:io';
 
 import 'package:args/command_runner.dart';
 import 'package:dart2js_info/info.dart';
 import 'package:dart2js_info/src/io.dart';
-import 'package:dart2js_info/src/util.dart';
+import 'package:dart2js_info/src/util.dart' show longName, libraryGroupName;
 import 'package:vm_snapshot_analysis/program_info.dart' as vm;
-import 'package:vm_snapshot_analysis/treemap.dart';
-
 import 'usage_exception.dart';
 
 /// Command that converts a `--dump-info` JSON output into a format ingested by Devtools.
@@ -39,12 +39,12 @@
     final AllInfo allInfo = await infoFromFile(args.rest.first);
     final builder = ProgramInfoBuilder(allInfo);
     vm.ProgramInfo programInfo = builder.build(allInfo);
-    Map<String, dynamic> treeMap = treemapFromInfo(programInfo);
-    var treeMapJson = jsonEncode(treeMap);
+    Map<String, dynamic> programInfoTree = programInfo.toJson();
+    // TODO: convert the programInfo tree to a treemap
     if (outputPath == null) {
-      print(treeMapJson);
+      print(jsonEncode(programInfoTree));
     } else {
-      await File(outputPath).writeAsString(treeMapJson);
+      await File(outputPath).writeAsString(jsonEncode(programInfoTree));
     }
   }
 }
@@ -61,17 +61,34 @@
 
   final List<vm.ProgramInfoNode> outputInfo = [];
 
+  /// Mapping between the filename of the outputUnit and the [vm.ProgramInfo]
+  /// subtree representing a program unit (main or deferred).
+  final Map<String, vm.ProgramInfo> outputUnits = {};
+
+  /// Mapping between the name of the library [vm.ProgramInfoNode]
+  /// object and its corresponding outputUnit [vm.ProgramInfo] tree.
+  final Map<String, vm.ProgramInfo> libraryUnits = {};
+
+  /// Mapping between the name of an [Info] object and the corresponding
+  /// [vm.ProgramInfoNode] object.
+  ///
+  /// For packages and libraries, since their children can be split among
+  /// different outputUnits, a composite name is used instead to differentiate
+  /// between [vm.ProgramInfoNode] in different outputUnits.
+  final Map<String, vm.ProgramInfoNode> infoNodesByName = {};
+
+  /// A unique key composed of the name of an [Info] object and the
+  /// filename of the outputUnit.
+  String compositeName(String name, String outputUnitName) =>
+      "$name/$outputUnitName";
+
   /// Mapping between the name of a [Info] object and the corresponding
   /// [vm.ProgramInfoNode] object.
-  Map<String, vm.ProgramInfoNode> infoNodesByName = {};
-
-  /// Mapping between the id (aka coverageId) of an [AllInfo] node and the
-  /// corresponding [vm.ProgramInfoNode] object.
   final Map<String, vm.ProgramInfoNode> infoNodesById = {};
 
-  /// Mapping between package names and the corresponding [vm.ProgramInfoNode]
-  /// objects of [vm.NodeType.packageNode].
-  final Map<String, vm.ProgramInfoNode> packageInfoNodes = {};
+  /// Mapping between the composite name of a package and the corresponding
+  /// [vm.ProgramInfoNode] objects of [vm.NodeType.packageNode].
+  final Map<String, dynamic> packageInfoNodes = {};
 
   /// Mapping between an <unnamed> [LibraryInfo] object and the name of the
   /// corresponding [vm.ProgramInfoNode] object.
@@ -79,33 +96,289 @@
 
   ProgramInfoBuilder(this.info);
 
+  /// Collect libraries into packages and aggregate their sizes.
+  void makePackage(LibraryInfo libraryInfo, String outputUnitName) {
+    vm.ProgramInfo outputUnit = outputUnits[outputUnitName]!;
+    String libraryName = libraryInfo.name;
+    if (libraryInfo.name == '<unnamed>') {
+      libraryName = longName(libraryInfo, useLibraryUri: true, forId: true);
+    }
+    String packageName = libraryGroupName(libraryInfo) ?? libraryName;
+    vm.ProgramInfoNode? packageInfoNode = packageInfoNodes[packageName];
+    if (packageInfoNode == null) {
+      String compositePackageName = compositeName(packageName, outputUnitName);
+      vm.ProgramInfoNode newPackage = outputUnit.makeNode(
+          name: compositePackageName,
+          parent: outputUnit.root,
+          type: vm.NodeType.packageNode);
+      newPackage.size = libraryInfo.size;
+      packageInfoNodes[compositePackageName] = newPackage;
+      outputUnit.root.children[compositePackageName] = newPackage;
+      outputInfo.add(newPackage);
+      var packageNode = infoNodesByName[compositePackageName];
+      assert(packageNode == null,
+          "encountered package with duplicated name: $compositePackageName");
+      infoNodesByName[compositePackageName] = newPackage;
+    } else {
+      packageInfoNode.size = (packageInfoNode.size ?? 0) + libraryInfo.size;
+    }
+  }
+
+  void makeLibrary(LibraryInfo libraryInfo, String outputUnitName) {
+    vm.ProgramInfo outputUnit = outputUnits[outputUnitName]!;
+    String libraryName = libraryInfo.name;
+    if (libraryName == '<unnamed>') {
+      libraryName = longName(libraryInfo, useLibraryUri: true, forId: true);
+      unnamedLibraries[libraryInfo] = libraryName;
+    }
+    String packageName = libraryGroupName(libraryInfo) ?? libraryName;
+    String compositePackageName = compositeName(packageName, outputUnitName);
+    vm.ProgramInfoNode parentNode = infoNodesByName[compositePackageName]!;
+    String compositeLibraryName = compositeName(libraryName, outputUnitName);
+    vm.ProgramInfoNode newLibrary = outputUnit.makeNode(
+        name: compositeLibraryName,
+        parent: parentNode,
+        type: vm.NodeType.libraryNode);
+    newLibrary.size = libraryInfo.size;
+    parentNode.children[newLibrary.name] = newLibrary;
+    vm.ProgramInfoNode? libraryNode = infoNodesByName[compositeLibraryName];
+    assert(libraryNode == null,
+        "encountered library with duplicated name: $compositeLibraryName");
+    infoNodesByName[compositeLibraryName] = newLibrary;
+    outputInfo.add(newLibrary);
+  }
+
+  void makeFunction(FunctionInfo functionInfo) {
+    Info? parent = functionInfo.parent;
+    String outputUnitName = functionInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    if (parent != null && outputUnit != null) {
+      assert(parent.kind == kindFromString('library'));
+      vm.ProgramInfoNode parentNode;
+      if (parent.kind == kindFromString('library')) {
+        if (parent.name == "<unnamed>") {
+          var tempName =
+              compositeName(unnamedLibraries[parent]!, outputUnitName);
+          parentNode = infoNodesByName[tempName]!;
+        } else {
+          parentNode =
+              infoNodesByName[compositeName(parent.name, outputUnitName)]!;
+        }
+      } else {
+        parentNode = infoNodesByName[parent.name]!;
+      }
+      vm.ProgramInfoNode newFunction = outputUnit.makeNode(
+          name: functionInfo.name,
+          parent: parentNode,
+          type: vm.NodeType.functionNode);
+      newFunction.size = functionInfo.size;
+      parentNode.children[newFunction.name] = newFunction;
+      vm.ProgramInfoNode? functionNode = infoNodesByName[newFunction.name];
+      assert(functionNode == null,
+          "encountered function with duplicated name: $newFunction.name");
+      infoNodesByName[newFunction.name] = newFunction;
+      outputInfo.add(newFunction);
+    }
+  }
+
+  void makeClass(ClassInfo classInfo) {
+    Info? parent = classInfo.parent;
+    String outputUnitName = classInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    if (parent != null && outputUnit != null) {
+      vm.ProgramInfoNode parentNode;
+      if (parent.kind == kindFromString('library')) {
+        if (parent.name == "<unnamed>") {
+          var tempName =
+              compositeName(unnamedLibraries[parent]!, outputUnitName);
+          parentNode = infoNodesByName[tempName]!;
+        } else {
+          parentNode =
+              infoNodesByName[compositeName(parent.name, outputUnitName)]!;
+        }
+      } else {
+        parentNode = infoNodesByName[parent.name]!;
+      }
+      vm.ProgramInfoNode newClass = outputUnit.makeNode(
+          name: classInfo.name,
+          parent: parentNode,
+          type: vm.NodeType.classNode);
+      newClass.size = classInfo.size;
+      parentNode.children[newClass.name] = newClass;
+      vm.ProgramInfoNode? classNode = infoNodesByName[newClass.name];
+      assert(classNode == null,
+          "encountered class with duplicated name: $newClass.name");
+      infoNodesByName[newClass.name] = newClass;
+      outputInfo.add(newClass);
+    }
+  }
+
+  /// Fields are currently assigned [vm.NodeType.other].
+  ///
+  /// Note: we might want to create a separate [vm.NodeType.fieldNode] to
+  /// differentiate fields from other miscellaneous nodes for constructing
+  /// the call graph.
+  void makeField(FieldInfo fieldInfo) {
+    Info? parent = fieldInfo.parent;
+    String outputUnitName = fieldInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    if (parent != null && outputUnit != null) {
+      vm.ProgramInfoNode parentNode;
+      if (parent.kind == kindFromString('library')) {
+        if (parent.name == "<unnamed>") {
+          var tempName =
+              compositeName(unnamedLibraries[parent]!, outputUnitName);
+          parentNode = infoNodesByName[tempName]!;
+        } else {
+          parentNode =
+              infoNodesByName[compositeName(parent.name, outputUnitName)]!;
+        }
+      } else {
+        parentNode = infoNodesByName[parent.name]!;
+      }
+      vm.ProgramInfoNode newField = outputUnit.makeNode(
+          name: fieldInfo.name, parent: parentNode, type: vm.NodeType.other);
+      newField.size = fieldInfo.size;
+      parentNode.children[newField.name] = newField;
+      vm.ProgramInfoNode? fieldNode = infoNodesByName[newField.name];
+      assert(fieldNode == null,
+          "encountered field with duplicated name: $newField.name");
+      infoNodesByName[newField.name] = newField;
+      outputInfo.add(newField);
+    }
+  }
+
+  void makeConstant(ConstantInfo constantInfo) {
+    String? constantName = constantInfo.code.first.text ??
+        "${constantInfo.code.first.start}/${constantInfo.code.first.end}";
+    String outputUnitName = constantInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    vm.ProgramInfoNode newConstant = outputUnit!.makeNode(
+        name: constantName, parent: outputUnit.root, type: vm.NodeType.other);
+    newConstant.size = constantInfo.size;
+    outputUnit.root.children[newConstant.name] = newConstant;
+    vm.ProgramInfoNode? constantNode = infoNodesByName[newConstant.name];
+    assert(constantNode == null,
+        "encountered constant with duplicated name: $newConstant.name");
+    infoNodesByName[newConstant.name] = newConstant;
+    outputInfo.add(newConstant);
+  }
+
+  void makeTypedef(TypedefInfo typedefInfo) {
+    String outputUnitName = typedefInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    vm.ProgramInfoNode newTypedef = outputUnit!.makeNode(
+        name: typedefInfo.name,
+        parent: outputUnit.root,
+        type: vm.NodeType.other);
+    newTypedef.size = typedefInfo.size;
+    vm.ProgramInfoNode? typedefNode = infoNodesByName[newTypedef.name];
+    assert(typedefNode == null,
+        "encountered constant with duplicated name: $newTypedef.name");
+    outputInfo.add(newTypedef);
+  }
+
+  void makeClassType(ClassTypeInfo classTypeInfo) {
+    Info? parent = classTypeInfo.parent;
+    String outputUnitName = classTypeInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    if (parent != null && outputUnit != null) {
+      assert(parent.kind == kindFromString('library'));
+      vm.ProgramInfoNode parentNode;
+      if (parent.name == "<unnamed>") {
+        var tempName = compositeName(unnamedLibraries[parent]!, outputUnitName);
+        parentNode = infoNodesByName[tempName]!;
+      } else {
+        parentNode =
+            infoNodesByName[compositeName(parent.name, outputUnitName)]!;
+      }
+      vm.ProgramInfoNode newClassType = outputUnit.makeNode(
+          name: classTypeInfo.name,
+          parent: parentNode,
+          type: vm.NodeType.other);
+      newClassType.size = classTypeInfo.size;
+      vm.ProgramInfoNode? classTypeNode = infoNodesByName[newClassType.name];
+      assert(classTypeNode == null,
+          "encountered classType with duplicated name: $newClassType.name");
+      infoNodesByName[newClassType.name] = newClassType;
+      outputInfo.add(newClassType);
+    }
+  }
+
+  void makeClosure(ClosureInfo closureInfo) {
+    Info? parent = closureInfo.parent;
+    String outputUnitName = closureInfo.outputUnit!.filename;
+    vm.ProgramInfo? outputUnit = outputUnits[outputUnitName];
+    if (parent != null && outputUnit != null) {
+      vm.ProgramInfoNode parentNode;
+      if (parent.kind == kindFromString('library')) {
+        if (parent.name == "<unnamed>") {
+          var tempName =
+              compositeName(unnamedLibraries[parent]!, outputUnitName);
+          parentNode = infoNodesByName[tempName]!;
+        } else {
+          parentNode =
+              infoNodesByName[compositeName(parent.name, outputUnitName)]!;
+        }
+      } else {
+        parentNode = infoNodesByName[parent.name]!;
+      }
+      vm.ProgramInfoNode newClosure = outputUnit.makeNode(
+          name: closureInfo.name,
+          parent: parentNode,
+          // ProgramInfo trees consider closures and functions to both be of the functionNode type.
+          type: vm.NodeType.functionNode);
+      newClosure.size = closureInfo.size;
+      parentNode.children[newClosure.name] = newClosure;
+      vm.ProgramInfoNode? closureNode = infoNodesByName[newClosure.name];
+      assert(closureNode == null,
+          "encountered closure with duplicated name: $newClosure.name");
+      infoNodesByName[newClosure.name] = newClosure;
+      outputInfo.add(newClosure);
+    }
+  }
+
   @override
-  vm.ProgramInfoNode visitAll(AllInfo info) {
-    outputInfo.add(program.root);
-    info.libraries.forEach(makePackage);
-    info.packages.forEach(visitPackage);
-    info.libraries.forEach(makeLibrary);
-    info.libraries.forEach(visitLibrary);
+  vm.ProgramInfoNode visitAll(AllInfo info, String outputUnitName) {
+    outputInfo.add(outputUnits[outputUnitName]!.root);
+    visitProgram(info.program!);
+    for (var package in info.packages) {
+      visitPackage(package, outputUnitName);
+    }
+    for (var library in info.libraries) {
+      visitLibrary(library, outputUnitName);
+    }
     info.constants.forEach(makeConstant);
     info.constants.forEach(visitConstant);
-    return program.root;
+    return outputUnits[outputUnitName]!.root;
+  }
+
+  @override
+  vm.ProgramInfoNode visitOutput(OutputUnitInfo info) {
+    vm.ProgramInfo? outputUnit = outputUnits[info.filename];
+    assert(outputUnit == null, "encountered outputUnit with duplicated name");
+    var newUnit = vm.ProgramInfo();
+    outputUnits[info.filename] = newUnit;
+    outputUnits[info.filename]!.root.size = info.size;
+    return outputUnits[info.filename]!.root;
   }
 
   @override
   vm.ProgramInfoNode visitProgram(ProgramInfo info) {
-    throw Exception('Not supported for devtools format.');
+    program.root.size = info.size;
+    return program.root;
   }
 
   @override
-  vm.ProgramInfoNode visitPackage(PackageInfo info) {
-    info.libraries.forEach(makePackage);
-    info.libraries.forEach(makeLibrary);
-    info.libraries.forEach(visitLibrary);
-    return infoNodesByName[info.name]!;
+  vm.ProgramInfoNode visitPackage(PackageInfo info, String outputUnitName) {
+    for (var library in info.libraries) {
+      visitLibrary(library, outputUnitName);
+    }
+    return infoNodesByName[compositeName(info.name, outputUnitName)]!;
   }
 
   @override
-  vm.ProgramInfoNode visitLibrary(LibraryInfo info) {
+  vm.ProgramInfoNode visitLibrary(LibraryInfo info, String outputUnitName) {
     info.topLevelFunctions.forEach(makeFunction);
     info.topLevelFunctions.forEach(visitFunction);
     info.topLevelVariables.forEach(makeField);
@@ -116,8 +389,9 @@
     info.classTypes.forEach(visitClassType);
     info.typedefs.forEach(makeTypedef);
     info.typedefs.forEach(visitTypedef);
-    return infoNodesByName[info.name] ??
-        infoNodesByName[unnamedLibraries[info]]!;
+    return infoNodesByName[compositeName(info.name, outputUnitName)] ??
+        infoNodesByName[
+            compositeName(unnamedLibraries[info]!, outputUnitName)]!;
   }
 
   @override
@@ -157,7 +431,8 @@
 
   @override
   vm.ProgramInfoNode visitConstant(ConstantInfo info) {
-    return infoNodesByName[info.code.first.text!]!;
+    return infoNodesByName[info.code.first.text] ??
+        infoNodesByName["${info.code.first.start}/${info.code.first.end}"]!;
   }
 
   @override
@@ -165,191 +440,18 @@
     return infoNodesByName[info.name]!;
   }
 
-  @override
-  vm.ProgramInfoNode visitOutput(OutputUnitInfo info) {
-    throw Exception("For deferred loading.");
-  }
-
   vm.ProgramInfo build(AllInfo info) {
-    visitAll(info);
+    info.outputUnits.forEach(visitOutput);
+    for (var outputUnitName in outputUnits.keys) {
+      for (var library in info.libraries) {
+        makePackage(library, outputUnitName);
+        makeLibrary(library, outputUnitName);
+      }
+    }
+    for (var outputUnitName in outputUnits.keys) {
+      visitAll(info, outputUnitName);
+      program.root.children[outputUnitName] = outputUnits[outputUnitName]!.root;
+    }
     return program;
   }
-
-  /// Collect libraries into packages and aggregate their sizes.
-  void makePackage(LibraryInfo libraryInfo) {
-    String packageName = libraryGroupName(libraryInfo) ?? libraryInfo.name;
-    vm.ProgramInfoNode? packageInfoNode = packageInfoNodes[packageName];
-    if (packageInfoNode == null) {
-      vm.ProgramInfoNode newPackage = program.makeNode(
-          name: packageName,
-          parent: program.root,
-          type: vm.NodeType.packageNode);
-      newPackage.size = libraryInfo.size;
-      packageInfoNodes[packageName] = newPackage;
-      program.root.children[packageName] = newPackage;
-      outputInfo.add(newPackage);
-      var packageNode = infoNodesByName[newPackage.name];
-      assert(packageNode == null, "encountered package with duplicated name");
-      infoNodesByName[newPackage.name] = newPackage;
-    } else {
-      packageInfoNode.size = (packageInfoNode.size ?? 0) + libraryInfo.size;
-    }
-  }
-
-  void makeLibrary(LibraryInfo libraryInfo) {
-    String packageName = libraryGroupName(libraryInfo) ?? libraryInfo.name;
-    vm.ProgramInfoNode parentNode = infoNodesByName[packageName]!;
-    String libraryName = libraryInfo.name;
-    if (libraryName == '<unnamed>') {
-      libraryName = longName(libraryInfo, useLibraryUri: true, forId: true);
-      unnamedLibraries[libraryInfo] = libraryName;
-    }
-    vm.ProgramInfoNode newLibrary = program.makeNode(
-        name: libraryName, parent: parentNode, type: vm.NodeType.libraryNode);
-    newLibrary.size = libraryInfo.size;
-    parentNode.children[newLibrary.name] = newLibrary;
-    vm.ProgramInfoNode? libraryNode = infoNodesByName[newLibrary.name];
-    assert(libraryNode == null, "encountered library with duplicated name");
-    infoNodesByName[newLibrary.name] = newLibrary;
-    outputInfo.add(newLibrary);
-  }
-
-  void makeFunction(FunctionInfo functionInfo) {
-    Info? parent = functionInfo.parent;
-    if (parent != null) {
-      vm.ProgramInfoNode parentNode;
-      if (parent.name == "<unnamed>" &&
-          parent.kind == kindFromString('library')) {
-        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
-      } else {
-        parentNode = infoNodesByName[parent.name]!;
-      }
-      vm.ProgramInfoNode newFunction = program.makeNode(
-          name: functionInfo.name,
-          parent: parentNode,
-          type: vm.NodeType.functionNode);
-      newFunction.size = functionInfo.size;
-      parentNode.children[newFunction.name] = newFunction;
-      vm.ProgramInfoNode? functionNode = infoNodesByName[newFunction.name];
-      assert(functionNode == null, "encountered function with duplicated name");
-      infoNodesByName[newFunction.name] = newFunction;
-      outputInfo.add(newFunction);
-    }
-  }
-
-  void makeClass(ClassInfo classInfo) {
-    Info? parent = classInfo.parent;
-    if (parent != null) {
-      vm.ProgramInfoNode parentNode;
-      if (parent.name == "<unnamed>" &&
-          parent.kind == kindFromString('library')) {
-        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
-      } else {
-        parentNode = infoNodesByName[parent.name]!;
-      }
-      vm.ProgramInfoNode newClass = program.makeNode(
-          name: classInfo.name,
-          parent: parentNode,
-          type: vm.NodeType.classNode);
-      newClass.size = classInfo.size;
-      parentNode.children[newClass.name] = newClass;
-      vm.ProgramInfoNode? classNode = infoNodesByName[newClass.name];
-      assert(classNode == null, "encountered class with duplicated name");
-      infoNodesByName[newClass.name] = newClass;
-      outputInfo.add(newClass);
-    }
-  }
-
-  /// Fields are currently assigned [vm.NodeType.other].
-  ///
-  /// Note: we might want to create a separate [vm.NodeType.fieldNode] to
-  /// differentiate fields from other miscellaneous nodes for constructing
-  /// the call graph.
-  void makeField(FieldInfo fieldInfo) {
-    Info? parent = fieldInfo.parent;
-    if (parent != null) {
-      vm.ProgramInfoNode parentNode;
-      if (parent.name == "<unnamed>" &&
-          parent.kind == kindFromString('library')) {
-        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
-      } else {
-        parentNode = infoNodesByName[parent.name]!;
-      }
-      vm.ProgramInfoNode newField = program.makeNode(
-          name: fieldInfo.name, parent: parentNode, type: vm.NodeType.other);
-      newField.size = fieldInfo.size;
-      parentNode.children[newField.name] = newField;
-      vm.ProgramInfoNode? fieldNode = infoNodesByName[newField.name];
-      assert(fieldNode == null, "encountered field with duplicated name");
-      infoNodesByName[newField.name] = newField;
-      outputInfo.add(newField);
-    }
-  }
-
-  void makeConstant(ConstantInfo constantInfo) {
-    String constantName = constantInfo.code.first.text!;
-    vm.ProgramInfoNode newConstant = program.makeNode(
-        name: constantName, parent: program.root, type: vm.NodeType.other);
-    newConstant.size = constantInfo.size;
-    program.root.children[newConstant.name] = newConstant;
-    vm.ProgramInfoNode? constantNode = infoNodesByName[newConstant.name];
-    assert(constantNode == null, "encountered constant with duplicated name");
-    infoNodesByName[newConstant.name] = newConstant;
-    outputInfo.add(newConstant);
-  }
-
-  void makeTypedef(TypedefInfo typedefInfo) {
-    vm.ProgramInfoNode newTypedef = program.makeNode(
-        name: typedefInfo.name, parent: program.root, type: vm.NodeType.other);
-    newTypedef.size = typedefInfo.size;
-    infoNodesByName[newTypedef.name] = newTypedef;
-    outputInfo.add(newTypedef);
-  }
-
-  void makeClassType(ClassTypeInfo classTypeInfo) {
-    Info? parent = classTypeInfo.parent;
-    if (parent != null) {
-      vm.ProgramInfoNode parentNode;
-      if (parent.name == "<unnamed>" &&
-          parent.kind == kindFromString('library')) {
-        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
-      } else {
-        parentNode = infoNodesByName[parent.name]!;
-      }
-      vm.ProgramInfoNode newClassType = program.makeNode(
-          name: classTypeInfo.name,
-          parent: parentNode,
-          type: vm.NodeType.other);
-      newClassType.size = classTypeInfo.size;
-      vm.ProgramInfoNode? classTypeNode = infoNodesByName[newClassType.name];
-      assert(
-          classTypeNode == null, "encountered classType with duplicated name");
-      infoNodesByName[newClassType.name] = newClassType;
-      outputInfo.add(newClassType);
-    }
-  }
-
-  void makeClosure(ClosureInfo closureInfo) {
-    Info? parent = closureInfo.parent;
-    if (parent != null) {
-      vm.ProgramInfoNode parentNode;
-      if (parent.name == "<unnamed>" &&
-          parent.kind == kindFromString('library')) {
-        parentNode = infoNodesByName[unnamedLibraries[parent]]!;
-      } else {
-        parentNode = infoNodesByName[parent.name]!;
-      }
-      vm.ProgramInfoNode newClosure = program.makeNode(
-          name: closureInfo.name,
-          parent: parentNode,
-          // ProgramInfo trees consider closures and functions to both be of the functionNode type.
-          type: vm.NodeType.functionNode);
-      newClosure.size = closureInfo.size;
-      parentNode.children[newClosure.name] = newClosure;
-      vm.ProgramInfoNode? closureNode = infoNodesByName[newClosure.name];
-      assert(closureNode == null, "encountered closure with duplicated name");
-      infoNodesByName[newClosure.name] = newClosure;
-      outputInfo.add(newClosure);
-    }
-  }
 }
diff --git a/pkg/dart2js_info/lib/info.dart b/pkg/dart2js_info/lib/info.dart
index 051d75a..7c14f74 100644
--- a/pkg/dart2js_info/lib/info.dart
+++ b/pkg/dart2js_info/lib/info.dart
@@ -203,14 +203,8 @@
       : super(InfoKind.package, name, outputUnit, size, null);
 
   @override
-  T accept<T>(InfoVisitor<T> visitor) {
-    if (visitor is VMProgramInfoVisitor<T>) {
-      return visitor.visitPackage(this);
-    } else {
-      throw ArgumentError(
-          "PackageInfo can only be visited by a VMProgramInfoVisitor");
-    }
-  }
+  T accept<T>(InfoVisitor<T> visitor) =>
+      throw Exception("PackageInfo is not supported by InfoVisitor.");
 }
 
 /// Info associated with a library element.
@@ -620,8 +614,19 @@
 
 /// A visitor that adds implementation for PackageInfo specifically for building
 /// the VM ProgramInfo Tree from a Dart2js info tree.
-abstract class VMProgramInfoVisitor<T> extends InfoVisitor<T> {
-  T visitPackage(PackageInfo info);
+abstract class VMProgramInfoVisitor<T> {
+  T visitAll(AllInfo info, String outputUnit);
+  T visitProgram(ProgramInfo info);
+  T visitPackage(PackageInfo info, String outputUnit);
+  T visitLibrary(LibraryInfo info, String outputUnit);
+  T visitClass(ClassInfo info);
+  T visitClassType(ClassTypeInfo info);
+  T visitField(FieldInfo info);
+  T visitConstant(ConstantInfo info);
+  T visitFunction(FunctionInfo info);
+  T visitTypedef(TypedefInfo info);
+  T visitClosure(ClosureInfo info);
+  T visitOutput(OutputUnitInfo info);
 }
 
 /// A visitor that recursively walks each portion of the program. Because the
@@ -642,6 +647,11 @@
   @override
   void visitProgram(ProgramInfo info) {}
 
+  void visitPackage(PackageInfo info) {
+    throw Exception(
+        "PackageInfo objects are only defined for the VM Devtools format.");
+  }
+
   @override
   void visitLibrary(LibraryInfo info) {
     info.topLevelFunctions.forEach(visitFunction);
diff --git a/tools/VERSION b/tools/VERSION
index 890a9f6..a42fce5 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
 MAJOR 2
 MINOR 19
 PATCH 0
-PRERELEASE 62
+PRERELEASE 63
 PRERELEASE_PATCH 0
\ No newline at end of file
