{-# LANGUAGE TemplateHaskell #-}
module Language.LSP.Types.Configuration where
import Data.Aeson
import Data.Aeson.TH
import Data.Text (Text)
import Language.LSP.Types.Common
import Language.LSP.Types.Utils
data DidChangeConfigurationClientCapabilities =
DidChangeConfigurationClientCapabilities
{ _dynamicRegistration :: Maybe Bool
} deriving (Show, Read, Eq)
deriveJSON lspOptions ''DidChangeConfigurationClientCapabilities
data DidChangeConfigurationParams =
DidChangeConfigurationParams
{ _settings :: Value
} deriving (Show, Read, Eq)
deriveJSON lspOptions ''DidChangeConfigurationParams
data ConfigurationItem =
ConfigurationItem
{ _scopeUri :: Maybe Text
, _section :: Maybe Text
} deriving (Show, Read, Eq)
deriveJSON lspOptions ''ConfigurationItem
data ConfigurationParams =
ConfigurationParams
{ _items :: List ConfigurationItem
} deriving (Show, Read, Eq)
deriveJSON lspOptions ''ConfigurationParams