import { Accessibility, CheckboxBehaviorProps } from '@fluentui/accessibility'; import { ComponentWithAs } from '@fluentui/react-bindings'; import { ChildrenComponentProps, UIComponentProps } from '../../utils'; import { ComponentEventHandler, ShorthandValue, FluentComponentStaticProps } from '../../types'; import { BoxProps } from '../Box/Box'; import { TextProps } from '../Text/Text'; import { SupportedIntrinsicInputProps } from '../../utils/htmlPropsUtils'; export interface CheckboxSlotClassNames { label: string; indicator: string; } export interface CheckboxProps extends UIComponentProps, ChildrenComponentProps { /** Accessibility behavior if overridden by the user. */ accessibility?: Accessibility; /** A checkbox can be checked by default. */ defaultChecked?: SupportedIntrinsicInputProps['defaultChecked']; /** A checkbox's checked state can be controlled. */ checked?: SupportedIntrinsicInputProps['checked']; /** A checkbox can appear disabled and be unable to change states. */ disabled?: SupportedIntrinsicInputProps['disabled']; /** A checkbox's indicator icon can be customized. */ indicator?: ShorthandValue; /** A checkbox can render a label next to its indicator. */ label?: ShorthandValue; /** A checkbox's label can be rendered in different positions. */ labelPosition?: 'start' | 'end'; /** * Called after a checkbox's checked state is changed. * @param event - React's original SyntheticEvent. * @param data - All props. */ onChange?: ComponentEventHandler; /** * Called after a checkbox is clicked. * @param event - React's original SyntheticEvent. * @param data - All props. */ onClick?: ComponentEventHandler; /** A checkbox can be formatted to show an "on or off" choice. */ toggle?: boolean; } export declare type CheckboxStylesProps = Pick; export declare const checkboxClassName = "ui-checkbox"; export declare const checkboxSlotClassNames: CheckboxSlotClassNames; /** * A Checkbox allows a user to make a choice between two mutually exclusive options. * * @accessibility * Implements [ARIA Checkbox](https://www.w3.org/TR/wai-aria-practices-1.1/#checkbox) design pattern. */ export declare const Checkbox: ComponentWithAs<'div', CheckboxProps> & FluentComponentStaticProps;