import React from 'react';
import { Radio as RadioPrimitive, RadioProps as RadioPropsPrimitive } from '@modulz/primitives';

export type RadioProps = RadioPropsPrimitive

type ExtractRefType<TypesThatMayContainReactRef> = TypesThatMayContainReactRef extends {ref?: React.Ref<infer T>} ? T : unknown;
type PrimitiveRefType = ExtractRefType<RadioPropsPrimitive>  

export const Radio = React.forwardRef<PrimitiveRefType, RadioProps>((props, ref) => {
  return (
    <RadioPrimitive {...props} ref={ref}  styleConfig={{"base":{"radio":{"normal":{"borderBottomRightRadius":"9999px","backgroundColor":"hsl(0, 0%, 100%)","width":"32px","borderTopLeftRadius":"9999px","transition":"opacity 500ms ease-in-out 0ms","borderBottomLeftRadius":"9999px","borderTopRightRadius":"9999px","height":"32px","border":"1px solid","borderColor":"hsl(210, 100%, 50%)"}},"icon":{"normal":{"backgroundColor":"hsl(0, 0%, 0%)","borderBottomRightRadius":"9999px","width":"8px","borderTopLeftRadius":"9999px","borderBottomLeftRadius":"9999px","borderTopRightRadius":"9999px","height":"8px"}}},"variants":{}}}/>
  );
});


