import { EventEmitter, OnInit } from '@angular/core';
import { Logger } from 'ngx-base';
import { IMyDateModel, IMyOptions } from 'mydatepicker';
import { WorkItemService } from './../../services/work-item.service';
export declare class DynamicUpdateEvent {
    key: string;
    newValue: any;
    oldValue: any;
    field: any;
}
export declare class DynamicFieldComponent implements OnInit {
    protected logger: Logger;
    protected workItemService: WorkItemService;
    private oldValue;
    private fieldValue;
    private dropdownMenuItems;
    private dropdownSelectedItems;
    private loadingField;
    private markupCallBack;
    private showField;
    fieldValueSetter: any;
    attributeDesc: any;
    private editAllow;
    editAllowSetter: boolean;
    readonly onUpdate: EventEmitter<{}>;
    attributeKey: string;
    selectedfield: string;
    dateValue: any;
    error: string;
    buttonsVisible: boolean;
    datePickerOptions: IMyOptions;
    constructor(logger: Logger, workItemService: WorkItemService);
    ngOnInit(): void;
    isValid(): boolean;
    isButtonsVisible(): boolean;
    focusIn(): void;
    extractEnumKeyValues(possibleOptions: string[]): any[];
    extractBooleanKeyValues(): any[];
    onChangeDropdown(newOptions: any[]): void;
    onChangeMarkup(newMarkupValue: string): void;
    onDateChanged(newDate: IMyDateModel): void;
    toDateModel(dateValue: string): any;
    saveInputField(event: any): void;
    toUpdateObject(key: string, value: any): any;
    markupUpdate(event: any): void;
    showPreview(event: any): void;
    cancel(): void;
}
