import { ComponentRef } from '@angular/core';
import { LambModalBackdropComponent } from './modal-backdrop.component';
import { LambModalWindowComponent } from './modal-window.component';
import { ContentRef } from './util/popup';
/**
 * Una referencia a un modal activo (actualmente abierto). Instancias de esta clase
 * puede ser inyectado en componentes pasados ​​como contenido modal.
 */
export declare class LambActiveModal {
    /**
     * Se puede usar para cerrar un modal, pasando un resultado opcional.
     *  @param reason rasultado.
     */
    close(result?: any): void;
    /**
     * Se puede usar para descartar un modal, pasando un motivo opcional.
     * @param reason razon por que se descarto.
     */
    dismiss(reason?: any): void;
}
/**
 * Una referencia a un modal recientemente abierto.
 */
export declare class LambModalRef {
    private windowComponentRef;
    private contentRef;
    private backdropComponentRef;
    private beforeDismiss;
    private resolve;
    private reject;
    /**
     * La instancia de componente utilizada como contenido modal.
     * Indefinido cuando se utiliza un TemplateRef como contenido modal.
     */
    componentInstance: any;
    /**
     * Una promesa que se resuelve cuando se cierra un modal y se rechaza cuando se desestima un modal.
     */
    result: Promise<any>;
    constructor(windowComponentRef: ComponentRef<LambModalWindowComponent>, contentRef: ContentRef, backdropComponentRef?: ComponentRef<LambModalBackdropComponent>, beforeDismiss?: Function);
    /**
     * Se puede usar para cerrar un modal, pasando un resultado opcional.
     * @param result
     */
    close(result?: any): any;
    /**
     * Se puede usar para descartar un modal, pasando un motivo opcional.
     * @param reason
     */
    dismiss(reason?: any): void;
    private removeModalElements();
}
