@trail-ui/react
Version:
30 lines (27 loc) • 961 B
TypeScript
import * as react from 'react';
import { ReactNode } from 'react';
import { ToggleVariantProps, SlotsToClasses, ToggleSlots } from '@trail-ui/theme';
import { SwitchProps as SwitchProps$1 } from 'react-aria-components';
type SwitchThumbIconProps = {
width: string;
height: string;
'data-checked': string;
isSelected: boolean;
className: string;
};
interface SwitchProps extends SwitchProps$1, ToggleVariantProps {
/**
* The icon to be displayed inside the thumb.
*/
thumbIcon?: ReactNode | ((props: SwitchThumbIconProps) => ReactNode);
/**
* Classes object to style the switch and its children.
*/
classNames?: SlotsToClasses<ToggleSlots>;
className?: string;
}
/**
* A switch allows a user to turn a setting on or off.
*/
declare const _Switch: react.ForwardRefExoticComponent<SwitchProps & react.RefAttributes<HTMLLabelElement>>;
export { _Switch as Switch, SwitchProps, SwitchThumbIconProps };