import React, { Dispatch, SetStateAction } from 'react';
import * as SwitchPrimitive from '@radix-ui/react-switch';
import type { VariantProps } from '@stitches/react';
import { PrefixedLabelProps } from 'types/propTypes';
export type SwitchProps = VariantProps<typeof SwitchRoot> & {
    setChecked: Dispatch<SetStateAction<boolean>>;
    checked: boolean;
    label?: string;
    labelFor?: string;
    labelBefore?: boolean;
} & Exclude<PrefixedLabelProps, 'labelChildren'>;
/**
 *
 * labelFor links the label to the switch, if you want to link a different element to htmlFor the switch, use labelHtmlFor which will give id to the switch
 *
 */
export declare const Switch: ({ ...props }: SwitchProps) => JSX.Element;
declare const SwitchRoot: import("@stitches/react/types/styled-component").StyledComponent<React.ForwardRefExoticComponent<SwitchPrimitive.SwitchProps & React.RefAttributes<HTMLButtonElement>>, {
    size?: "sm" | "md" | "lg" | undefined;
}, {}, import("@stitches/react/types/css-util").CSS<{}, {}, {}, {}>>;
export {};
