import { ChangeDetectorRef } from '@angular/core';
import { Map, Set } from 'immutable';
import { ReplaySubject } from 'rxjs/ReplaySubject';
import { AbstractFieldComponent } from '../abstract-field';
import { AppGlobalsService, JsonStoreService, PathUtilService, KeysStoreService, ProblemsService } from '../shared/services';
import { JSONSchema } from '../shared/interfaces';
export declare class ObjectFieldComponent extends AbstractFieldComponent {
    appGlobalsService: AppGlobalsService;
    problemsService: ProblemsService;
    jsonStoreService: JsonStoreService;
    pathUtilService: PathUtilService;
    changeDetectorRef: ChangeDetectorRef;
    keysStoreService: KeysStoreService;
    value: Map<string, any>;
    schema: JSONSchema;
    path: Array<any>;
    isComplexListFieldItem: boolean;
    constructor(appGlobalsService: AppGlobalsService, problemsService: ProblemsService, jsonStoreService: JsonStoreService, pathUtilService: PathUtilService, changeDetectorRef: ChangeDetectorRef, keysStoreService: KeysStoreService);
    readonly keys$: ReplaySubject<Set<string>>;
    deleteField(name: string): void;
    isPropertyDisabled(name: string): boolean;
    getTitleDropdownItemTemplateNamesForChild(key: string): Array<string>;
}
