import { ReactNode } from 'react';
import { BaseProps } from '../../base/props';
import { Direction, PositionX, SimpleValue } from '../../base/atoms';
export type RadioShape = 'button' | 'round';
export interface RadioGroupOption {
    label: string;
    value: string;
    disabled?: boolean;
    shape?: RadioShape;
    onChange?: (checked: boolean) => void;
}
export interface BaseRadio extends BaseProps {
    /**
    * 是否禁用选择
    */
    disabled: boolean
    /**
    * 指定当前是否选中
    */
    checked: boolean
    /**
    * 初始是否选中
    */
    defaultChecked: boolean
    /**
    * 形状
    */
    shape: RadioShape
    /**
    * 文本所在的位置
    */
    labelPosition: PositionX
    /**
    * <a href="#/icon">图标名称</a>，选中前(建议和activeIcon一起修改)
    */
    icon: ReactNode
    /**
    * <a href="#/icon">图标名称</a>，选中后(建议和icon一起修改)
    */
    activeIcon: ReactNode
    /**
    * 携带的标识值，用于 Group 模式
    */
    value: SimpleValue
    /**
    * 选中态变化时触发
    */
    onChange: (checked: boolean) => void
    ariaLabel?: string;
}
export interface BaseRadioGroup extends BaseProps {
    value?: SimpleValue;
    defaultValue?: SimpleValue;
    labelPosition: PositionX;
    direction: Direction;
    shape?: RadioShape;
    disabled?: boolean;
    options: RadioGroupOption[];
    onChange: (value: SimpleValue) => void;
}
