@Nullable
      private UsageInfo findFirstChild() {
        if (myProject == null) return null;

        PsiElement psiElement = toPsi(selectedValue);
        if (psiElement == null) return null;

        PsiFile psiFile = psiElement instanceof PsiFile ? (PsiFile)psiElement : null;
        if (psiFile == null) {
          if (psiElement instanceof PsiFileSystemItem pfsi) {
            VirtualFile vFile = pfsi.getVirtualFile();
            PsiFile file = vFile == null ? null : psiElement.getManager().findFile(vFile);
            if (file != null) {
              return new UsageInfo(file, 0, 0, true);
            }
          }
          return new UsageInfo(psiElement);
        }

        StructureViewBuilder structureViewBuilder = LanguageStructureViewBuilder.getInstance().getStructureViewBuilder(psiFile);
        if (!(structureViewBuilder instanceof TreeBasedStructureViewBuilder)) return new UsageInfo(psiElement);

        @NotNull StructureViewModel structureViewModel =
          ((TreeBasedStructureViewBuilder)structureViewBuilder).createStructureViewModel(null);
        myUsagePreviewDisposableList.add(new Disposable() {
          @Override
          public void dispose() {
            Disposer.dispose(structureViewModel);
          }
        });

        TreeElement firstChild = ContainerUtil.getFirstItem(Arrays.stream(structureViewModel.getRoot().getChildren()).toList());
        if (!(firstChild instanceof StructureViewTreeElement)) return new UsageInfo(psiFile);

        Object firstChildElement = ((StructureViewTreeElement)firstChild).getValue();
        if (!(firstChildElement instanceof PsiElement)) return new UsageInfo(psiFile);

        return new UsageInfo((PsiElement)firstChildElement);
      }
@Nullable
      private UsageInfo findFirstChild()