import React from 'react'; import { CheckboxSize, CheckboxProps } from './components/Checkbox'; export interface CheckboxInputProps { /** * The id attribute of the input. */ id: string; /** * The checkbox input "checked" attribute. */ isChecked: boolean; /** * Custom content to be displayed to right of checkbox. */ label: string; /** * Callback function when input is changed. */ onChange: (event: React.ChangeEvent) => void; /** * Additional classes to add. */ className?: string; /** * Mark the input field as invalid and display a validation message. * Pass a string or node to render a validation message below the input. */ error?: React.ReactNode; /** * Additional clarifying text to help describe the input */ helpText?: React.ReactNode; /** * Determines if the label is not shown for stylistic reasons. * Note the label is still a required prop and will be used as the aria-label for accessibility reasons. */ hideLabel?: boolean; /** * If the input should be disabled and not focusable. */ isDisabled?: boolean; /** * Whether the checkbox is rendered in an indeterminate state. * NOTE: this change is only visual and it does not affect the checked or unchecked state of the checkbox. */ isIndeterminate?: CheckboxProps['isIndeterminate']; /** * The required and aria-required attributes on the input */ isRequired?: boolean; /** * Callback function when input is blurred. */ onBlur?: (event: React.FocusEvent) => void; /** * Callback function when input is focused. */ onFocus?: (event: React.FocusEvent) => void; /** * Visual indicator that the field is required, that gets appended to the label */ requiredIndicator?: React.ReactNode; /** * The size of the checkbox. */ size?: CheckboxSize; /** * Additional props to be spread to rendered element */ [x: string]: any; } export declare const CheckboxInput: React.FC;