import type { ChangeEvent, Ref } from 'react';
import type { BaseProps, ForwardRefForwardPropsComponent, NoChildrenProp } from '../../types';
import type { FormControlProps } from '../FormControl';
export interface SwitchProps extends BaseProps, NoChildrenProp {
    /**
     * Sets DOM id for the control and associates label element via 'for' attribute.
     * If an id is not pass, a random id will be generated for any render.
     */
    id?: FormControlProps['id'];
    /** Pass a string or a fragment with an Icon and string. */
    label?: FormControlProps['label'];
    /**
     * Disables the control.
     * @default false
     */
    disabled?: FormControlProps['disabled'];
    /**
     * Sets checked prop via onChange.
     * @default false
     */
    on?: boolean;
    /** Callback that is triggered when the Switch is toggled. */
    onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
    /** Ref for the input element. */
    ref?: Ref<HTMLInputElement>;
}
export declare const SwitchLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, never>> & string;
export declare const SwitchInput: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>> & string;
export declare const StyledSwitch: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
declare const Switch: ForwardRefForwardPropsComponent<SwitchProps>;
export default Switch;
//# sourceMappingURL=Switch.d.ts.map