import { OnInit, ViewContainerRef, ComponentFactoryResolver, Renderer2 } from '@angular/core';
import { MatDialogRef } from '@angular/material/dialog';
import { TabsData } from '../../@interfaces/eagna.interface';
import { ComponentHostDirective } from './component-host.directive';
import * as i0 from "@angular/core";
export interface TabbedModalData {
    ComponentType?: any;
    tabs?: TabsData[];
    /** Tab Definition. 'OnClick()' will be overrwriten (appended internally)
     */
    componentsData?: any[];
    /** This should list the actual data object passed on to each component.
     */
    components?: any[];
    /** Component classes to be rendered
     * All components must have an @Input 'data' where the params will be passed
     */
    dataHooks?: any[];
    /** 'Data' attribute from the receiving component (params, data, queryParams,...)
     *
     */
    title?: any;
    /** Modal title
     */
    title_accent?: any;
    /** Modal title (continuation) in blue
     */
    align?: "start" | "center" | "end";
}
export declare class TabbedModalComponent implements OnInit {
    viewContainerRef: ViewContainerRef;
    private componentFactoryResolver;
    private renderer2;
    modalData: TabbedModalData;
    private _matDialogRef;
    data: TabbedModalData;
    tabsData: TabsData[];
    activeTab: any;
    tabComponent: ComponentHostDirective;
    align: any;
    constructor(viewContainerRef: ViewContainerRef, componentFactoryResolver: ComponentFactoryResolver, renderer2: Renderer2, modalData: TabbedModalData, _matDialogRef: MatDialogRef<TabbedModalData>);
    ngOnInit(): void;
    switchTab(tab: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TabbedModalComponent, [null, null, null, { optional: true; }, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TabbedModalComponent, "yd-tabbed-modal", never, { "data": "data"; }, {}, never, never, false>;
}
