{
  "description": "Compare, edit or apply a gmailctl configuration. Init, download, export and test are left out.",
  "options": [
    {
      "names": [
        "--config"
      ],
      "description": "Directory holding gmailctl config; defaults to the per-user location.",
      "args": {
        "name": "config",
        "description": "Directory holding gmailctl config; defaults to the per-user location.",
        "isOptional": false,
        "template": "folders"
      }
    }
  ],
  "name": "gmailctl",
  "subcommands": [
    {
      "name": "diff",
      "description": "Compare the local configuration with the Gmail settings.",
      "options": [
        {
          "names": [
            "--filename",
            "-f"
          ],
          "description": "Config file",
          "args": {
            "name": "filename",
            "isOptional": false,
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--debug"
          ],
          "description": "Debug output"
        },
        {
          "names": [
            "--context"
          ],
          "description": "Diff context lines",
          "args": {
            "name": "context",
            "isOptional": false
          }
        }
      ]
    },
    {
      "name": "apply",
      "description": "Apply a configuration file to Gmail settings.",
      "options": [
        {
          "names": [
            "--filename",
            "-f"
          ],
          "description": "Config file",
          "args": {
            "name": "filename",
            "isOptional": false,
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--yes",
            "-y"
          ],
          "description": "Skip confirmation",
          "isDangerous": true
        },
        {
          "names": [
            "--remove-labels",
            "-r"
          ],
          "description": "Allow removing labels",
          "isDangerous": true
        },
        {
          "names": [
            "--yolo"
          ],
          "description": "Skip config tests"
        },
        {
          "names": [
            "--debug"
          ],
          "description": "Debug output"
        }
      ]
    },
    {
      "name": "edit",
      "description": "Edit the configuration and apply it to Gmail.",
      "options": [
        {
          "names": [
            "--filename",
            "-f"
          ],
          "description": "Config file",
          "args": {
            "name": "filename",
            "isOptional": false,
            "template": "filepaths"
          }
        },
        {
          "names": [
            "--yolo"
          ],
          "description": "Skip config tests"
        },
        {
          "names": [
            "--debug"
          ],
          "description": "Debug output"
        }
      ]
    }
  ]
}
