@neuctra/ui
Version:
A modern, responsive, customizable React UI component library powered by Tailwind CSS and Vite.
26 lines (25 loc) • 995 B
TypeScript
import { default as React } from 'react';
export interface ToggleGroupOption {
value: string;
label?: React.ReactNode;
icon?: React.ReactNode;
disabled?: boolean;
/** Accessible name when the option is icon-only. */
ariaLabel?: string;
}
export interface ToggleGroupProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
options: ToggleGroupOption[];
/** "single" behaves like a segmented control; "multiple" like toolbar toggles. */
type?: "single" | "multiple";
value?: string | string[];
defaultValue?: string | string[];
onChange?: (value: string | string[]) => void;
size?: "sm" | "md" | "lg";
fullWidth?: boolean;
disabled?: boolean;
/** Each option's `<button>`. */
itemClassName?: string;
/** Wrapper around an option's icon. */
iconClassName?: string;
}
export declare const ToggleGroup: React.ForwardRefExoticComponent<ToggleGroupProps & React.RefAttributes<HTMLDivElement>>;