import { AAssetManagerProcessStatePlugin } from '../base/AAssetManagerProcessStatePlugin';
import { ThreeViewer } from '../../viewer';
/**
 * Loading Screen Plugin
 *
 * Shows a configurable loading screen overlay over the canvas.
 *
 * @category Plugins
 */
export declare class LoadingScreenPlugin extends AAssetManagerProcessStatePlugin {
    static readonly PluginType = "LoadingScreenPlugin";
    styles: string;
    spinners: {
        styles: string;
        html: string;
    }[];
    refresh(): void;
    loader: number;
    loadingTextHeader: string;
    errorTextHeader: string;
    showFileNames: boolean;
    showProcessStates: boolean;
    showProgress: boolean;
    hideOnOnlyErrors: boolean;
    hideOnFilesLoad: boolean;
    hideOnSceneObjectLoad: boolean;
    /**
     * Minimize when scene has objects
     * Note: also checks for scene.environment and doesnt minimize when environment is null or undefined
     * @default true
     */
    minimizeOnSceneObjectLoad: boolean;
    showOnFilesLoading: boolean;
    showOnSceneEmpty: boolean;
    hideDelay: number;
    backgroundOpacity: number;
    backgroundBlur: number;
    background: string;
    textColor: string;
    /**
     * Default logo image shown during loading
     * @default 'https://threepipe.org/logo.svg'
     */
    static LS_DEFAULT_LOGO: string;
    logoImage: string;
    private _isPreviewing;
    private _previewState;
    togglePreview(): void;
    loadingElement: HTMLDivElement;
    filesElement: HTMLDivElement;
    logoElement: HTMLDivElement;
    constructor(container?: HTMLElement);
    private _isHidden;
    get visible(): boolean;
    hide(): Promise<void>;
    hideWithDelay(): Promise<void>;
    show(): void;
    protected _showMainDiv(): void;
    minimize(): void;
    maximize(): void;
    private _temp;
    private _setHTML;
    protected _updateMainDiv(processState: Map<string, {
        state: string;
        progress?: number | undefined;
    }>, updateVisibility?: boolean): void;
    protected _updateVisibility(processState: Map<string, {
        state: string;
        progress?: number | undefined;
    }>, errors: number): boolean;
    isEditor: boolean;
    private _sceneUpdate;
    stylesheet?: HTMLStyleElement;
    stylesheetLoader?: HTMLStyleElement[];
    onAdded(viewer: ThreeViewer): void;
    onRemove(viewer: ThreeViewer): void;
}
//# sourceMappingURL=../../src/plugins/interaction/LoadingScreenPlugin.d.ts.map