import { ButtonBaseState } from '@fluentui/react-button'; import type { ButtonSlots as ButtonSlots_2 } from '@fluentui/react-button'; import type { ForwardRefComponent } from '@fluentui/react-utilities'; import { JSXElement } from '@fluentui/react-utilities'; import type * as React_2 from 'react'; import type { ToggleButtonBaseProps } from '@fluentui/react-button'; import type { ToggleButtonBaseState } from '@fluentui/react-button'; /** * Button component slots */ declare type ButtonSlots = ButtonSlots_2; /** * Renders the final JSX of the ToggleButton component, given the state. */ export declare const renderToggleButton: (state: ButtonBaseState) => JSXElement; /** * A button component that can be toggled between checked and unchecked states. */ export declare const ToggleButton: ForwardRefComponent; /** * ToggleButton component props */ export declare type ToggleButtonProps = ToggleButtonBaseProps; /** * ToggleButton component slots */ export declare type ToggleButtonSlots = ButtonSlots; /** * ToggleButton component state */ export declare type ToggleButtonState = ToggleButtonBaseState & { root: { /** * Data attribute set when the button is disabled. */ 'data-disabled'?: string; /** * Data attribute set when the button is disabled but still focusable. */ 'data-disabled-focusable'?: string; /** * Data attribute set when the button renders only an icon. */ 'data-icon-only'?: string; /** * Data attribute set when the button is in a checked (pressed) state. */ 'data-checked'?: string; /** * Data attribute reflecting the icon position when an icon slot is present. */ 'data-icon-position'?: ToggleButtonBaseState['iconPosition']; }; }; /** * Returns the state for a ToggleButton component, given its props and ref. * The returned state can be modified with hooks before being passed to `renderToggleButton`. */ export declare const useToggleButton: (props: ToggleButtonProps, ref: React_2.Ref) => ToggleButtonState; export { }