import React, { Ref } from "react";
import { Omit } from "../_type";
import { forwardRefWithStatics } from "../_util/forward-ref-with-statics";
import { CheckProps, Check } from "../check";
import { CheckboxGroup } from "./CheckboxGroup";

/**
 * Checkbox 组件所接收的参数
 */
export interface CheckboxProps extends Omit<CheckProps, "type"> {}

export const Checkbox = forwardRefWithStatics(
  (props: CheckboxProps, ref: Ref<HTMLLabelElement>) => {
    return <Check ref={ref} type="checkbox" {...props} />;
  },
  // statics
  {
    Group: CheckboxGroup,
  }
);

Checkbox.displayName = "Checkbox";
