@styleless-ui/react
Version:
Completely unstyled, headless and accessible React UI components.
41 lines (40 loc) • 1.28 kB
TypeScript
import * as React from "react";
import type { Classes, MergeElementProps } from "../../typings";
interface OwnProps {
/**
* The content of the component.
*/
children?: React.ReactNode;
/**
* Map of sub-components and their correlated classNames.
*/
classes?: Classes<"root" | "label">;
label: string | {
/**
* The label to use as `aria-label` property.
*/
screenReaderLabel: string;
} | {
/**
* Identifies the element (or elements) that labels the group.
*
* @see {@link https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-labelledby MDN Web Docs} for more information.
*/
labelledBy: string;
};
/**
* The value of the selected radio.
*/
value?: string;
/**
* The default value. Use when the component is not controlled.
*/
defaultValue?: string;
/**
* The Callback is fired when the state changes.
*/
onValueChange?: (value: string) => void;
}
export type Props = Omit<MergeElementProps<"div", OwnProps>, "className" | "defaultChecked">;
declare const MenuRadioGroup: (props: Props, ref: React.Ref<HTMLDivElement>) => JSX.Element;
export default MenuRadioGroup;