import React, { InputHTMLAttributes } from 'react';
import Div from '../Element/Div/Div';
import { CreateProps } from '../../types/utils/CreateProps';
declare type CheckboxProps = CreateProps<{
/** State of the checkbox. Mixed should be used only in the group of checkboxes to indicate that some of the boxes in the group are selected */
checked?: boolean | 'mixed';
/** Label of the checkbox */
label?: React.ReactNode;
/** Optional description text. This is also for showing possible errors */
description?: React.ReactNode;
/** On checkbox state change event handler */
onChange?: (event: React.ChangeEvent | React.KeyboardEvent, checked: boolean) => void;
/** Disable checkbox */
disabled?: boolean;
/** Checkbox has an error, use it with description prop to give a descriptive message for th error */
error?: boolean;
/** When true, displays loader instead of the checkbox */
loading?: boolean;
/** Name of the form control. Submitted with the form as a name of value, if the checkbox is toggled on */
name?: InputHTMLAttributes['name'];
/** The value of the checkbox when submitting the form, if the checkbox is toggled on */
value?: InputHTMLAttributes['value'];
}, typeof Div>;
declare const Checkbox: React.FunctionComponent;
export default Checkbox;