@wix/design-system
Version:
@wix/design-system
55 lines (49 loc) • 1.68 kB
TypeScript
import * as React from 'react';
import { IconElement, TooltipCommonProps } from '../common';
export interface SegmentedToggleProps {
dataHook?: string;
defaultSelected?: React.ReactNode;
selected?: React.ReactNode;
size?: 'small' | 'medium';
onClick?: (event: React.SyntheticEvent, value: string) => void;
disabled?: boolean;
children: any[];
ariaLabel?: string;
ariaLabelledby?: string;
}
export type SegmentedToggleButtonProps = Omit<
React.ButtonHTMLAttributes<HTMLButtonElement>,
'onFocus' | 'onBlur' | 'type'
> & {
prefixIcon?: IconElement;
value?: string;
selected?: boolean;
disabled?: boolean;
size?: 'small' | 'medium';
dataHook?: string;
focusableOnFocus?: React.FocusEventHandler<HTMLButtonElement>;
focusableOnBlur?: React.FocusEventHandler<HTMLButtonElement>;
'aria-checked'?: boolean;
};
export declare const SegmentedToggleButton: React.FC<SegmentedToggleButtonProps>;
export type SegmentedToggleIconProps = Omit<
React.ButtonHTMLAttributes<HTMLButtonElement>,
'onFocus' | 'onBlur' | 'type'
> & {
selected?: boolean;
value?: string;
tooltipText?: string;
tooltipProps?: TooltipCommonProps;
disabled?: boolean;
size?: 'small' | 'medium';
dataHook?: string;
'data-click'?: string;
focusableOnFocus?: React.FocusEventHandler<HTMLButtonElement>;
focusableOnBlur?: React.FocusEventHandler<HTMLButtonElement>;
'aria-checked'?: boolean;
};
export class SegmentedToggleIcon extends React.Component<SegmentedToggleIconProps> {}
export default class SegmentedToggle extends React.Component<SegmentedToggleProps> {
static Button: typeof SegmentedToggleButton;
static Icon: typeof SegmentedToggleIcon;
}