import { ElementRef, EventEmitter, OnInit } from '@angular/core'; import { ControlValueAccessor, FormControl } from '@angular/forms'; import { MatOptionSelectionChange } from '@angular/material/core'; import { MatSlideToggleChange } from '@angular/material/slide-toggle'; import * as i0 from "@angular/core"; export interface DmSelectOptionStyle { disabled?: boolean; icon?: string; icon_color?: string; color?: string; background_color?: string; bold?: boolean; italic?: boolean; underline?: boolean; font_size?: string; additional_text?: string; additional_text_color?: string; additional_text_bold?: boolean; additional_text_italic?: boolean; additional_text_underline?: boolean; additional_text_font_size?: string; } export type StyleByOption = Map; export type DmCmpsSelectOutput = string | string[] | number | number[] | any; export declare class DmSelectComponent implements OnInit, ControlValueAccessor { formFieldClass: string; wrapperClass: string; label: string; formControl: FormControl | undefined; error: string; set required(value: boolean); placeHolder: string; set multiple(value: boolean); set outline(value: boolean); set simpleArray(value: boolean); emptyOption: boolean; emptyOptionLabel: string; emptyOptionValue: any; set options(value: any[]); optionName: string; optionValue: string; set styleByOption(styleMap: StyleByOption); searchLabel: string; panelWidth: number | string | undefined; get _panelWidth(): string; panelClass: string; set disabled(value: boolean); optionNameFormat?: (option: any) => string; attrToSearchIn: string[]; icon: string; set sortBySelected(value: boolean); focusSearchInputOnApear: boolean; set searchable(value: boolean); set filterPredicate(predicate: (data: any, value: string) => boolean); alignOptionIconToEnd: boolean; set noDataMessage(text: string); set selected(value: DmCmpsSelectOutput); set ignoreSpecialChars(value: boolean); selectAllLabel: string; showSelectAll: boolean; clearSearchOnSelect: boolean; optionStyle: ((element: any) => DmSelectOptionStyle) | undefined; _selected: DmCmpsSelectOutput; optionsDirection: 'ltr' | 'rtl'; ngModel: any; ngModelChange: EventEmitter; value: any; valueChange: EventEmitter; set returnObject(value: boolean); selectTriggerDirection: 'ltr' | 'rtl'; colorizeNameBy: string; selectionChange: EventEmitter; searchInput: ElementRef | undefined; get _selectTriggerDirection(): "ltr" | "rtl"; onClick(target: HTMLElement): void; onEnterPress(event: KeyboardEvent): void; private focusSearchInput; _filterPredicate: ((data: any, value: string) => boolean) | undefined; _simpleArray: boolean; _disabled: boolean; _sortBySelected: boolean; _searchable: boolean; _multiple: boolean; _outline: boolean; _orginalOptions: any[]; _options: any[]; _optionsCopy: any[]; _styleByOption: StyleByOption; _noDataMessage: string; _ignoreSpecialChars: boolean; _returnObject: boolean; _ctrl: FormControl; _ctrlCopy: FormControl; _searchControl: FormControl; set searchCtrlValue(value: string); get ctrlCopyValue(): any; set ctrlCopyValue(value: any); get ctrlValue(): any; set ctrlValue(value: any); constructor(); initArrayOptions(): void; writeValue(value: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setCtrlAbility(): void; initSelectValue(): void; ngOnInit(): void; applyFilter(value: string): void; createOptionsArray(options: any[]): { [x: string]: any; }[]; get checkIfAllSelected(): boolean; getOptionStyle(option: any): any; isOptionDisabled(option: any): boolean; getStyle(option: any): DmSelectOptionStyle | null; getAdditionalTextStyle(option: any): DmSelectOptionStyle | null; getIconStyle(option: any): DmSelectOptionStyle | null; onSelectAll(event: MatSlideToggleChange): void; getEmptyOptionObject(): { [x: string]: any; }; onSelectionChanged(event: MatOptionSelectionChange, option: any): void; sortOptionsBySelected(): void; emitOutput(): void; private getSimpleString; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_required: unknown; static ngAcceptInputType_multiple: unknown; static ngAcceptInputType_outline: unknown; static ngAcceptInputType_simpleArray: unknown; static ngAcceptInputType_emptyOption: unknown; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_sortBySelected: unknown; static ngAcceptInputType_focusSearchInputOnApear: unknown; static ngAcceptInputType_searchable: unknown; static ngAcceptInputType_alignOptionIconToEnd: unknown; static ngAcceptInputType_ignoreSpecialChars: unknown; static ngAcceptInputType_showSelectAll: unknown; static ngAcceptInputType_clearSearchOnSelect: unknown; static ngAcceptInputType_returnObject: unknown; }