import { App } from "../../App";
import { CancelToken, IClassOf } from "../../core/types";
import XNode from "../../core/XNode";
import { IPageOptions } from "../../services/NavigationService";
import { AtomControl } from "./AtomControl";
export declare class AtomPageLink extends AtomControl {
    static page: (attributes: Partial<unknown>, ...nodes: XNode[]) => XNode;
    page: string | IClassOf<AtomControl>;
    parameters: any;
    isOpen: boolean;
    cancelToken: CancelToken;
    options: IPageOptions;
    /**
     * Fired after the result was received from popup/window successfully
     */
    eventResult: any;
    /**
     * Fired after popup/window was cancelled
     */
    eventError: any;
    /**
     * Fired before opening popup/window.
     * In the event's detail object, you must set parameters property as shown below...
     * eventGetParameters={Bind.event((e) => e.detail.parameters = ({}))}
     */
    eventGetParameters: any;
    /**
     * Block opening Popup/Page again till the opened page is closed or cancelled.
     * If set true, toggle will not work. Default is false.
     */
    modal: boolean;
    /**
     * Setting Toggle (default true) true will close the already opened Popup/window, otherwise it will
     * open a new window if Modal is false.
     */
    toggle: boolean;
    constructor(app: App, e?: HTMLElement);
    preCreate(): void;
    protected openPopup(): Promise<void>;
}
//# sourceMappingURL=AtomPageLink.d.ts.map