languageId and version does not need to be optional
languageId and version does not need to be optional

See https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md#textdocumentitem

gluon-lang/languageserver-types