{
  "name": "rome",
  "description": "Rome CLI",
  "subcommands": [
    {
      "name": "check",
      "description": "Run the linter on a set of files",
      "options": [
        {
          "names": [
            "--apply"
          ],
          "description": "Apply safe fixes"
        },
        {
          "names": [
            "--apply-unsafe"
          ],
          "description": "Apply safe and unsafe fixes"
        },
        {
          "names": [
            "--max-diagnostics"
          ],
          "description": "Cap the amount of diagnostics displayed",
          "takes_arg": true,
          "arg": {
            "name": "NUMBER"
          }
        },
        {
          "names": [
            "--config-path"
          ],
          "description": "Set the filesystem path to the config dir of the rome.json file",
          "takes_arg": true,
          "arg": {
            "name": "dir",
            "is_variadic": true,
            "template": "folders"
          }
        },
        {
          "names": [
            "--verbose"
          ],
          "description": "Print additional verbose advices on diagnostics"
        }
      ],
      "args": [
        {
          "name": "file, dir",
          "is_variadic": true,
          "template": "filepaths"
        }
      ]
    },
    {
      "name": "ci",
      "description": "Run the linter and formatter check on a set of files",
      "options": [
        {
          "names": [
            "--formatter-enabled"
          ],
          "description": "Allow to enable or disable the formatter check"
        },
        {
          "names": [
            "--linter-enabled"
          ],
          "description": "Allow to enable or disable the linter check"
        },
        {
          "names": [
            "--organize-imports-enabled"
          ],
          "description": "Allow to enable or disable the organize imports"
        },
        {
          "names": [
            "--max-diagnostics"
          ],
          "description": "Cap the amount of diagnostics displayed",
          "takes_arg": true,
          "arg": {
            "name": "NUMBER"
          }
        },
        {
          "names": [
            "--config-path"
          ],
          "description": "Set the filesystem path to the config dir of the rome.json file",
          "takes_arg": true,
          "arg": {
            "name": "dir",
            "is_variadic": true,
            "template": "folders"
          }
        },
        {
          "names": [
            "--verbose"
          ],
          "description": "Print additional verbose advices on diagnostics"
        },
        {
          "names": [
            "--indent-style"
          ],
          "description": "Change the indention character",
          "takes_arg": true,
          "arg": {
            "name": "style",
            "suggestions": [
              "tabs",
              "space"
            ]
          }
        },
        {
          "names": [
            "--indent-size"
          ],
          "description": "How many spaces should be used for indentation",
          "takes_arg": true,
          "arg": {
            "name": "SIZE"
          }
        },
        {
          "names": [
            "--line-width"
          ],
          "description": "How many characters the formatter is allowed to print in a single line",
          "takes_arg": true,
          "arg": {
            "name": "width"
          }
        },
        {
          "names": [
            "--quote-style"
          ],
          "description": "Changes the quotation character for strings",
          "takes_arg": true,
          "arg": {
            "name": "style",
            "suggestions": [
              "single",
              "double"
            ]
          }
        },
        {
          "names": [
            "--quote-properties"
          ],
          "description": "Changes when properties in object should be quoted",
          "takes_arg": true,
          "arg": {
            "name": "property",
            "suggestions": [
              "as-needed",
              "preserve"
            ]
          }
        },
        {
          "names": [
            "--trailing-comma"
          ],
          "description": "Changes trailing commas in multi-line comma-separated syntactic structures",
          "takes_arg": true,
          "arg": {
            "name": "trailing",
            "suggestions": [
              "all",
              "es5",
              "none"
            ]
          }
        },
        {
          "names": [
            "--semicolons"
          ],
          "description": "Changes when to print semicolons for statements",
          "takes_arg": true,
          "arg": {
            "name": "rule",
            "suggestions": [
              "always",
              "as-needed"
            ]
          }
        }
      ],
      "args": [
        {
          "name": "file, dir",
          "is_variadic": true,
          "template": "filepaths"
        }
      ]
    },
    {
      "name": "format",
      "description": "Run the formatter on a set of files",
      "options": [
        {
          "names": [
            "--write"
          ],
          "description": "Edit the files in place (beware!) instead of printing the diff to the console"
        },
        {
          "names": [
            "--skip-errors"
          ],
          "description": "Skip over files containing syntax errors instead of emitting an error diagnostic"
        },
        {
          "names": [
            "--max-diagnostics"
          ],
          "description": "Cap the amount of diagnostics displayed",
          "takes_arg": true,
          "arg": {
            "name": "NUMBER"
          }
        },
        {
          "names": [
            "--config-path"
          ],
          "description": "Set the filesystem path to the config dir of the rome.json file",
          "takes_arg": true,
          "arg": {
            "name": "dir",
            "is_variadic": true,
            "template": "folders"
          }
        },
        {
          "names": [
            "--verbose"
          ],
          "description": "Print additional verbose advices on diagnostics"
        },
        {
          "names": [
            "--indent-style"
          ],
          "description": "Change the indention character",
          "takes_arg": true,
          "arg": {
            "name": "style",
            "suggestions": [
              "tabs",
              "space"
            ]
          }
        },
        {
          "names": [
            "--indent-size"
          ],
          "description": "How many spaces should be used for indentation",
          "takes_arg": true,
          "arg": {
            "name": "SIZE"
          }
        },
        {
          "names": [
            "--line-width"
          ],
          "description": "How many characters the formatter is allowed to print in a single line",
          "takes_arg": true,
          "arg": {
            "name": "width"
          }
        },
        {
          "names": [
            "--quote-style"
          ],
          "description": "Changes the quotation character for strings",
          "takes_arg": true,
          "arg": {
            "name": "style",
            "suggestions": [
              "single",
              "double"
            ]
          }
        },
        {
          "names": [
            "--quote-properties"
          ],
          "description": "Changes when properties in object should be quoted",
          "takes_arg": true,
          "arg": {
            "name": "property",
            "suggestions": [
              "as-needed",
              "preserve"
            ]
          }
        },
        {
          "names": [
            "--trailing-comma"
          ],
          "description": "Changes trailing commas in multi-line comma-separated syntactic structures",
          "takes_arg": true,
          "arg": {
            "name": "trailing",
            "suggestions": [
              "all",
              "es5",
              "none"
            ]
          }
        },
        {
          "names": [
            "--semicolons"
          ],
          "description": "Changes when to print semicolons for statements",
          "takes_arg": true,
          "arg": {
            "name": "rule",
            "suggestions": [
              "always",
              "as-needed"
            ]
          }
        },
        {
          "names": [
            "--stdin-file-path"
          ],
          "description": "A file name with its extension to pass when reading from standard in",
          "takes_arg": true,
          "arg": {
            "name": "string"
          }
        }
      ],
      "args": [
        {
          "name": "file, dir",
          "is_variadic": true,
          "template": "filepaths"
        }
      ]
    },
    {
      "name": "init",
      "description": "Bootstraps a new rome project"
    },
    {
      "name": "start",
      "description": "Start the Rome daemon server process"
    },
    {
      "name": "stop",
      "description": "Stop the Rome daemon server process"
    },
    {
      "name": "lsp-proxy",
      "description": "Acts as a server for the Language Server Protocol over stdin/stdout"
    },
    {
      "name": "rage",
      "description": "Prints information for debugging"
    },
    {
      "name": "version",
      "description": "Shows the Rome version information and quit"
    },
    {
      "name": "help",
      "description": "Prints help message"
    }
  ],
  "options": [
    {
      "names": [
        "--colors"
      ],
      "description": "Set the formatting mode for markup",
      "takes_arg": true,
      "arg": {
        "name": "mode",
        "suggestions": [
          "off",
          "force"
        ]
      }
    },
    {
      "names": [
        "--use-server"
      ],
      "description": "Connect to a running instance of the Rome daemon server"
    },
    {
      "names": [
        "--version"
      ],
      "description": "Show the Rome version information and quit"
    },
    {
      "names": [
        "--files-max-size"
      ],
      "description": "The maximum allowed size for source code files in bytes",
      "takes_arg": true,
      "arg": {
        "name": "BYTES"
      }
    }
  ]
}
