{
  "name": "cdk8s",
  "description": "CDK for K8s",
  "subcommands": [
    {
      "name": "init",
      "description": "Create a new, empty CDK8S project",
      "args": [
        {
          "name": "type",
          "description": "Select language you are using",
          "suggestions": [
            "go-app",
            "java-app",
            "python-app",
            "typescript-app"
          ]
        }
      ]
    },
    {
      "name": "import",
      "description": "Import a CRD schema to generate generate resources",
      "options": [
        {
          "names": [
            "--language",
            "-l"
          ],
          "description": "Output programming language",
          "takes_arg": true,
          "arg": {
            "name": "language",
            "suggestions": [
              "typescript",
              "python",
              "java",
              "go"
            ]
          }
        },
        {
          "names": [
            "--class-prefix"
          ],
          "description": "A prefix to add to all generated class names"
        },
        {
          "names": [
            "--no-class-prefix"
          ],
          "description": "Does not add a prefix to generated class names"
        },
        {
          "names": [
            "--exclude"
          ],
          "description": "Do not import types that match these regular expressions",
          "takes_arg": true,
          "arg": {
            "name": "regexp"
          }
        },
        {
          "names": [
            "--output",
            "-o"
          ],
          "description": "Output directory",
          "takes_arg": true,
          "arg": {
            "template": "folders"
          }
        }
      ],
      "args": [
        {
          "name": "spec",
          "description": "Path to the CRD schema",
          "template": "filepaths"
        }
      ]
    },
    {
      "name": "synth",
      "description": "Synthesizes Kubernetes manifests for all charts in your app",
      "options": [
        {
          "names": [
            "--app",
            "-a"
          ],
          "description": "Command to use in order to execute cdk8s app"
        },
        {
          "names": [
            "--output",
            "-o"
          ],
          "description": "Output directory",
          "takes_arg": true,
          "arg": {
            "template": "folders"
          }
        },
        {
          "names": [
            "--stdout",
            "-s"
          ],
          "description": "Write synthesized manifests to STDOUT instead of the output directory"
        },
        {
          "names": [
            "--plugins-dir"
          ],
          "description": "Directory to store cdk8s plugins"
        },
        {
          "names": [
            "--validate"
          ],
          "description": "Apply validation plugins on the resulting manifests"
        },
        {
          "names": [
            "--no-validate"
          ],
          "description": "Disable validation"
        },
        {
          "names": [
            "--validation-reports-output-file"
          ],
          "description": "File to write a JSON representation of the validation reports to",
          "takes_arg": true,
          "arg": {
            "template": "filepaths"
          }
        }
      ]
    }
  ],
  "options": [
    {
      "names": [
        "--version"
      ],
      "description": "The current version"
    },
    {
      "names": [
        "--help"
      ],
      "description": "Show help"
    },
    {
      "names": [
        "--check-upgrade"
      ],
      "description": "Check for cdk8s-cli upgrade"
    }
  ]
}
