package p.studio.lsp; import p.studio.lsp.dtos.LspSessionStateDTO; import p.studio.lsp.messages.*; import p.studio.vfs.VfsProjectDocument; public interface LspService extends AutoCloseable { LspProjectContext projectContext(); VfsProjectDocument projectDocumentVfs(); LspSessionStateDTO snapshot(); LspAnalyzeDocumentResult analyzeDocument(LspAnalyzeDocumentRequest request); LspDefinitionResult definition(LspDefinitionRequest request); @Override default void close() { } }