import { default as React, PropsWithChildren } from 'react';
import { CurrentColor } from '../../utils/currentColors';
export type SwitchProps = {
    /**
     * Optional key that is used as key and as the id on the internal input.
     */
    keyName?: string;
    /**
     * Callback function triggered when clicking the button.
     */
    onChange?: (toggleState: boolean) => void;
    /**
     * Set active / inactive state.
     *
     * @default false
     */
    checked?: boolean;
    /**
     * Defines the color of the switch.
     *
     * Possible values are:
     *
     * - `'primary'`
     * - `'secondary'`
     * - `'info'`
     * - `'success'`
     * - `'warning'`
     * - `'danger'`
     *
     * @default 'primary'
     */
    color?: CurrentColor;
    /**
     * The min-width of the switch.
     *
     * If not set, the default min-width is `40`.
     */
    minWidth?: number;
    /**
     * Controls automatic text-based min-width behavior when `minWidth` is not set.
     * Set to `true` to keep the width at the longer one of `enabledText` and `disabledText`.
     *
     * @default false
     */
    autoMinWidth?: boolean;
    /**
     * Disables the component.
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * The text used for the ON state.
     */
    enabledText?: string;
    /**
     * The text used for the OFF state.
     */
    disabledText?: string;
    /**
     * Defines the position of the switch label.
     * Defaults to `'right'` when children are present.
     *
     * Possible values are `'left'` and `'right'`.
     *
     * @default 'right'
     */
    labelPosition?: 'left' | 'right';
    /**
     * Use this flag if you want to have custom text styles.
     *
     * @default false
     */
    customTextStyle?: boolean;
    /**
     * Additional class names added to the SVG element.
     */
    className?: string;
};
declare const Switch: React.ForwardRefExoticComponent<PropsWithChildren<SwitchProps> & React.RefAttributes<HTMLDivElement>> & {
    LABEL_POSITION_LEFT: "left";
    LABEL_POSITION_RIGHT: "right";
};
export default Switch;
