import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; export declare enum ToggleState { Init = 0, Checked = 1, Unchecked = 2 } export declare class ToggleChange { source: Toggle; checked: boolean; } export declare class Toggle implements ControlValueAccessor { protected changeDetectorRef: ChangeDetectorRef; /** * Variable used for creating unique ids for toggle components. */ static toggleCount: number; /** * Set to `true` for toggle to be rendered with nested styles. */ nested: boolean; /** * Set to `true` for toggle to be rendered without any classes on the host element. */ inline: boolean; /** * Set to `true` for a disabled toggle. */ disabled: boolean; /** * Set to `true` for a loading toggle. */ skeleton: boolean; /** * Set to `true` to hide the toggle labels. */ hideLabel: boolean; /** * Sets the name attribute on the `input` element. */ name: string; /** * The unique id for the toggle component. */ id: string; /** * Reflects the required attribute of the `input` element. */ required: boolean; /** * Sets the value attribute on the `input` element. */ value: string; /** * Used to set the `aria-label` attribute on the input element. */ ariaLabel: string; /** * Used to set the `aria-labelledby` attribute on the input element. */ ariaLabelledby: string; /** * Horizontal distribution of elements */ distribution: 'leading' | 'trailing' | 'equalSpacing' | 'center'; /** * Returns value `true` if state is selected for the toggle. */ /** * Updating the state of a toggle to match the state of the parameter passed in. */ checked: boolean; readonly toggleWrapperClass: boolean; readonly formItemClass: boolean; /** * Emits event notifying other classes when a change in state occurs on a toggle after a * click. */ change: EventEmitter; /** * Set to `true` if the input toggle is selected (or checked). */ _checked: boolean; currentToggleState: ToggleState; /** * Maintains a reference to the view DOM element of the `Toggle`. */ inputToggle: ElementRef; /** * Creates an instance of `Toggle`. */ constructor(changeDetectorRef: ChangeDetectorRef); /** * Toggle the selected state of the toggle. */ toggle(): void; writeValue(value: any): void; /** * Sets a method in order to propagate changes back to the form. */ registerOnChange(fn: any): void; /** * Registers a callback to be triggered when the control has been touched. * @param fn Callback to be triggered when the toggle is touched. */ registerOnTouched(fn: any): void; /** * Executes on the event of a change within `Toggle` to block propagation. */ onChange(event: any): void; /** * Handles click events on the `Toggle` and emits changes to other classes. */ onClick(event: any): void; /** * Called when toggle is blurred. Needed to properly implement `ControlValueAccessor`. */ onTouched: () => any; /** * Handles changes between toggle states. */ transitionToggleState(newState: ToggleState): void; /** * Creates instance of `ToggleChange` used to propagate the change event. */ emitChangeEvent(): void; /** * Method set in `registerOnChange` to propagate changes back to the form. */ propagateChange: (_: any) => void; }