import PropTypes from '../_util/vue-types/index.mjs';
import { arrayType, functionType, booleanType, stringType } from '../_util/type.mjs';

const abstractCheckboxGroupProps = () => {
  return {
    name: String,
    prefixCls: String,
    options: arrayType(
      []
    ),
    disabled: Boolean,
    id: String
  };
};
const checkboxGroupProps = () => {
  return {
    ...abstractCheckboxGroupProps(),
    "defaultValue": arrayType(),
    "value": arrayType(),
    "onChange": functionType(),
    "onUpdate:value": functionType()
  };
};
const abstractCheckboxProps = () => {
  return {
    "prefixCls": String,
    "defaultChecked": booleanType(),
    "checked": booleanType(),
    "disabled": booleanType(),
    "isGroup": booleanType(),
    "value": PropTypes.any,
    "name": String,
    "id": String,
    "indeterminate": booleanType(),
    "type": stringType("checkbox"),
    "autofocus": booleanType(),
    "onChange": functionType(),
    "onUpdate:checked": functionType(),
    "onClick": functionType(),
    "skipGroup": booleanType(false)
  };
};
const checkboxProps = () => {
  return {
    ...abstractCheckboxProps(),
    indeterminate: booleanType(false)
  };
};
const CheckboxGroupContextKey = Symbol("CheckboxGroupContext");

export { CheckboxGroupContextKey, abstractCheckboxGroupProps, abstractCheckboxProps, checkboxGroupProps, checkboxProps };
//# sourceMappingURL=interface.mjs.map
