import type React from 'react'; import type { BaseSelectableCardProps } from './selectable-card-base'; interface BaseCheckboxCardProps extends BaseSelectableCardProps { /** * The name of the input to use when submitting the form. */ name?: string; /** * The value of the checkbox that will be submitted with the form data. * * @default on * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#value */ value?: string; /** * Whether the input is disabled. * @default false */ disabled?: boolean; /** * Whether the input is required. * @default false */ required?: boolean; /** * Fires if the input fails validation on form submit. */ onInvalid?: React.FormEventHandler; /** * Focus event handler. */ onFocus?: React.FocusEventHandler; /** * Blur event handler. */ onBlur?: React.FocusEventHandler; /** * ARIA label for the input. */ 'aria-label'?: string; /** * ARIA describedby for the input. */ 'aria-describedby'?: string; /** * ARIA invalid state. */ 'aria-invalid'?: boolean; } type ControlledProps = { /** * Whether the checkbox is checked. * Makes the input controlled. */ checked: boolean; /** * Fires when the input is checked or unchecked. */ onChange: React.ChangeEventHandler; defaultChecked?: never; }; type UncontrolledProps = { /** * Whether an (uncontrolled) checkbox is checked by default. */ defaultChecked?: boolean; /** * Fires when the input is checked or unchecked. */ onChange?: React.ChangeEventHandler; checked?: never; }; export type CheckboxCardProps = BaseCheckboxCardProps & (ControlledProps | UncontrolledProps); export declare const CheckboxCard: React.ForwardRefExoticComponent>; export {};