import * as React from 'react';
import { ApplicationStateService } from '../application';
import { BaseView } from './default-view';
export declare const RootComponents: unique symbol;
export interface RootComponents {
    Loading?: React.FC;
}
export declare const RootViewComponent: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
export declare class RootView extends BaseView {
    id: string;
    loading: boolean;
    protected appState: ApplicationStateService;
    constructor(appState: ApplicationStateService);
    view: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
    onViewMount: () => void;
    /**
     * Return an HTML element that indicates the startup phase, e.g. with an animation or a splash screen.
     */
    protected getStartupIndicator(): HTMLElement | undefined;
    /**
     * If a startup indicator is present, it is first hidden with the `mana-hidden` CSS class and then
     * removed after a while. The delay until removal is taken from the CSS transition duration.
     */
    protected hideLoading(): Promise<void>;
}
//# sourceMappingURL=root-view.d.ts.map