{
  "$schema": "https://json-schema.org/schema",
  "version": 2,
  "title": "Gradle Impl executor",
  "description": "The Gradle Impl executor is used to run Gradle tasks.",
  "type": "object",
  "properties": {
    "taskName": {
      "type": "string",
      "description": "The name of the Gradle task to run."
    },
    "testClassName": {
      "type": "string",
      "description": "The full test name to run for test task (package name and class name)."
    },
    "args": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "description": "The arguments to pass to the Gradle task.",
      "examples": [["--warning-mode", "all"], "--stracktrace"]
    },
    "excludeDependsOn": {
      "type": "boolean",
      "description": "If true, the tasks will not execute its dependsOn tasks (e.g. pass --exclude-task args to gradle command). If false, the task will execute its dependsOn tasks.",
      "default": true,
      "x-priority": "internal"
    },
    "includeDependsOnTasks": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of Gradle task paths that should be included (not excluded) even when excludeDependsOn is true. These are typically provider-based dependencies that Gradle must resolve.",
      "x-priority": "internal"
    },
    "__unparsed__": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional arguments to pass to the gradle command (automatically populated by Nx).",
      "x-priority": "internal"
    }
  },
  "required": ["taskName"]
}
