/// <reference types="jquery" />
import { EnumObject, InitModelOf, KeyStrokeContext, SwitchEventMap, SwitchModel, Widget } from '../index';
export declare class Switch extends Widget implements SwitchModel {
    model: SwitchModel;
    eventMap: SwitchEventMap;
    self: Switch;
    static DisplayStyle: {
        readonly DEFAULT: "default";
        readonly SLIDER: "slider";
    };
    activated: boolean;
    label: string;
    labelHtmlEnabled: boolean;
    labelVisible: boolean;
    tooltipText: string;
    iconVisible: boolean;
    displayStyle: SwitchDisplayStyle;
    tabbable: boolean;
    $label: JQuery;
    $button: JQuery;
    constructor();
    protected _init(model: InitModelOf<this>): void;
    protected _render(): void;
    protected _renderProperties(): void;
    protected _remove(): void;
    protected _renderEnabled(): void;
    protected _createKeyStrokeContext(): KeyStrokeContext;
    protected _initKeyStrokeContext(): void;
    setActivated(activated: boolean): void;
    protected _renderActivated(): void;
    setLabel(label: string): void;
    protected _renderLabel(): void;
    setLabelHtmlEnabled(labelHtmlEnabled: boolean): void;
    protected _renderLabelHtmlEnabled(): void;
    setLabelVisible(labelVisible: boolean): void;
    protected _renderLabelVisible(): void;
    setTooltipText(tooltipText: string): void;
    protected _renderTooltipText(): void;
    setIconVisible(iconVisible: boolean): void;
    protected _renderIconVisible(): void;
    setDisplayStyle(displayStyle: SwitchDisplayStyle): void;
    protected _renderDisplayStyle(): void;
    setTabbable(tabbable: boolean): void;
    protected _renderTabbable(): void;
    protected _onSwitchMouseDown(event: JQuery.MouseDownEvent): void;
    /**
     * @param originalEvent original event that caused the toggle
     * @param newValue if set, the `activated` property is set to this value.
     *           Otherwise, it is set to opposite of the current value.
     */
    toggleSwitch(originalEvent?: JQuery.Event, activated?: boolean): void;
}
export type SwitchDisplayStyle = EnumObject<typeof Switch.DisplayStyle>;
//# sourceMappingURL=Switch.d.ts.map