topPackageNames

#KTIJ-31132
diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/stubBased/deserialization/StubBasedFirSymbolProviderFactories.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/stubBased/deserialization/StubBasedFirSymbolProviderFactories.kt
index 0d554c7..c15a728 100644
--- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/stubBased/deserialization/StubBasedFirSymbolProviderFactories.kt
+++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/stubBased/deserialization/StubBasedFirSymbolProviderFactories.kt
@@ -15,6 +15,7 @@
 import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
 import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
 import org.jetbrains.kotlin.library.KLIB_METADATA_FILE_EXTENSION
+import org.jetbrains.kotlin.resolve.jvm.TopPackageNamesProvider
 import org.jetbrains.kotlin.serialization.deserialization.METADATA_FILE_EXTENSION
 import org.jetbrains.kotlin.serialization.deserialization.builtins.BuiltInSerializerProtocol
 
@@ -113,13 +114,16 @@
     fileFilter: (VirtualFile) -> Boolean,
     symbolProviderFactory: (reducedScope: GlobalSearchScope) -> T,
 ): T {
-    val scopeWithFileFiltering = object : DelegatingGlobalSearchScope(project, baseScope) {
+    val scopeWithFileFiltering = object : DelegatingGlobalSearchScope(project, baseScope), TopPackageNamesProvider {
         override fun contains(file: VirtualFile): Boolean {
             if (!fileFilter(file)) {
                 return false
             }
             return super.contains(file)
         }
+
+        override val topPackageNames: Set<String>?
+            get() = (delegate as? TopPackageNamesProvider)?.topPackageNames
     }
 
     return symbolProviderFactory(scopeWithFileFiltering)