import { OnInit, OnDestroy } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { Observable } from 'rxjs'; /** * This components provides a radiogroup composed of radios based on the elements from an enum or the observable of an array. * //TODO : See with Thierry for precisions and/or rectifications where ***** Question ? ***** * * @example *
* * * *
*
* * * *
*/ export declare class RadioListComponent implements ControlValueAccessor, OnInit, OnDestroy { /** * Object listing choices */ enumOfChoices: { [k: string]: any; }; /** * Observable of an array listing choices provided to the component * ***** Can it be an enum ? ***** */ values?: Observable; /** * Name of the enumeration where the possible values are listed */ enumName?: string; /** * True if the values were provided as an enum */ enum: boolean; /** * Key Id of the element selected * ***** From enum ? What if the element is selected from an observable ? ***** */ private _selected; /** * Subscription to the observable provided */ private subscriber; /** * Array of possible values build from observable or enum provided */ private _currentValues; /** * Called when the directive is initialized. * Constructs the list of choices. */ ngOnInit(): void; /** * Called when the directive is destroyed. * Unsubscribes to the observable if it was provided */ ngOnDestroy(): void; /** * Gets the _selected value. */ /** * Sets the provided value and propagate it to the model/control */ selected: number; /** * This method is part of ControlValueAccessor interface. * Its role is to set value from the model to the DOM * * @param value Value given from the model */ writeValue(value: any): void; /** * This method is part of ControlValueAccessor interface. * Its role is to set the function that will propagate changes from the DOM to the model. * * @param fn {function} Angular internal function */ registerOnChange(fn: any): void; /** * This method is part of ControlValueAccessor interface. * Not used here */ registerOnTouched(): void; /** * Container for the propagation function. */ propagateChange: (_: any) => void; }