{
	"type": "array",
	"description": "CMake キット",
	"items": {
		"type": "object",
		"description": "キット",
		"additionalProperties": false,
		"properties": {
			"name": {
				"type": "string",
				"description": "このキットの名前"
			},
			"description": {
				"type": "string",
				"description": "このキットの説明"
			},
			"vendor": {
				"type": "string",
				"description": "このキットのベンダー名"
			},
			"triple": {
				"type": "string",
				"description": "このキットのターゲット トリプル"
			},
			"version": {
				"type": "string",
				"description": "このキットのバージョン"
			},
			"versionRuntime": {
				"type": "string",
				"description": "このキットの C ランタイムのバージョン"
			},
			"keep": {
				"type": "boolean",
				"description": "`true` の場合、このキットが古いように見えても保持されます。"
			},
			"compilers": {
				"type": "object",
				"patternProperties": {
					"\\w+": {
						"type": "string",
						"description": "この言語のコンパイラへのパス"
					}
				}
			},
			"toolchainFile": {
				"type": "string",
				"description": "ツールチェーン ファイルへのパス"
			},
			"visualStudio": {
				"type": "string",
				"description": "Visual Studio 製品のインスタンス ID"
			},
			"visualStudioArchitecture": {
				"type": "string",
				"description": "ターゲットにするアーキテクチャ"
			},
			"visualStudioArguments": {
				"type": "array",
				"description": "vcvarsall.bat の引数",
				"items": {
					"type": "string"
				}
			},
			"environmentSetupScript": {
				"type": "string",
				"description": "キットの環境を変更するスクリプトへの絶対パス"
			},
			"environmentVariables": {
				"type": "object",
				"patternProperties": {
					".*": {
						"type": "string",
						"description": "環境変数の値"
					}
				}
			},
			"cmakeSettings": {
				"type": "object",
				"patternProperties": {
					".*": {
						"oneOf": [
							{
								"type": "string",
								"description": "CMake 設定の値です。セミコロンは逐語的に渡され、CMake によってリスト区切り記号として扱われます。"
							},
							{
								"type": "boolean",
								"description": "CMake 設定のブール値です。-D<key>:BOOL=TRUE/FALSE として出力されます。"
							},
							{
								"type": "number",
								"description": "CMake 設定の数値です。-D<key>:STRING=<number> として出力されます。注: JSON 番号では、末尾のゼロ (1.10 ≡ 1.1) または非常に大きい大きさまたは非常に小さい大きさを保持することはできません。正確なテキストが重要な場合は文字列として引用符で囲みます。"
							},
							{
								"type": "array",
								"items": {
									"type": "string"
								},
								"description": "CMake リストを形成するためにセミコロンで結合された文字列の配列。"
							}
						]
					}
				}
			},
			"preferredGenerator": {
				"type": "object",
				"description": "このキットの優先 CMake ジェネレーターを設定します",
				"properties": {
					"name": {
						"type": "string",
						"description": "使用するジェネレーターの名前"
					},
					"platform": {
						"type": "string",
						"description": "-A 引数に指定する CMake プラットフォーム"
					},
					"toolset": {
						"type": "string",
						"description": "-T 引数に指定する CMake ツールセット"
					}
				},
				"required": [
					"name"
				]
			},
			"isTrusted": {
				"type": "boolean",
				"description": "このキットが信頼できるパスからのものである場合は true"
			}
		}
	}
}