import { LangProps, RequiredProps, TPAComponentProps } from '../../types'; import { ErrorMessageWrapperProps } from '../internal/ErrorMessageWrapper'; interface OnChangeEvent extends React.ChangeEvent { checked: boolean; } export declare enum CheckboxTheme { Default = "default", Box = "box" } export declare enum CheckboxVerticalAlignment { Center = "center", Top = "top" } export declare enum CheckmarkStyle { Regular = "regular", Medium = "medium", Bold = "bold" } export interface CheckboxState { focused: boolean; isErrorTooltipShown: boolean; errorIconClicked: boolean; isWithinRoot: boolean; } export interface CheckboxProps extends TPAComponentProps, RequiredProps, LangProps { onChange(event: OnChangeEvent): void; label: React.ReactNode; checked?: boolean; disabled?: boolean; indeterminate?: boolean; error?: boolean; /** Appearance of error message. TextOnly | BackgroundAndBorder */ errorAppearance?: ErrorMessageWrapperProps['errorAppearance']; errorMessage?: string; newErrorMessage?: boolean; name?: string; theme?: CheckboxTheme; suffix?: React.ReactNode; 'aria-describedby'?: string; /** Optional and only needed when passing a custom component to label */ 'aria-label'?: string; verticalAlignment?: CheckboxVerticalAlignment; /** Defines how label is aligned in relation to checkbox box. By default aligned center. */ checkmarkStyle?: CheckmarkStyle; } export interface CheckboxDefaultProps { checked: boolean; disabled: boolean; label: string; error: false; errorMessage: string; indeterminate: boolean; theme: CheckboxTheme; 'data-hook': string; } export declare enum CheckboxDataHooks { CheckboxWrapper = "checkbox-wrapper", IconWrapper = "icon-wrapper", LabelWrapper = "label-wrapper", CheckboxCore = "checkbox-core", ErrorIcon = "error-icon" } export declare enum CheckboxDataKeys { Error = "data-error", Disabled = "data-disabled", Checked = "data-checked", Indeterminate = "data-indeterminate", Focused = "data-focused" } export {}; //# sourceMappingURL=types.d.ts.map