import React, { ReactNode } from "react"; export interface CheckboxBaseInterFace { /** * 是否禁用 */ disabled?: boolean; /** * √ * 监听数值变化 */ onChange?: (value: boolean, e: React.ChangeEvent) => void; /** * input属性 */ inputAttributes?: JSX.IntrinsicElements['input']; /** * 传入state变量则开启受控模式 */ checked?: boolean; /** * Checkbox值 */ value: string | number; /** * label * 没有children是则使用value作为label */ children?: ReactNode | ((checked: boolean) => ReactNode); } export declare type CheckboxPropsType = CheckboxBaseInterFace & Pick; export declare type CheckboxGroupType = { /** * Checkbox组内容 */ children?: ReactNode; defaultValue?: (string | number)[]; /** * CheckboxGroup值 * 传入state变量则开启受控模式 */ value?: (string | number)[]; /** * 单选组单选对象 */ options?: ((string | number) | { label: ReactNode; value: string | number; })[]; /** * 自定义Label */ customLabel?: (checked: boolean, label: ReactNode) => ReactNode; /** * 选择值变化触发 */ onCheckedChange?: (value: (string | number)[]) => void; } & Pick; export declare type CheckboxGroupContextType = { name: string; inCheckboxGroup: boolean; value?: (string | number)[]; } & Pick;