import { AfterContentInit, ChangeDetectorRef, OnInit, QueryList, TemplateRef } from '@angular/core';
import { Store } from '@ngxs/store';
import { PrimeTemplate, MenuItem } from 'primeng/api';
import { Observable } from 'rxjs';
import { Assistance } from '../../core/models/assistance';
import { LayoutState } from '../../core/models/layout';
import { RouterDataListenerService } from '../../core/services/router-data-listener.service';
import { AthenaLayout } from './layout.config';
import { SmzNotification } from '../../core/models/notifications';
import * as i0 from "@angular/core";
export declare class AthenaLayoutComponent implements OnInit, AfterContentInit {
    readonly layout: AthenaLayout;
    readonly routerListener: RouterDataListenerService;
    private store;
    cdr: ChangeDetectorRef;
    templates: QueryList<PrimeTemplate>;
    contentClass$: Observable<string>;
    state$: Observable<LayoutState>;
    assistance$: Observable<Assistance>;
    menu: MenuItem[];
    profile: MenuItem[];
    notifications: SmzNotification[];
    headerExtrasTemplate: TemplateRef<any>;
    footerExtrasTemplate: TemplateRef<any>;
    constructor(layout: AthenaLayout, routerListener: RouterDataListenerService, store: Store, cdr: ChangeDetectorRef);
    ngOnInit(): void;
    ngAfterContentInit(): void;
    hideMenu(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AthenaLayoutComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AthenaLayoutComponent, "smz-ui-athena-layout", never, { "menu": { "alias": "menu"; "required": false; }; "profile": { "alias": "profile"; "required": false; }; "notifications": { "alias": "notifications"; "required": false; }; }, {}, ["templates"], ["*"], false, never>;
}
