{
  "_copyright": "Copyright (c) 2026, Salesforce, Inc., All rights reserved. For full license text, see the LICENSE.txt file",
  "$schema": "https://slds.lightningdesignsystem.com/schemas/uif-system.v1.json",
  "apiVersion": "1.0.0",
  "name": "CheckboxButtonGroup",
  "description": "Initializes checkbox button group",
  "extensions": {
    "com.salesforce-ux": {
      "genReady": false
    }
  },
  "cssSource": "./checkboxButtonGroup.css",
  "styleApi": {
    "status": "stable",
    "ready": true
  },
  "structure": {
    "name": "checkboxButtonGroup",
    "restrict": [
      "fieldset"
    ],
    "description": "Form-element fieldset that groups a set of checkbox buttons under a shared legend.",
    "attributes": {
      "static": {
        "class": "slds-form-element"
      }
    },
    "children": [
      {
        "name": "legend",
        "restrict": [
          "legend"
        ],
        "description": "Group label rendered as the fieldset legend, styled as a form-element label.",
        "attributes": {
          "static": {
            "class": "slds-form-element__legend slds-form-element__label"
          }
        }
      },
      {
        "name": "control",
        "restrict": [
          "div"
        ],
        "description": "Form-element control region that wraps the group and any help text.",
        "attributes": {
          "static": {
            "class": "slds-form-element__control"
          }
        },
        "children": [
          {
            "name": "group",
            "restrict": [
              "div"
            ],
            "description": "Initializes checkbox button group",
            "attributes": {
              "static": {
                "class": "slds-checkbox_button-group"
              }
            },
            "children": [
              {
                "name": "checkbox",
                "restrict": [
                  "span"
                ],
                "repeats": true,
                "description": "Initializes checkbox inside a button group",
                "attributes": {
                  "static": {
                    "class": "slds-button slds-checkbox_button"
                  }
                },
                "children": [
                  {
                    "name": "input",
                    "restrict": [
                      "input"
                    ],
                    "description": "Visually-hidden checkbox input that drives the checked, focus, and disabled states of the adjacent label.",
                    "attributes": {
                      "static": {
                        "type": "checkbox"
                      }
                    }
                  },
                  {
                    "name": "label",
                    "restrict": [
                      "label"
                    ],
                    "description": "Creates a custom styled checkbox",
                    "attributes": {
                      "static": {
                        "class": "slds-checkbox_button__label"
                      }
                    },
                    "children": [
                      {
                        "name": "faux",
                        "restrict": [
                          "span"
                        ],
                        "description": "Creates a custom styled checkbox",
                        "attributes": {
                          "static": {
                            "class": "slds-checkbox_faux"
                          }
                        }
                      }
                    ]
                  }
                ]
              }
            ]
          },
          {
            "name": "helpText",
            "restrict": [
              "div"
            ],
            "description": "Inline help or error message associated with the inputs via aria-describedby.",
            "attributes": {
              "static": {
                "class": "slds-form-element__help"
              }
            }
          }
        ]
      }
    ]
  },
  "stateClasses": [
    {
      "state": "error",
      "class": "slds-has-error"
    }
  ],
  "states": [
    {
      "name": "error",
      "type": "boolean",
      "description": "Whether the component is in the error state"
    }
  ]
}
