///
import { Injector, ApplicationRef, Type, ComponentFactoryResolver } from "@angular/core";
import { Observable } from "rxjs/Observable";
import { Subject } from "rxjs/Subject";
import "rxjs/add/operator/share";
import "rxjs/add/operator/cache";
export declare type ModalBackdrop = "static" | boolean;
export declare class Modal {
private injector;
private componentResolver;
private appRef;
constructor(injector: Injector, componentResolver: ComponentFactoryResolver, appRef: ApplicationRef);
create({component, providers, modalParentSelector, keyboard, show, backdrop}: ModalOptions): Observable;
private createComponent(component, providers);
private getAppRef();
}
export interface ModalOptions {
component: Type;
providers?: Array | any[] | any>;
modalParentSelector?: string;
backdrop?: ModalBackdrop;
show?: boolean;
keyboard?: boolean;
}
export interface ModalInstance {
jqueryElement: any;
result: Observable;
discard(): void;
close(val: any): void;
error(val: any): void;
}
export declare class ModalActions {
private sub;
destroyed: boolean;
constructor(sub: Subject, destroyed?: boolean);
discard(): void;
close(val: any): void;
error(val: any): void;
}