import { AfterContentInit, Injector, OnInit, QueryList } from '@angular/core'; import { Strings } from '../../../../generated/strings'; import { FormFieldComponent } from '../form-field.component'; import { FormFieldOptionComponent } from './form-field-option.component'; import * as i0 from "@angular/core"; declare type OptionsFormFieldTrackBy = 'index' | 'value' | 'label' | 'default'; /** * Defines a base class form form field components with options */ export declare abstract class OptionsFormFieldComponent extends FormFieldComponent implements OnInit, AfterContentInit { /** * Indicates if multiple option selection is supported */ abstract multiple: boolean; /** * Sets the comparator function to determined complex object equality of option.value and values * Defaults to '===' object equality. Meaning that value is always a literal subset of all the option.value's. */ valueComparator: MsftSme.Func2; /** * Indicates if the select all option should be shown in multi-select mode */ showSelectAll: boolean; /** * Indicates the mode to track options by */ trackBy: OptionsFormFieldTrackBy; /** * The options for this control. */ options: QueryList; /** * The options for this control. */ selectedOptions: FormFieldOptionComponent[]; /** * The options for this control. */ selectedOptionsDisplayValue: string; /** * indicates if all options are selected */ get isAllOptionsSelected(): boolean; /** * indicates if some options are selected */ get isSomeOptionsSelected(): boolean; /** * The current keyCodes for autocompletion */ private autoCompleteKeyCodes; /** * the Filtered options specifically using for combobox with option filters */ optionsFiltered: QueryList; /** * indicates whether the combobox has option filters */ searchable: boolean; /** * indicates the search string for filtering options */ get searchString(): string; set searchString(value: string); /** * indicates the internal search string */ private searchStringInternal; /** * Initializes a new instance of the OptionsFormFieldComponent */ constructor(injector: Injector); /** * Implementation of Angular OnInit interface */ ngOnInit(): void; /** * Implementation of Angular AfterContentInit interface */ ngAfterContentInit(): void; /** * Gets the option display string for a given value * @param value The value to get a display string for */ getValueDisplayString(value: TModel): string; /** * Selects an option. */ toggleOption(option: FormFieldOptionComponent, select: boolean): boolean; /** * Gets the selected option index (always -1 in multiple selection mode) */ getSelectedIndex(): number; /** * Selects/Deselects an option by its index */ toggleOptionByIndex(index: number, select?: boolean): boolean; /** * Selects the next option. * @returns a boolean indicating if the select was successful */ selectNextOption(): boolean; /** * Selects the previous option. * @returns a boolean indicating if the select was successful */ selectPreviousOption(): boolean; /** * Selects or deselects all options * @returns a boolean indicating if the select was successful */ toggleAllOptions(select?: boolean): boolean; /** * Selects all options. Only allowed in multiple select mode * @returns a boolean indicating if the select was successful */ selectAllOptions(): boolean; /** * Clears all options. Only allowed in multiple select mode * @returns a boolean indicating if the unselect was successful */ clearAllOptions(): boolean; /** * */ trackOption(index: number, option: FormFieldOptionComponent): any; /** * Adds a keycode from KeyPress event to the autocomplete processor */ protected progressiveAutoComplete(keyCode: number): void; /** * Selects an option by the keys entered. Only allowed in single select mode */ private processAutoComplete; /** * Occurs whenever the internal value of this form control changes */ protected onValueChanged(value: TModel): void; /** * Synchronizes the displayed and selected options with the actual form control value */ protected syncSelectionChanged(value: TModel): void; /** * Base function for filter options by search string, will be called only if searchable to true */ protected filterOptionBySearchString(): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, never, never, { "valueComparator": "valueComparator"; "showSelectAll": "showSelectAll"; "trackBy": "trackBy"; "searchable": "searchable"; }, {}, ["options"], never, false, never>; } /** * Internal base component for SME form fields with options. * It simply removes the need to supply the string type parameter to FormFieldComponent * This class is exported from this file, but not meant to be exported from index.ts bundles. */ export declare abstract class SmeInternalOptionsFormFieldComponent extends OptionsFormFieldComponent { /** * Indicates if the select all option should be shown in multi-select mode */ selectAllLabel: string; /** * assigns an Id to select all option for dropdowns */ selectAllUtaId: string; /** * Internal class for sme options controls */ constructor(injector: Injector); static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, never, never, { "selectAllLabel": "selectAllLabel"; "selectAllUtaId": "selectAllUtaId"; }, {}, never, never, false, never>; } export {};