package p.studio.lsp.services;

import p.studio.lsp.messages.BaselineDocumentAnalysis;
import p.studio.lsp.messages.BaselineHover;
import p.studio.lsp.messages.BaselineServerDescription;
import p.studio.lsp.messages.LspProjectContext;

public interface LanguageServiceBridge {
    BaselineServerDescription describeServer(LspProjectContext context);

    BaselineDocumentAnalysis analyzeDocument(LspProjectContext context, String documentUri, String text);

    BaselineHover hover(LspProjectContext context, String documentUri, int line, int character);

    String onSave(LspProjectContext context, String documentUri);
}
