[
  {
    "name": "id",
    "type": "string",
    "required": false,
    "description": "The ID of the label.",
    "released": "10.0.0"
  },
  {
    "name": "text",
    "type": "string",
    "required": true,
    "description": "If `html` is set, this is not required. Text to use within the label. If `html` is provided, the `text` option will be ignored.",
    "released": "1.0.0"
  },
  {
    "name": "html",
    "type": "string",
    "required": true,
    "description": "If `text` is set, this is not required. HTML to use within the label. If `html` is provided, the `text` option will be ignored.",
    "released": "1.0.0"
  },
  {
    "name": "caller",
    "type": "nunjucks-block",
    "required": false,
    "description": "Not strictly an option but supports the [`call` block](https://mozilla.github.io/nunjucks/templating.html#call) as an alternative to the `html` option. To use it, you will need to wrap the entire label component in a `call` block.",
    "released": "10.2.0"
  },
  {
    "name": "visuallyHiddenText",
    "type": "string",
    "required": false,
    "description": "A visually hidden suffix added to the label.",
    "released": "10.6.1"
  },
  {
    "name": "caption",
    "type": "object",
    "required": false,
    "description": "Optional caption for the label.",
    "released": "10.6.1",
    "isComponent": true
  },
  {
    "name": "for",
    "type": "string",
    "required": false,
    "description": "The label `for` attribute, the ID of the input the label is associated with.",
    "released": "1.0.0"
  },
  {
    "name": "heading",
    "type": "object",
    "required": false,
    "description": "Whether the label also acts as a heading.",
    "released": "10.6.1",
    "isComponent": true,
    "params": [
      {
        "name": "id",
        "type": "string",
        "required": false,
        "description": "The ID of the label heading.",
        "released": "10.6.1"
      },
      {
        "name": "text",
        "type": "string",
        "required": false,
        "description": "If `html` is set, this is not required. Text to use within the label as a heading. If `html` is provided, the `text` option will be ignored.",
        "released": "10.6.1"
      },
      {
        "name": "html",
        "type": "string",
        "required": false,
        "description": "If `text` is set, this is not required. HTML to use within the label as a heading. If `html` is provided, the `text` option will be ignored.",
        "released": "10.6.1"
      },
      {
        "name": "visuallyHiddenText",
        "type": "string",
        "required": false,
        "description": "A visually hidden suffix added to the label as a heading.",
        "released": "10.6.1"
      },
      {
        "name": "caption",
        "type": "object",
        "required": false,
        "description": "Optional caption for the label as a heading.",
        "released": "10.6.1",
        "isComponent": true
      },
      {
        "name": "size",
        "type": "string",
        "required": false,
        "description": "Size of the label as a heading – `\"s\"`, `\"m\"`, `\"l\"` or `\"xl\"`.",
        "released": "10.6.1"
      },
      {
        "name": "level",
        "type": "integer",
        "required": false,
        "description": "Optional label heading level. Defaults to `1`.",
        "released": "10.6.1"
      },
      {
        "name": "attributes",
        "type": "object",
        "required": false,
        "description": "HTML attributes (for example data attributes) to add to the label heading.",
        "released": "10.6.1"
      }
    ]
  },
  {
    "name": "isPageHeading",
    "type": "boolean",
    "required": false,
    "description": "Replaced by the `heading` option.",
    "released": "1.0.0",
    "deprecated": "10.6.1"
  },
  {
    "name": "size",
    "type": "string",
    "required": false,
    "description": "Size of the label – `\"s\"`, `\"m\"`, `\"l\"` or `\"xl\"`.",
    "released": "10.2.0"
  },
  {
    "name": "classes",
    "type": "string",
    "required": false,
    "description": "Classes to add to the label tag.",
    "released": "1.0.0"
  },
  {
    "name": "attributes",
    "type": "object",
    "required": false,
    "description": "HTML attributes (for example data attributes) to add to the label tag.",
    "released": "1.0.0"
  }
]
