import * as i0 from '@angular/core'; import { ElementRef, OnInit, DoCheck, AfterContentInit, OnChanges, ChangeDetectorRef, EventEmitter, Renderer2, SimpleChanges } from '@angular/core'; import { NgControl, NgForm, FormGroupDirective } from '@angular/forms'; import * as i1 from '@usitsdasdesign/dds-ng/core/focus-handler'; import { DestroyCtor, I18nCtor, ResponsivenessCtor, FormAccessorCtor } from '@usitsdasdesign/dds-ng/core/common-behaviors'; import { ThemeClassesMap } from '@usitsdasdesign/dds-ng/core/theme'; import { Size } from '@usitsdasdesign/dds-ng/shared'; import { DdsConfigService } from '@usitsdasdesign/dds-ng/shared/dds-config'; import { I18nService, ITranslation } from '@usitsdasdesign/dds-ng/shared/i18n'; declare class SearchFieldDirective { ngControl: NgControl; parentForm: NgForm; parentFormGroup: FormGroupDirective; elementRef: ElementRef; searchField: boolean; constructor(ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, elementRef: ElementRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare const SearchBase: DestroyCtor & I18nCtor & ResponsivenessCtor & FormAccessorCtor; declare class SearchComponent extends SearchBase implements OnInit, DoCheck, AfterContentInit, OnChanges { ngControl: NgControl; parentForm: NgForm; parentFormGroup: FormGroupDirective; cdr: ChangeDetectorRef; private ddsConfig; i18n: I18nService; private renderer; disabled: boolean | undefined; isEmptyValue: boolean; searchField: ElementRef; clearBtn: ElementRef; searchFieldExternal: SearchFieldDirective; placeholder: string | undefined; debounceTime: number | undefined; isInverse: boolean | undefined; readonly: boolean | undefined; isTrimValue: boolean | undefined; size: Size | string | undefined; ariaLabel: string | undefined; customClass: string | undefined; icon: string | undefined; maxLength: number | undefined; set value(value: string | undefined); get value(): string | undefined; valueChanged: EventEmitter; fieldCleared: EventEmitter; protected SEARCH_FIELD_ROLE: string; themeConfig: ThemeClassesMap; clearBtnAriaLabel: string; private _value; private valueSubject; private emittedValue; constructor(ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, cdr: ChangeDetectorRef, ddsConfig: DdsConfigService, i18n: I18nService, renderer: Renderer2); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngDoCheck(): void; ngAfterContentInit(): void; changeHandle(e: Event): void; writeValue(text: string): void; setDisabledState(disabled: boolean): void; /** * Clears the search field and resets the component state. */ clearField(event: Event): void; /** * Resets the search field value and emits a change event. */ reset(isModelChange?: boolean): void; focus(): void; blur(): void; protected setI18nTexts(translation: ITranslation): void; /** * Emits a change event with the provided data. */ private changeEmit; private checkIsEmpty; private removeFocus; /** * Sets attributes and event listeners for the external search input element. */ private externalSearchSetAttr; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SearchModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } interface SearchOptions { placeholder?: string; disabled?: boolean; isInverse?: boolean; isTrimValue?: boolean; debounceTime?: number; size?: Size | string; maxLength?: number; customClass?: string; ariaLabel?: string; icon?: string; readonly?: boolean; } export { SearchComponent, SearchFieldDirective, SearchModule }; export type { SearchOptions };