{ lib, ... }: let inherit (lib.nixvim) mkNullOrOption; inherit (lib) types; in { analysisExcludedFolders = mkNullOrOption (with types; listOf str) '' An array of paths (absolute or relative to each workspace folder) that should be excluded from analysis. ''; enableSdkFormatter = mkNullOrOption types.bool '' When set to false, prevents registration (or unregisters) the SDK formatter. When set to true or not supplied, will register/reregister the SDK formatter ''; lineLength = mkNullOrOption types.ints.unsigned '' The number of characters the formatter should wrap code at. If unspecified, code will be wrapped at 80 characters. ''; completeFunctionCalls = mkNullOrOption types.bool '' When set to true, completes functions/methods with their required parameters. ''; showTodos = mkNullOrOption types.bool '' Whether to generate diagnostics for TODO comments. If unspecified, diagnostics will not be generated. ''; renameFilesWithClasses = mkNullOrOption (types.enum [ "always" "prompt" ]) '' When set to "always", will include edits to rename files when classes are renamed if the filename matches the class name (but in snake_form). When set to "prompt", a prompt will be shown on each class rename asking to confirm the file rename. Otherwise, files will not be renamed. Renames are performed using LSP's `ResourceOperation` edits - that means the rename is simply included in the resulting `WorkspaceEdit` and must be handled by the client. ''; enableSnippets = mkNullOrOption types.bool '' Whether to include code snippets (such as class, stful, switch) in code completion. When unspecified, snippets will be included. ''; updateImportsOnRename = mkNullOrOption types.bool '' Whether to update imports and other directives when files are renamed. When unspecified, imports will be updated if the client supports `willRenameFiles` requests. ''; documentation = mkNullOrOption (types.enum [ "none" "summary" "full" ]) '' The typekind of dartdocs to include in Hovers, Code Completion, Signature Help and other similar requests. If not set, defaults to `"full"`. ''; includeDependenciesInWorkspaceSymbols = mkNullOrOption types.bool '' Whether to include symbols from dependencies and Dart/Flutter SDKs in Workspace Symbol results. If not set, defaults to true. ''; }