import { ReactNode } from 'react';
import './Switch.less';
export interface SwitchProps {
    /**
     * Determine whether the `Switch` is checked.
     * @since 0.0.42
     */
    checked?: boolean;
    /**
     * A callback function, can be executed when the checked state is changing.
     * @since 0.0.42
     */
    onChange?: (checked: boolean) => void;
    /**
     * Tooltip for component
     * @since 0.0.42
     */
    tooltip?: ReactNode;
    /**
     * Visual intent color to apply to component.
     * @since 0.3.0
     */
    intent?: 'warning' | 'danger';
    /**
     * Is `Switch` disabled?
     * @since 0.0.42
     */
    disabled?: boolean;
    /**
     * Loading indication
     * @since 0.3.0
     */
    loading?: boolean;
    /**
     * Label of the `Switch`
     * @since 0.0.42
     */
    children?: ReactNode;
    /**
     * @ignore
     */
    defaultChecked?: boolean;
    /**
     * @ignore
     */
    className?: string;
    /**
     * @ignore
     */
    baseClassName?: string;
}
/**
 * `Switch` component is used for changing the state of an object or system preferences.
 * It provides immediate results that is why it should not be used in Form.
 * @since 0.0.42
 */
declare const Switch: ({ className, children, onChange, tooltip, intent, checked, defaultChecked, baseClassName, disabled, loading, ...props }: SwitchProps) => JSX.Element;
export default Switch;
