{
"componentDescription": "Drop-in replacement of the `Radio`, `Switch` and `Checkbox` component.\nUse this component if you want to display an extra label.",
"propDescriptions": {
"checked": { "description": "If true, the component appears selected." },
"classes": { "description": "Override or extend the styles applied to the component." },
"componentsProps": { "description": "The props used for each slot inside." },
"control": {
"description": "A control element. For instance, it can be a Radio, a Switch or a Checkbox."
},
"disabled": { "description": "If true, the control is disabled." },
"disableTypography": {
"description": "If true, the label is rendered as it is passed without an additional typography node."
},
"inputRef": { "description": "Pass a ref to the input element." },
"label": { "description": "A text or an element to be used in an enclosing label element." },
"labelPlacement": { "description": "The position of the label." },
"onChange": {
"description": "Callback fired when the state is changed.",
"typeDescriptions": {
"event": {
"name": "event",
"description": "The event source of the callback. You can pull out the new checked state by accessing event.target.checked (boolean)."
}
}
},
"required": {
"description": "If true, the label will indicate that the input is required."
},
"slotProps": { "description": "The props used for each slot inside." },
"slots": { "description": "The components used for each slot inside." },
"sx": {
"description": "The system prop that allows defining system overrides as well as additional CSS styles."
},
"value": { "description": "The value of the component." }
},
"classDescriptions": {
"asterisk": {
"description": "Styles applied to {{nodeName}}.",
"nodeName": "the asterisk element"
},
"disabled": {
"description": "State class applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "disabled={true}"
},
"error": {
"description": "State class applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "error={true}"
},
"label": {
"description": "Styles applied to {{nodeName}}.",
"nodeName": "the label's Typography component"
},
"labelPlacementBottom": {
"description": "Styles applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "labelPlacement=\"bottom\""
},
"labelPlacementStart": {
"description": "Styles applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "labelPlacement=\"start\""
},
"labelPlacementTop": {
"description": "Styles applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "labelPlacement=\"top\""
},
"required": {
"description": "State class applied to {{nodeName}} if {{conditions}}.",
"nodeName": "the root element",
"conditions": "required={true}"
},
"root": { "description": "Styles applied to the root element." }
},
"slotDescriptions": {
"typography": "The component that renders the label. This is unused if disableTypography is true."
}
}