1. Home 2. Components 3. Toggle Group # Toggle Group A set of two-state buttons that can be toggled on or off. Toggle buttons share outer rounded corners with sharp inner corners, creating a seamless single-button appearance. [Docs](https://www.radix-ui.com/primitives/docs/components/toggle-group)[API Reference](https://www.radix-ui.com/primitives/docs/components/toggle-group#api-reference)## Props ### ToggleGroup | Prop | Type | Default | Description | | --- | --- | --- | --- | | etype | 'single' | 'multiple' | 'single' | Selection behavior | | variant | 'primary' | 'secondary' | 'ghost' | 'primary' | Visual style passed to items | | size | 'sm' | 'base' | 'lg' | 'base' | Size passed to items | | ...Radix props | ComponentProps | - | All Radix group props | ### ToggleGroupItem | Prop | Type | Default | Description | | --- | --- | --- | --- | | inherits | variant, size from group | - | Styling context from parent | | ...Radix props | ComponentProps | - | All Radix item props | Multiple buttons can be active at once with etype="multiple". ## Variants ### Primary (Default) 1 2 3 Selected: option-1 ```jsx 1 2 3 ``` ### Secondary 1 2 3 Selected: option-1 ```jsx 1 2 3 ``` ### Ghost 1 2 3 Selected: option-1 ```jsx 1 2 3 ``` ## Single Selection Selected: center ```jsx const [value, setValue] = useState("center"); ``` Only one button can be active at a time with etype="single". ## With Icons Selected: list ```jsx const [value, setValue] = useState(["view-1"]); ``` Toggle group with icon content. ## Disabled State 1 2 3 Selected: None ```jsx 1 2 3 ```