import { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';
export declare const switchPropSize: readonly ["m", "xs", "s", "l"];
export type SwitchPropSize = typeof switchPropSize[number];
export declare const switchPropSizeDefault: SwitchPropSize;
export declare const switchPropView: readonly ["primary", "ghost"];
export type SwitchPropView = typeof switchPropView[number];
export declare const switchPropViewDefault: SwitchPropView;
export declare const switchPropAlign: readonly ["center", "top"];
export type SwitchPropAlign = typeof switchPropAlign[number];
export declare const switchPropAlignDefault: SwitchPropAlign;
export declare const switchPropOnChangeDefault: () => void;
export type SwitchPropOnChange = (checked: boolean, params: {
    e: React.ChangeEvent<HTMLInputElement>;
}) => void;
export type SwitchProps = PropsWithHTMLAttributes<{
    checked: boolean | undefined;
    size?: SwitchPropSize;
    view?: SwitchPropView;
    align?: SwitchPropAlign;
    disabled?: boolean;
    className?: string;
    label?: string;
    onChange?: React.ChangeEventHandler<HTMLInputElement>;
    name?: string;
    onFocus?: React.FocusEventHandler<HTMLInputElement>;
    onBlur?: React.FocusEventHandler<HTMLInputElement>;
    autoFocus?: boolean;
    readOnly?: boolean;
    required?: boolean;
    step?: number | string;
    tabIndex?: number;
    inputRef?: React.Ref<HTMLInputElement>;
    children?: never;
}, HTMLLabelElement>;
