import { TemplateRef } from '@angular/core';
import { NavItem } from '../../controls/navigation/nav-item';
import { DisplayStatus, ViewStatus } from '../../shared/display';
import * as i0 from "@angular/core";
export declare class Overlay implements DisplayStatus {
    /**  @deprecated Deprecated due to noDataTemplate being prefered */
    action?: NavItem;
    noDataTemplate?: TemplateRef<any>;
    displayAsMask?: boolean;
    status: ViewStatus;
    message?: string;
    /** Addition css classes to apply to the .overlay element */
    overlayClassList?: string;
    constructor(status: ViewStatus, message?: string);
    setStatus(status: ViewStatus, message?: string, action?: NavItem, noDataTemplate?: TemplateRef<any>, overlayClassList?: string): void;
}
/**
 * Wraps content in order to show pending, error, and no data states with an optional message/noDataTemplate
 */
export declare class ViewOverlayComponent implements Overlay {
    status: ViewStatus;
    message?: string | undefined;
    /**  @deprecated Deprecated due to noDataTemplate being prefered */
    action?: NavItem | undefined;
    noDataTemplate?: TemplateRef<any>;
    /**
     * Mask (not remove) the transcluded content from the dom while not hasData status.
     */
    displayAsMask?: boolean;
    /**
     * Additional css classes to apply to the .overlay element
     */
    overlayClassList?: string;
    setStatus(status: ViewStatus, message?: string, action?: NavItem, noDataTemplate?: TemplateRef<any>): void;
    actionClicked(event: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ViewOverlayComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ViewOverlayComponent, "[ecOverlay]", never, { "status": { "alias": "status"; "required": false; }; "message": { "alias": "message"; "required": false; }; "action": { "alias": "action"; "required": false; }; "noDataTemplate": { "alias": "noDataTemplate"; "required": false; }; "displayAsMask": { "alias": "displayAsMask"; "required": false; }; "overlayClassList": { "alias": "overlayClassList"; "required": false; }; }, {}, never, ["*"], false, never>;
}
