/// <reference types="lodash" />
import { AutoCompleteComponent } from '../auto-complete/auto-complete.component';
import { TimePickerFacadeComponent } from '../time-picker-facade/time-picker-facade.component';
import { DatePickerFacadeComponent } from '../date-picker-facade/date-picker-facade.component';
import { ElementRef, OnInit, QueryList, Renderer, AfterViewInit } from '@angular/core';
import { FieldComponent } from '../field/field.component';
import { FormGroup } from '@angular/forms';
import { Router } from '@angular/router';
import { ErrorService } from '../error.service';
import { ContextService } from '../context.service';
import { PropertyViewModel } from '../view-models/property-view-model';
import { DomainObjectViewModel } from '../view-models/domain-object-view-model';
import { ChoiceViewModel } from '../view-models/choice-view-model';
import { ConfigService } from '../config.service';
import { LoggerService } from '../logger.service';
import * as Models from '../models';
import { AttachmentViewModel } from '../view-models/attachment-view-model';
import { Dictionary } from 'lodash';
export declare class EditPropertyComponent extends FieldComponent implements OnInit, AfterViewInit {
    private readonly router;
    private readonly error;
    constructor(router: Router, error: ErrorService, context: ContextService, configService: ConfigService, loggerService: LoggerService, renderer: Renderer);
    private prop;
    parent: DomainObjectViewModel;
    property: PropertyViewModel;
    readonly propertyPaneId: string;
    readonly propertyId: string;
    readonly propertyChoices: ChoiceViewModel[];
    readonly title: string;
    readonly propertyType: "scalar" | "ref";
    readonly propertyReturnType: string;
    readonly propertyEntryType: Models.EntryType;
    readonly isEditable: boolean;
    readonly formattedValue: string;
    readonly value: string;
    readonly format: "string" | "time" | "blob" | "date-time" | "date" | "utc-millisec" | "big-integer" | "big-decimal" | "clob" | "decimal" | "int" | null;
    readonly isBlob: boolean;
    readonly isMultiline: boolean;
    readonly isPassword: boolean;
    readonly multilineHeight: string;
    readonly rows: number;
    readonly propertyDescription: string;
    readonly message: string;
    readonly attachment: AttachmentViewModel | null;
    choiceName(choice: ChoiceViewModel): string;
    classes(): Dictionary<boolean | null>;
    form: FormGroup;
    ngOnInit(): void;
    onKeydown(event: KeyboardEvent): void;
    onKeypress(event: KeyboardEvent): void;
    focusList: QueryList<ElementRef | DatePickerFacadeComponent | TimePickerFacadeComponent | AutoCompleteComponent>;
    checkboxList: QueryList<ElementRef>;
    ngAfterViewInit(): void;
}
