/** * ToggleGroup: a set of {@link Toggle}-style buttons with shared selection. * `type="single"` behaves like a segmented control (one value, optionally * deselectable); `type="multiple"` is a set of independent toggles (an array of * values). Selection is exposed as `data-state="on" | "off"` per item; skinned * with the veryfront theme tokens. * * The selection MECHANICS come from the active adapter's `toggleGroup` slot * (`useAdapter().toggleGroup`): zero-dependency builtin by default, swappable * via `UIAdapterProvider`. This file owns only the API shape + the item's visual * classes; the adapter drives selection + `aria-pressed` / `data-state`. * * @module react/components/ui/toggle-group */ import * as React from "react"; import type { MultipleToggleGroupRootProps, SingleToggleGroupRootProps } from "./adapter/contract.js"; /** Props accepted by ``. */ export type ToggleGroupProps = SingleToggleGroupRootProps | MultipleToggleGroupRootProps; /** Render a group of toggles with shared selection (via the adapter engine). */ export declare function ToggleGroup({ className, children, ...props }: ToggleGroupProps): React.ReactElement; /** Props accepted by ``. */ export interface ToggleGroupItemProps extends Omit, "value"> { /** The value this item contributes to the group selection. */ value: string; /** Render as a Slot, merging the item behaviour onto the child element. */ asChild?: boolean; /** React 19: ref is a regular prop. */ ref?: React.Ref; } /** A single toggle within a {@link ToggleGroup}. */ export declare function ToggleGroupItem({ className, ...props }: ToggleGroupItemProps): React.ReactElement; //# sourceMappingURL=toggle-group.d.ts.map