import React from 'react'; import { DefaultProps, FlowindSize, Selectors } from '../../styles'; import { ForwardRefWithStaticComponents } from '../../utils/forwardRef-with-static-components'; import { InlineInputStylesNames } from '../inline-input'; import { CheckboxGroup } from './checkbox-group/checkbox-group'; import useStyles, { CheckboxStylesParams } from './checkbox.styles'; export type CheckboxStylesNames = Selectors | InlineInputStylesNames; export interface CheckboxProps extends DefaultProps, Omit, 'type' | 'size'> { variant?: string; /** Key of theme.radius or any valid CSS value to set border-radius, theme.defaultRadius by default */ radius?: FlowindSize; /** Controls label font-size and checkbox width and height */ size?: FlowindSize; /** Checkbox label */ label?: React.ReactNode; /** Indeterminate state of checkbox, if set, `checked` prop is ignored */ indeterminate?: boolean; /** Props added to the root element */ wrapperProps?: Record; /** Icon rendered when checkbox has checked or indeterminate state */ icon?: React.FC<{ indeterminate: boolean; className: string; }>; /** Position of the label */ labelPosition?: 'left' | 'right'; /** Description, displayed after the label */ description?: React.ReactNode; /** Error message displayed after the input */ error?: React.ReactNode; } type CheckboxComponent = ForwardRefWithStaticComponents; export declare const Checkbox: CheckboxComponent; export {};