import { AnimationEvent } from '@angular/animations';
import { AfterViewInit, ChangeDetectorRef, DestroyRef, ElementRef, Injector } from '@angular/core';
import { CssClassBuilder, DynamicComponentContainer } from '@fundamental-ngx/cdk/utils';
import { CdkPortalOutlet, CdkPortalOutletAttachedRef } from '@angular/cdk/portal';
import { DialogContentType } from '../dialog.types';
import { DialogConfig } from '../utils/dialog-config.class';
import { DialogContainer } from '../utils/dialog-container.model';
import { DialogRef } from '../utils/dialog-ref.class';
import * as i0 from "@angular/core";
/** Dialog container where the dialog content is embedded. */
export declare class DialogContainerComponent extends DynamicComponentContainer<DialogContentType> implements DialogContainer<any>, AfterViewInit, CssClassBuilder {
    dialogConfig: DialogConfig;
    ref: DialogRef;
    private _destroyRef;
    protected readonly _cdr: ChangeDetectorRef;
    /** Custom classes */
    set class(userClass: string);
    /** @hidden */
    portalOutlet: CdkPortalOutlet;
    /** The state of the Dialog animations. */
    private get _animationState();
    /** @hidden */
    private _class;
    /** @hidden */
    private _animationStateSignal;
    /** @hidden */
    constructor(dialogConfig: DialogConfig, ref: DialogRef, _destroyRef: DestroyRef, elementRef: ElementRef, _cdr: ChangeDetectorRef, injector: Injector);
    /** @hidden */
    buildComponentCssClass(): string[];
    /** Handle end of animations, updating the state of the Message Toast. */
    onAnimationEnd(event: AnimationEvent): void;
    /** @hidden */
    ngAfterViewInit(): void;
    /** @hidden */
    protected _attached(event: CdkPortalOutletAttachedRef): void;
    /** @hidden Load received content */
    protected _loadContent(): void;
    /** @hidden Returns context for embedded template */
    private _templateContext;
    /** @hidden Load Dialog component from passed object */
    private _createFromDefaultDialog;
    /**
     * @hidden
     * We need to wait until animation plays, and then send signal to the service to destroy the component.
     */
    private _listenOnClose;
    static ɵfac: i0.ɵɵFactoryDeclaration<DialogContainerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DialogContainerComponent, "fd-dialog-container", never, { "class": { "alias": "class"; "required": false; }; }, {}, never, never, true, never>;
}
