import * as i0 from '@angular/core'; import { OnInit, AfterViewInit, ChangeDetectorRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { OnOffControlBaseComponent } from '@talenra/ngx-base/shared'; /** * Event emitted when the toggle's `checked` value changes. */ interface ToggleChange { /** Reference to the emitting toggle component */ source: ToggleComponent; /** Current value of the checked property */ checked: boolean; } /** * `` is an on/off control. Think of a checkbox (which the control * technically is), displayed as a toggle switch. * * #### Reactive form * * ```typescript * // Component class * sampleForm: FormGroup = new FormGroup({ * rememberMe: new FormControl(true), * disabledToggle: new FormControl({ value: false, disabled: true }), * }); * ``` * * ```html * *
* * *
* ``` * * #### Template driven form * * ```typescript * // Import `FormsModule` in the declaring module * import { FormsModule } from '@angular/forms'; * @NgModule({ * // ... * imports: [FormsModule], *}) * ``` * * ```typescript * // Component class * sampleValue = true; * ``` * * ```html * *
* *
* ``` * * #### Formless * * ```typescript * // Component class * sampleValue = true; * ``` * * ```html * * * ``` * * ### Import * * ```typescript * import { ToggleModule } from '@talenra/ngx-base/toggle'; * ``` * * ../../#/on-off-controls */ declare class ToggleComponent extends OnOffControlBaseComponent implements ControlValueAccessor, OnInit, AfterViewInit { private useTransition; private hostClass; protected changeDetector: ChangeDetectorRef; /** @internal */ ngOnInit(): void; /** @internal */ ngAfterViewInit(): void; /** * Event emitted when the toggle's `checked` value changes. * * ```typescript * // Component class * import { ToggleChange } from '@talenra/ngx-base/toggle'; * public checkedChange(change: ToggleChange): void { * console.log(`Toggle (id: ${change.source.id}) is ${change.checked ? '' : 'not '}checked`); * } * ``` * * ```html * * ; } export { ToggleComponent }; export type { ToggleChange };