{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ComponentWithIssueCount",
  "title": "ComponentWithIssueCount",
  "additionalProperties": false,
  "description": "Details about a component with a count of the issues it contains.",
  "properties": {
    "assignee": {
      "allOf": [
        {
          "$ref": "#/components/schemas/User"
        }
      ],
      "description": "The details of the user associated with `assigneeType`, if any. See `realAssignee` for details of the user assigned to issues created with this component."
    },
    "assigneeType": {
      "description": "The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` for details on how the type of the user, and hence the user, assigned to issues is determined. Takes the following values:\n\n *  `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in.\n *  `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component.\n *  `UNASSIGNED` an assignee is not set for issues created with this component.\n *  `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in.",
      "enum": [
        "PROJECT_DEFAULT",
        "COMPONENT_LEAD",
        "PROJECT_LEAD",
        "UNASSIGNED"
      ],
      "readOnly": true,
      "type": "string"
    },
    "description": {
      "description": "The description for the component.",
      "readOnly": true,
      "type": "string"
    },
    "id": {
      "description": "The unique identifier for the component.",
      "readOnly": true,
      "type": "string"
    },
    "isAssigneeTypeValid": {
      "description": "Whether a user is associated with `assigneeType`. For example, if the `assigneeType` is set to `COMPONENT_LEAD` but the component lead is not set, then `false` is returned.",
      "readOnly": true,
      "type": "boolean"
    },
    "issueCount": {
      "description": "Count of issues for the component.",
      "format": "int64",
      "readOnly": true,
      "type": "integer"
    },
    "lead": {
      "allOf": [
        {
          "$ref": "#/components/schemas/User"
        }
      ],
      "description": "The user details for the component's lead user."
    },
    "name": {
      "description": "The name for the component.",
      "readOnly": true,
      "type": "string"
    },
    "project": {
      "description": "The key of the project to which the component is assigned.",
      "readOnly": true,
      "type": "string"
    },
    "projectId": {
      "description": "Not used.",
      "format": "int64",
      "readOnly": true,
      "type": "integer"
    },
    "realAssignee": {
      "allOf": [
        {
          "$ref": "#/components/schemas/User"
        }
      ],
      "description": "The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee."
    },
    "realAssigneeType": {
      "description": "The type of the assignee that is assigned to issues created with this component, when an assignee cannot be set from the `assigneeType`. For example, `assigneeType` is set to `COMPONENT_LEAD` but no component lead is set. This property is set to one of the following values:\n\n *  `PROJECT_LEAD` when `assigneeType` is `PROJECT_LEAD` and the project lead has permission to be assigned issues in the project that the component is in.\n *  `COMPONENT_LEAD` when `assignee`Type is `COMPONENT_LEAD` and the component lead has permission to be assigned issues in the project that the component is in.\n *  `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues.\n *  `PROJECT_DEFAULT` when none of the preceding cases are true.",
      "enum": [
        "PROJECT_DEFAULT",
        "COMPONENT_LEAD",
        "PROJECT_LEAD",
        "UNASSIGNED"
      ],
      "readOnly": true,
      "type": "string"
    },
    "self": {
      "description": "The URL for this count of the issues contained in the component.",
      "format": "uri",
      "readOnly": true,
      "type": "string"
    }
  },
  "type": "object"
}