import { IKeyboardEvent } from '../../keyboardEvent.js'; import { Widget } from '../widget.js'; import { ThemeIcon } from '../../../common/themables.js'; import { Event } from '../../../common/event.js'; import './toggle.css'; import { IHoverDelegate } from '../hover/hoverDelegate.js'; export interface IToggleOpts extends IToggleStyles { readonly actionClassName?: string; readonly icon?: ThemeIcon; readonly title: string; readonly isChecked: boolean; readonly notFocusable?: boolean; readonly hoverDelegate?: IHoverDelegate; } export interface IToggleStyles { readonly inputActiveOptionBorder: string | undefined; readonly inputActiveOptionForeground: string | undefined; readonly inputActiveOptionBackground: string | undefined; } export interface ICheckboxStyles { readonly checkboxBackground: string | undefined; readonly checkboxBorder: string | undefined; readonly checkboxForeground: string | undefined; } export declare const unthemedToggleStyles: { inputActiveOptionBorder: string; inputActiveOptionForeground: string; inputActiveOptionBackground: string; }; export declare class Toggle extends Widget { private readonly _onChange; readonly onChange: Event; private readonly _onKeyDown; readonly onKeyDown: Event; private readonly _opts; private _icon; readonly domNode: HTMLElement; private _checked; private _hover; constructor(opts: IToggleOpts); get enabled(): boolean; focus(): void; get checked(): boolean; set checked(newIsChecked: boolean); setIcon(icon: ThemeIcon | undefined): void; width(): number; protected applyStyles(): void; enable(): void; disable(): void; setTitle(newTitle: string): void; set visible(visible: boolean); get visible(): boolean; }