{
  "$schema": "http://json-schema.org/schema",
  "$id": "SchematicsAbpGenerateAPI",
  "title": "ABP Generate API Schema",
  "type": "object",
  "properties": {
    "module": {
      "description": "Backend module name",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 0
      },
      "x-prompt": "Please enter backend module name. (default: \"app\")"
    },
    "apiName": {
      "description": "Backend api name, a.k.a. remoteServiceName",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 1
      },
      "x-prompt": "Please enter backend api name, a.k.a. remoteServiceName. (default: \"default\")"
    },
    "source": {
      "description": "Source Angular project for API definition URL & root namespace resolution",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 2
      },
      "x-prompt": "Please enter source Angular project for API definition URL & root namespace resolution. (default: workspace \"defaultProject\")"
    },
    "target": {
      "description": "Target Angular project to place the generated code",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 3
      },
      "x-prompt": "Please enter target Angular project to place the generated code. (default: workspace \"defaultProject\")"
    },
    "entryPoint": {
      "description": "Target Angular project to place the generated code",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 4
      },
      "x-prompt": "Please enter target Angular project to place the generated code. (default: workspace \"defaultProject\")"
    },
    "serviceType": {
      "description": "Service type to the generated code",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 5
      },
      "enum": [
        "application",
        "integration",
        "all"
      ],
      "x-prompt": {
        "message": "Specifies the service type to generate. `application`, `integration` and `all`, Default value: `application`",
        "type": "list",
        "items": [
          {
            "value": "all",
            "label": "All"
          },
          {
            "value": "application",
            "label": "Application"
          },
          {
            "value": "integration",
            "label": "Integration"
          }
        ]
      }
    }

  },
  "required": []
}
