File: .lake/packages/lean4/src/lean/Lean/Data/Lsp/Capabilities.lean

full_name: Lean.Lsp.CompletionItemCapabilities
code: structure CompletionItemCapabilities where
  insertReplaceSupport? : Option Bool := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.CompletionItemCapabilities.insertReplaceSupport?
code: structure CompletionItemCapabilities where
  insertReplaceSupport? : Option Bool := none
  deriving ToJson, FromJson
goal: Option Bool

full_name: Lean.Lsp.instToJsonCompletionItemCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.CompletionItemCapabilities

full_name: Lean.Lsp.instFromJsonCompletionItemCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.CompletionItemCapabilities

full_name: Lean.Lsp.CompletionClientCapabilities
code: structure CompletionClientCapabilities where
  completionItem? : Option CompletionItemCapabilities := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.CompletionClientCapabilities.completionItem?
code: structure CompletionClientCapabilities where
  completionItem? : Option CompletionItemCapabilities := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.CompletionItemCapabilities

full_name: Lean.Lsp.instToJsonCompletionClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.CompletionClientCapabilities

full_name: Lean.Lsp.instFromJsonCompletionClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.CompletionClientCapabilities

full_name: Lean.Lsp.TextDocumentClientCapabilities.codeAction?
code: structure TextDocumentClientCapabilities where
  completion? : Option CompletionClientCapabilities := none
  codeAction? : Option CodeActionClientCapabilities := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.CodeActionClientCapabilities

full_name: Lean.Lsp.TextDocumentClientCapabilities
code: structure TextDocumentClientCapabilities where
  completion? : Option CompletionClientCapabilities := none
  codeAction? : Option CodeActionClientCapabilities := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.TextDocumentClientCapabilities.completion?
code: structure TextDocumentClientCapabilities where
  completion? : Option CompletionClientCapabilities := none
  codeAction? : Option CodeActionClientCapabilities := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.CompletionClientCapabilities

full_name: Lean.Lsp.instToJsonTextDocumentClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.TextDocumentClientCapabilities

full_name: Lean.Lsp.instFromJsonTextDocumentClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.TextDocumentClientCapabilities

full_name: Lean.Lsp.ShowDocumentClientCapabilities
code: structure ShowDocumentClientCapabilities where
  support : Bool
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.ShowDocumentClientCapabilities.support
code: structure ShowDocumentClientCapabilities where
  support : Bool
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.instToJsonShowDocumentClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.ShowDocumentClientCapabilities

full_name: Lean.Lsp.instFromJsonShowDocumentClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.ShowDocumentClientCapabilities

full_name: Lean.Lsp.WindowClientCapabilities
code: structure WindowClientCapabilities where
  showDocument? : Option ShowDocumentClientCapabilities := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.WindowClientCapabilities.showDocument?
code: structure WindowClientCapabilities where
  showDocument? : Option ShowDocumentClientCapabilities := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.ShowDocumentClientCapabilities

full_name: Lean.Lsp.instToJsonWindowClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.WindowClientCapabilities

full_name: Lean.Lsp.instFromJsonWindowClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.WindowClientCapabilities

full_name: Lean.Lsp.ChangeAnnotationSupport
code: structure ChangeAnnotationSupport where
  groupsOnLabel? : Option Bool := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.ChangeAnnotationSupport.groupsOnLabel?
code: structure ChangeAnnotationSupport where
  groupsOnLabel? : Option Bool := none
  deriving ToJson, FromJson
goal: Option Bool

full_name: Lean.Lsp.instToJsonChangeAnnotationSupport
code: ToJson
goal: Lean.ToJson Lean.Lsp.ChangeAnnotationSupport

full_name: Lean.Lsp.instFromJsonChangeAnnotationSupport
code: FromJson
goal: Lean.FromJson Lean.Lsp.ChangeAnnotationSupport

full_name: Lean.Lsp.WorkspaceEditClientCapabilities.resourceOperations?
code: structure WorkspaceEditClientCapabilities where
  /-- The client supports versioned document changes in `WorkspaceEdit`s. -/
  documentChanges?         : Option Bool := none
  /--  Whether the client in general supports change annotations on text edits. -/
  changeAnnotationSupport? : Option ChangeAnnotationSupport := none
  /-- The resource operations the client supports. Clients should at least support 'create', 'rename' and 'delete' files and folders. -/
  resourceOperations?      : Option (Array String) := none
  deriving ToJson, FromJson
goal: Option (Array String)

full_name: Lean.Lsp.WorkspaceEditClientCapabilities.changeAnnotationSupport?
code: structure WorkspaceEditClientCapabilities where
  /-- The client supports versioned document changes in `WorkspaceEdit`s. -/
  documentChanges?         : Option Bool := none
  /--  Whether the client in general supports change annotations on text edits. -/
  changeAnnotationSupport? : Option ChangeAnnotationSupport := none
  /-- The resource operations the client supports. Clients should at least support 'create', 'rename' and 'delete' files and folders. -/
  resourceOperations?      : Option (Array String) := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.ChangeAnnotationSupport

full_name: Lean.Lsp.WorkspaceEditClientCapabilities.documentChanges?
code: structure WorkspaceEditClientCapabilities where
  /-- The client supports versioned document changes in `WorkspaceEdit`s. -/
  documentChanges?         : Option Bool := none
  /--  Whether the client in general supports change annotations on text edits. -/
  changeAnnotationSupport? : Option ChangeAnnotationSupport := none
  /-- The resource operations the client supports. Clients should at least support 'create', 'rename' and 'delete' files and folders. -/
  resourceOperations?      : Option (Array String) := none
  deriving ToJson, FromJson
