import { MouseEvent } from 'react';
import './Checkbox.scss';
import { CheckboxStatus, Sizes } from '../../core/types';
export type CheckboxProps = {
    value: boolean | CheckboxStatus;
    onClick?: (e?: MouseEvent<HTMLDivElement>) => void;
    size?: Sizes;
    color?: string;
    className?: string;
    style?: React.CSSProperties;
};
/**
 * Checkbox
 * two modes: boolean and ternary, depending on if the value type is boolean or CheckboxStatus
 * boolean mode:
 * - onClick is called with the event
 * - value is true or false
 * ternary mode:
 * - onClick is called with the event
 * - value is CheckboxStatus.ALL, CheckboxStatus.NONE, or CheckboxStatus.SOME
 * @param props - props for the component
 * @param props.value - value for the component, boolean or CheckboxStatus
 * @param props.onClick - onClick handler for the component, called with the event, returns void
 * @param props.size - Size of the checkbox. The default size is 12x12 (standard size). The only other size is medium, which is 16px*16px.
 * @param props.color - background color for the component
 * @param props.className - className for the component
 * @param props.style - style for the component
 * @returns a checkbox component
 */
export default function Checkbox(props: CheckboxProps): import("react/jsx-runtime").JSX.Element;
