import { EventEmitter } from '@angular/core';
import { AppPortal, IonicApp } from './app-root';
import { ClickBlock } from '../../util/click-block';
import { Config } from '../../config/config';
import { NavOptions } from '../../navigation/nav-util';
import { NavController } from '../../navigation/nav-controller';
import { Platform } from '../../platform/platform';
import { ViewController } from '../../navigation/view-controller';
import { MenuController } from '../menu/menu-controller';
export declare class App {
    private _config;
    private _platform;
    private _menuCtrl;
    private _disTime;
    private _scrollTime;
    private _title;
    private _titleSrv;
    private _rootNav;
    private _disableScrollAssist;
    _clickBlock: ClickBlock;
    _appRoot: IonicApp;
    viewDidLoad: EventEmitter<any>;
    viewWillEnter: EventEmitter<any>;
    viewDidEnter: EventEmitter<any>;
    viewWillLeave: EventEmitter<any>;
    viewDidLeave: EventEmitter<any>;
    viewWillUnload: EventEmitter<any>;
    constructor(_config: Config, _platform: Platform, _menuCtrl?: MenuController);
    setTitle(val: string): void;
    setElementClass(className: string, isAdd: boolean): void;
    setEnabled(isEnabled: boolean, duration?: number): void;
    _setDisableScroll(disableScroll: boolean): void;
    isEnabled(): boolean;
    setScrolling(timeStamp: number): void;
    isScrolling(): boolean;
    getActiveNav(): NavController;
    getRootNav(): NavController;
    _setRootNav(nav: any): void;
    present(enteringView: ViewController, opts: NavOptions, appPortal?: AppPortal): Promise<any>;
    goBack(): Promise<any>;
    navPop(): Promise<any>;
}
