import { default as React } from 'react';
import { BaseProps } from '../../../libraries/common-types/src/common-types';
export type ToggleProps = Omit<BaseProps<"button">, "onChange" | "children" | "id"> & {
    /**
     * To use when no label is given.
     * */
    ["aria-label"]?: string;
    /**
     * To use with custom label (not recommended).
     * */
    ["aria-labelledby"]?: string;
    /**
     * The controlled state of the toggle. Must be used in conjunction with `onChange`.
     * */
    checked?: boolean;
    /**
     * The state of the toggle when it is initially rendered. Use when you do not need to control its state.
     * */
    defaultChecked?: boolean;
    /**
     * When `true`, prevents the user from interacting with the toggle.
     * */
    disabled?: boolean;
    /**
     * When `true`, the toggle isn't draggable.
     * */
    disableDrag?: boolean;
    /**
     * ID of the toggle.
     * */
    id: string;
    /**
     * The label of the toggle.
     * */
    label?: string;
    /**
     * Set to decide which side of the toggle the label should be rendered.
     * */
    labelPosition?: "left" | "right";
    /**
     * The name of the toggle. Submitted with its owning form as part of a name/value pair, when wrapped in a form.
     * */
    name?: string;
    /**
     * Event handler called when the toggle is toggled.
     * */
    onChange?: (checked: boolean) => void;
    /**
     * When `true`, indicates that the user must check the toggle before the owning form can be submitted..
     * */
    required?: boolean;
    /**
     * The value given as data when wrapped with a form and submitted with a name.
     * */
    value?: string;
};
export declare const Toggle: React.ForwardRefExoticComponent<Omit<ToggleProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
//# sourceMappingURL=toggle.d.ts.map