import * as i0 from '@angular/core'; import { EventEmitter } from '@angular/core'; import { ControlValueAccessor, FormControl } from '@angular/forms'; import * as i1 from '@eui/components/shared'; import { BaseStatesDirective } from '@eui/components/shared'; /** * @description * Slide toggle component used to represent a boolean state. * It can be used as a standalone toggle or integrated with Angular Reactive Forms. * Supports icons for ON/OFF states and visual variants via EUI base state directives. * * @usageNotes * ### Basic Usage * ```html * * * * * * * *
* * * ``` * * ### Accessibility * - Provide meaningful aria-label describing the toggle's purpose * - Toggle is keyboard accessible (Space/Enter to toggle) * - Disabled state is properly communicated to screen readers * * ### Notes * - Supports semantic color variants (euiPrimary, euiSuccess, euiDanger, etc.) * - Size variants (euiSizeS, euiSizeM, euiSizeL, euiSizeXL) control toggle dimensions * - Icons are optional and can be customized for ON/OFF states */ declare class EuiSlideToggleComponent implements ControlValueAccessor { /** CSS classes applied to the host element */ get cssClasses(): string; /** * Unique identifier for the toggle * @default Generated unique ID with 'eui-slide-toggle-' prefix */ id: string; /** * attribute attached to the aria-label of the input field * @default 'eUI slide toggle' */ ariaLabel: string; /** * Name of the icon to display when toggle is ON * @default undefined */ iconSvgNameOn: string; /** * Name of the icon to display when toggle is OFF * @default undefined */ iconSvgNameOff: string; /** * Fill color for the ON state icon * @default 'secondary' */ iconSvgFillColorOn: string; /** * Fill color for the OFF state icon * @default 'secondary' */ iconSvgFillColorOff: string; /** * Current checked state of the toggle * @default false */ isChecked: boolean; /** * Whether the toggle is disabled * @default false */ set disabled(value: boolean); get disabled(): boolean; /** * Event emitted when toggle state changes * @emits boolean - The new toggle state */ slideToggleChange: EventEmitter; /** Form control for the toggle when used in reactive forms */ checkboxControl: FormControl; private _disabled; private cd; private control; protected baseStatesDirective: BaseStatesDirective; constructor(); /** * Toggles the current state if not disabled * Emits the new state and notifies form control */ toggle(): void; /** * Implements ControlValueAccessor * Updates the toggle's checked state */ writeValue(value: boolean): void; /** * Implements ControlValueAccessor * Updates the toggle's disabled state */ setDisabledState(isDisabled: boolean): void; /** * Handles focus out event * Notifies form control of touch event */ onFocusOut(): void; /** * Implements ControlValueAccessor * Registers change handler * @todo Improve type definition or make generic */ registerOnChange(fn: any): void; /** * Implements ControlValueAccessor * Registers touch handler * @todo Improve type definition or make generic */ registerOnTouched(fn: any): void; private onChange; private onTouch; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_isChecked: unknown; static ngAcceptInputType_disabled: unknown; } declare const EUI_SLIDE_TOGGLE: readonly [typeof EuiSlideToggleComponent]; export { EUI_SLIDE_TOGGLE, EuiSlideToggleComponent }; //# sourceMappingURL=eui-components-eui-slide-toggle.d.ts.map