@patreon/studio
Version:
Patreon Studio Design System
32 lines (31 loc) • 1.17 kB
TypeScript
export declare type AlignLabel = 'flex-start' | 'center';
export declare type ButtonAlignment = 'left' | 'right';
export interface RadioButtonProps {
/**
* Flex align-items value for how to align the radio button with its label (children)
* @default "flex-start""
*/
alignLabel?: AlignLabel;
/**
* Data-tag specifically for the clickable radio button portion, without the label
*/
'button-data-tag'?: string;
checked?: React.InputHTMLAttributes<HTMLInputElement>['checked'];
children?: React.ReactNode | string;
/**
* Data-tag which includes the radio input and styled input
*/
'data-tag'?: string;
disabled?: React.InputHTMLAttributes<HTMLInputElement>['disabled'];
/**
* HTML ID for RadioButton
*/
id?: string;
/**
* When RadioButton is used within a RadioGroup, the required `name` value is passed to RadioButton children.
*/
name?: React.InputHTMLAttributes<HTMLInputElement>['name'];
onChange?: React.InputHTMLAttributes<HTMLInputElement>['onChange'];
value: React.InputHTMLAttributes<HTMLInputElement>['value'];
alignButton?: ButtonAlignment;
}