import { AutoCompleteComponent } from '../auto-complete/auto-complete.component'; import * as Models from '../models'; import { AbstractControl } from '@angular/forms'; import { FormGroup } from '@angular/forms'; import { ElementRef, QueryList, Renderer2, OnDestroy } from '@angular/core'; import { ContextService } from '../context.service'; import { ChoiceViewModel } from '../view-models/choice-view-model'; import { IDraggableViewModel } from '../view-models/idraggable-view-model'; import { FieldViewModel } from '../view-models/field-view-model'; import { ParameterViewModel } from '../view-models/parameter-view-model'; import { DialogViewModel } from '../view-models/dialog-view-model'; import { PropertyViewModel } from '../view-models/property-view-model'; import { DomainObjectViewModel } from '../view-models/domain-object-view-model'; import { ConfigService } from '../config.service'; import { LoggerService } from '../logger.service'; import { Pane } from '../route-data'; import { Dictionary } from 'lodash'; import { BehaviorSubject } from 'rxjs'; import { DatePickerFacadeComponent } from '../date-picker-facade/date-picker-facade.component'; import { TimePickerFacadeComponent } from '../time-picker-facade/time-picker-facade.component'; export declare abstract class FieldComponent implements OnDestroy { private readonly context; private readonly configService; private readonly loggerService; private readonly renderer; protected constructor(context: ContextService, configService: ConfigService, loggerService: LoggerService, renderer: Renderer2); formGroup: FormGroup; readonly message: string; readonly isBoolean: boolean; readonly subject: BehaviorSubject; private formGrp; private vmParent; private model; private isConditionalChoices; private isAutoComplete; private bSubject; private sub; private lastArgs; control: AbstractControl; currentOptions: ChoiceViewModel[]; pArgs: Dictionary; paneId: Pane; canDrop: boolean; abstract checkboxList: QueryList; abstract focusList: QueryList; protected init(vmParent: DialogViewModel | DomainObjectViewModel, vm: ParameterViewModel | PropertyViewModel, control: AbstractControl): void; accept(droppableVm: FieldViewModel): (draggableVm: IDraggableViewModel) => boolean; drop(draggableVm: IDraggableViewModel): void; private isDomainObjectViewModel(object); private mapValues(args, parmsOrProps); private populateArguments(); private argsChanged(newArgs); private populateDropdown(); private onChange(); private onValueChanged(); private populateAutoComplete(); protected populateBoolean(): void; private select(item); fileUpload(evt: Event): void; paste(event: KeyboardEvent): void; clear(): void; private filterEnter(event); protected handleKeyEvents(event: KeyboardEvent, isMultiline: boolean): void; private triStateClick; protected handleClick(event: Event): void; focus(): boolean; ngOnDestroy(): void; }