import { ComponentFactoryResolver, Injector, ViewContainerRef } from '@angular/core';
import { Subject } from 'rxjs';
import { Constructor } from '@rxap/utilities';
import * as i0 from "@angular/core";
export interface ContainerComponent {
    id: string;
    component: Constructor;
    viewContainerRef?: ViewContainerRef | null;
    injector?: Injector | null;
    componentFactoryResolver?: ComponentFactoryResolver | null;
}
export declare class WindowContainerSidenavService {
    add$: Subject<ContainerComponent>;
    remove$: Subject<ContainerComponent>;
    private components;
    add(component: ContainerComponent): void;
    remove(componentOrId: ContainerComponent | string): void;
    getAll(): ContainerComponent[];
    static ɵfac: i0.ɵɵFactoryDeclaration<WindowContainerSidenavService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<WindowContainerSidenavService>;
}
