I added this to the issue too, but I was able to create an elisp command that can do this using the rescript-lsp mode. I submitted a PR to the rescript emacs mode to ad this.
(defun lsp-rescript--create-interface-from-buffer (buffer)
(interactive "bFile containing implementation: ")
(with-current-buffer buffer
(let ((uri (concat "file://localhost" (buffer-file-name) )))
(if (lsp-request "textDocument/createInterface"
(list
:uri uri)
)
(find-file (concat (buffer-file-name) "i" ))
())
)))