goal: Option Bool

full_name: Lean.Lsp.WorkspaceEditClientCapabilities
code: structure WorkspaceEditClientCapabilities where
  /-- The client supports versioned document changes in `WorkspaceEdit`s. -/
  documentChanges?         : Option Bool := none
  /--  Whether the client in general supports change annotations on text edits. -/
  changeAnnotationSupport? : Option ChangeAnnotationSupport := none
  /-- The resource operations the client supports. Clients should at least support 'create', 'rename' and 'delete' files and folders. -/
  resourceOperations?      : Option (Array String) := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.instToJsonWorkspaceEditClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.WorkspaceEditClientCapabilities

full_name: Lean.Lsp.instFromJsonWorkspaceEditClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.WorkspaceEditClientCapabilities

full_name: Lean.Lsp.WorkspaceClientCapabilities.applyEdit
code: structure WorkspaceClientCapabilities where
  applyEdit: Bool
  workspaceEdit? : Option WorkspaceEditClientCapabilities := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.WorkspaceClientCapabilities
code: structure WorkspaceClientCapabilities where
  applyEdit: Bool
  workspaceEdit? : Option WorkspaceEditClientCapabilities := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.WorkspaceClientCapabilities.workspaceEdit?
code: structure WorkspaceClientCapabilities where
  applyEdit: Bool
  workspaceEdit? : Option WorkspaceEditClientCapabilities := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.WorkspaceEditClientCapabilities

full_name: Lean.Lsp.instToJsonWorkspaceClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.WorkspaceClientCapabilities

full_name: Lean.Lsp.instFromJsonWorkspaceClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.WorkspaceClientCapabilities

full_name: Lean.Lsp.ClientCapabilities.textDocument?
code: structure ClientCapabilities where
  textDocument? : Option TextDocumentClientCapabilities := none
  window?       : Option WindowClientCapabilities       := none
  workspace?    : Option WorkspaceClientCapabilities    := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.TextDocumentClientCapabilities

full_name: Lean.Lsp.ClientCapabilities
code: structure ClientCapabilities where
  textDocument? : Option TextDocumentClientCapabilities := none
  window?       : Option WindowClientCapabilities       := none
  workspace?    : Option WorkspaceClientCapabilities    := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.ClientCapabilities.workspace?
code: structure ClientCapabilities where
  textDocument? : Option TextDocumentClientCapabilities := none
  window?       : Option WindowClientCapabilities       := none
  workspace?    : Option WorkspaceClientCapabilities    := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.WorkspaceClientCapabilities

full_name: Lean.Lsp.ClientCapabilities.window?
code: structure ClientCapabilities where
  textDocument? : Option TextDocumentClientCapabilities := none
  window?       : Option WindowClientCapabilities       := none
  workspace?    : Option WorkspaceClientCapabilities    := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.WindowClientCapabilities

full_name: Lean.Lsp.instToJsonClientCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.ClientCapabilities

full_name: Lean.Lsp.instFromJsonClientCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.ClientCapabilities

full_name: Lean.Lsp.ServerCapabilities.documentHighlightProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Type

full_name: Lean.Lsp.ServerCapabilities.documentSymbolProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.completionProvider?
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.CompletionOptions

full_name: Lean.Lsp.ServerCapabilities.renameProvider?
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.RenameOptions

full_name: Lean.Lsp.ServerCapabilities.foldingRangeProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.typeDefinitionProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.referencesProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.hoverProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.declarationProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.codeActionProvider?
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.CodeActionOptions

full_name: Lean.Lsp.ServerCapabilities.textDocumentSync?
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.TextDocumentSyncOptions

full_name: Lean.Lsp.ServerCapabilities.semanticTokensProvider?
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Option Lean.Lsp.SemanticTokensOptions

full_name: Lean.Lsp.ServerCapabilities.callHierarchyProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.definitionProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.ServerCapabilities.workspaceSymbolProvider
code: structure ServerCapabilities where
  textDocumentSync?         : Option TextDocumentSyncOptions := none
  completionProvider?       : Option CompletionOptions       := none
  hoverProvider             : Bool                           := false
  documentHighlightProvider : Bool                           := false
  documentSymbolProvider    : Bool                           := false
  definitionProvider        : Bool                           := false
  declarationProvider       : Bool                           := false
  typeDefinitionProvider    : Bool                           := false
  referencesProvider        : Bool                           := false
  callHierarchyProvider     : Bool                           := false
  renameProvider?           : Option RenameOptions           := none
  workspaceSymbolProvider   : Bool                           := false
  foldingRangeProvider      : Bool                           := false
  semanticTokensProvider?   : Option SemanticTokensOptions   := none
  codeActionProvider?       : Option CodeActionOptions       := none
  deriving ToJson, FromJson
goal: Bool

full_name: Lean.Lsp.instToJsonServerCapabilities
code: ToJson
goal: Lean.ToJson Lean.Lsp.ServerCapabilities

full_name: Lean.Lsp.instFromJsonServerCapabilities
code: FromJson
goal: Lean.FromJson Lean.Lsp.ServerCapabilities