/** * Checkable Input Component * * @description Base component for Checkbox and RadioButton components. * Do not add props that are specific to either Checkbox or RadioButton. * Do not add props to the common interface that are not intended to be in the public interface of both components. * Styles of any children should be handled in their respective component files. */ import React from "react"; import { CommonHiddenCheckableInputProps } from "../hidden-checkable-input.component"; export interface CommonCheckableInputProps extends Omit { /** Unique identifier for the input. Will use a randomly generated GUID if none is provided. */ id?: string; /** Content of the label. */ label?: React.ReactNode; /** Additional hint text rendered below the label. */ inputHint?: React.ReactNode; /** If true, the component will be disabled. */ disabled?: boolean; /** Content to be rendered below the input when checked, is not supported when inputs are inline. */ progressiveDisclosure?: React.ReactNode; } export interface CheckableInputProps extends CommonCheckableInputProps { /** Element to be rendered as the visible input. */ children?: React.ReactNode; /** HTML type attribute of the input. */ type: string; /** Value passed to the input. */ value?: string; /** Size of the component. */ size?: "small" | "medium" | "large"; /** Set error state - passed to Tabs context */ error?: boolean; /** Set warning state - passed to Tabs context */ warning?: boolean; } declare const CheckableInput: React.ForwardRefExoticComponent>; export default CheckableInput;