{
	"$schema": "https://charm.land/crush.json",
	"lsp": {
		"gopls": {
			"options": {
				"gofumpt": true,
				"codelenses": {
					"gc_details": true,
					"generate": true,
					"run_govulncheck": true,
					"test": true,
					"tidy": true,
					"upgrade_dependency": true
				},
				"hints": {
					"assignVariableTypes": true,
					"compositeLiteralFields": true,
					"compositeLiteralTypes": true,
					"constantValues": true,
					"functionTypeParameters": true,
					"parameterNames": true,
					"rangeVariableTypes": true
				},
				"analyses": {
					"nilness": true,
					"unusedparams": true,
					"unusedvariable": true,
					"unusedwrite": true,
					"useany": true
				},
				"staticcheck": true,
				"directoryFilters": ["-.git", "-node_modules"],
				"semanticTokens": true
			}
		},
		"golangci-lint": {
			"command": "golangci-lint-langserver",
			"filetypes": ["go"],
			"init_options": {
				"command": [
					"golangci-lint",
					"run",
					"--output.json.path",
					"stdout",
					"--show-stats=false",
					"--issues-exit-code=1"
				]
			}
		}
	}
}
