import { SwitchProps as MuiSwitchProps, TypographyProps, Theme, SwitchPropsColorOverrides } from '@mui/material';
import { OverridableStringUnion } from '@mui/types';
import { SystemProps } from '@mui/system';
export type BaseSwitchProps<T = boolean> = {
    /**
     * Name and ID of the component. Must match a key from defaultValues in React Hook Form.
     * @required
     */
    name: string;
    /**
     * Label that goes next to the switch.
     * @recommended
     */
    label?: string;
    /**
     * Disabled
     */
    disabled?: boolean;
    /**
     * The position of the label.
     * @default 'end'
     */
    labelPlacement?: 'start' | 'end' | 'top' | 'bottom';
    /**
     * If set, the component becomes readonly.
     * By default, displays as "True" or "False". To use "On" or "Off", set to 'ON_OFF. To use "Yes" or "No", use 'YES_NO'
     */
    readOnly?: true | 'ON_OFF' | 'YES_NO';
    /**
     * Props from MUI-Bueno's Typography component.
     * Used to customize the label when the static label option is selected or the field is readOnly.
     */
    staticLabelProps?: TypographyProps;
    /**
     * Override the value used in React Hook Form when the switch is ON
     * @default True
     */
    activeValue?: T extends boolean ? true : string;
    /**
     * Override the value used in React Hook Form when the switch is OFF
     * @default False
     */
    inactiveValue?: T extends boolean ? false : string;
    /**
     * Handle changes to the React Hook Form value when interacted with by the user
     */
    onChange?: (checked: T) => void;
    /**
     * If defined, shows the switch on top of a chip of the provided color
     */
    chipColor?: SystemProps<Theme>['color'];
    /**
     * Color of the switch & text
     */
    color?: OverridableStringUnion<'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning' | 'default', SwitchPropsColorOverrides>;
};
export type SwitchProps<T> = BaseSwitchProps<T> & Omit<MuiSwitchProps, 'checked' | 'onChange' | 'name' | 'value' | 'readOnly'>;
/**
 * `Switch` provides a Material-UI Switch.
 */
export declare const Switch: <T = boolean>(props: SwitchProps<T>) => import("react/jsx-runtime").JSX.Element;
