However, this is jarring when the rest of your emacs environment is configured to use helm as the completion engine.
Fortunately, this is easy to fix by overriding the
tide-popup-select-item implementation to use a custom helm source derived from the completion list.
(defun tide-popup-select-item (prompt list)
:buffer "*Tide Completion Candidates*"))
As far as auto-completion is concerned, since tide configures a company-backend, it is possible to directly use helm-company to use helm for selecting auto-completion candidates.