import { Subject } from 'rxjs'; import { ChangeDetectorRef, DoCheck, ElementRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm, UntypedFormControl } from '@angular/forms'; import { ErrorStateMatcher } from '@angular/material/core'; import { MatFormFieldControl } from '@angular/material/form-field'; import { ISuggestValue, SuggestDirection, SuggestDisplayPriority } from './models'; import * as i0 from "@angular/core"; export declare abstract class UiSuggestMatFormFieldDirective implements DoCheck, MatFormFieldControl, ControlValueAccessor { protected _elementRef: ElementRef; private _errorStateMatcher; private _parentForm; private _parentFormGroup; protected _cd: ChangeDetectorRef; ngControl: NgControl; abstract disabled: boolean; /** * Configure if the form control label should float. * */ get shouldLabelFloat(): boolean; /** * Configure if the input should be marked as `required` inside the form field. * */ get required(): boolean; /** * @ignore */ set required(required: boolean); /** * Determine if the component is rendered inside a form control * */ get isFormControl(): any; set isFormControl(value: any); /** * Configure the component placeholder. * */ get placeholder(): string; set placeholder(placeholder: string); /** * Hides the combo box title. * */ shouldHideTitle: boolean; /** * Sets aria-label on input or mat-chip-grid element. * */ ariaLabel: string | null; /** * Set a custom size for the list items. * */ customItemSize?: number; /** * Computes the component item height depending on the current render mode. * */ get itemSize(): number; get baseSize(): 32 | 40; /** * Returns `true` if there are no items available. * */ get empty(): boolean; /** * Determines if the render direction is `down`. * */ get isDown(): boolean; /** * Handles the dropdown value binding. * */ get value(): ISuggestValue[]; /** * @ignore */ set value(newValue: ISuggestValue[]); /** * @ignore */ inputControl: UntypedFormControl; /** * Configure the component display priority. * */ displayPriority: SuggestDisplayPriority; /** * @ignore */ id: string; /** * @ignore */ describedBy?: string; /** * Emits the selected item value an item is selected. * */ selected: EventEmitter; /** * Emits the deselected item value when an item is deselected. * */ deselected: EventEmitter; /** * @ignore */ errorState: boolean; /** * @ignore */ focused: boolean; /** * @ignore */ stateChanges: Subject; protected _direction: SuggestDirection; protected _items: ISuggestValue[]; protected _value: ISuggestValue[]; private _isFormControl; private _placeholder; private _required; /** * @ignore */ constructor(_elementRef: ElementRef, _errorStateMatcher: ErrorStateMatcher, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, _cd: ChangeDetectorRef, ngControl: NgControl); /** * @ignore */ ngDoCheck(): void; /** * @ignore */ abstract onContainerClick(event: MouseEvent): void; /** * Clears the search input value. */ clear(): void; /** * @ignore */ setDescribedByIds(ids: string[]): void; /** * @ignore */ writeValue(value: ISuggestValue[]): void; /** * @ignore */ registerChange: (_: ISuggestValue[]) => void; /** * @ignore */ registerTouch: (ev?: Event) => void; /** * @ignore */ registerOnChange(fn: (_: ISuggestValue[]) => any): void; /** * @ignore */ registerOnTouched(fn: (ev?: Event) => void): void; protected _sortItems: (items: ISuggestValue[]) => ISuggestValue[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }