import { AfterViewInit, QueryList, OnDestroy } from '@angular/core';
import { ViewModelFactoryService } from '../view-model-factory.service';
import { UrlManagerService } from '../url-manager.service';
import { ActivatedRoute } from '@angular/router';
import { ContextService } from '../context.service';
import { ErrorService } from '../error.service';
import { FormBuilder, FormGroup } from '@angular/forms';
import { ParameterViewModel } from '../view-models/parameter-view-model';
import { DialogViewModel } from '../view-models/dialog-view-model';
import { ListViewModel } from '../view-models/list-view-model';
import { MenuViewModel } from '../view-models/menu-view-model';
import { DomainObjectViewModel } from '../view-models/domain-object-view-model';
import { CollectionViewModel } from '../view-models/collection-view-model';
import { ConfigService } from '../config.service';
import { ParametersComponent } from '../parameters/parameters.component';
export declare class DialogComponent implements AfterViewInit, OnDestroy {
    private readonly viewModelFactory;
    private readonly urlManager;
    private readonly activatedRoute;
    private readonly error;
    private readonly context;
    private readonly configService;
    private readonly formBuilder;
    constructor(viewModelFactory: ViewModelFactoryService, urlManager: UrlManagerService, activatedRoute: ActivatedRoute, error: ErrorService, context: ContextService, configService: ConfigService, formBuilder: FormBuilder);
    private parentViewModel;
    parent: MenuViewModel | DomainObjectViewModel | ListViewModel | CollectionViewModel;
    private currentDialogId;
    selectedDialogId: string;
    dialog: DialogViewModel | null;
    form: FormGroup;
    readonly title: string;
    readonly message: string;
    readonly parameters: string | ParameterViewModel[];
    readonly tooltip: string;
    onSubmit(right?: boolean): void;
    close: () => void;
    private parms;
    private formSub;
    private sub;
    private createFormSub;
    private createForm(dialog);
    onValueChanged(): void;
    closeExistingDialog(): void;
    getDialog(): void;
    parmComponents: QueryList<ParametersComponent>;
    focus(parms: QueryList<ParametersComponent>): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
}
