import { OnDestroy } from '@angular/core';
import { Alert } from './alert.model';
import { AlertService } from './alert.service';
import { AlertDetailsComponent } from './alert-details.component';
import * as i0 from "@angular/core";
/**
 * Alert component allows creating alert with complex view.
 */
export declare class AlertComponent implements OnDestroy, Alert {
    alertService: AlertService;
    /**
     * The type of the alert.
     */
    type: 'success' | 'warning' | 'danger' | 'info' | 'system';
    /**
     * Function to call if user clicks on the detail button.
     */
    onDetail: () => void;
    /**
     * Function to call if user clicks on the close button.
     */
    onClose: () => void;
    /**
     * Detailed information to display.
     */
    detailedData: any;
    /**
     * The text templateRef to display message.
     */
    text: any;
    /**
     * Content of AlertDetailsComponent is displayed as alertDetails.
     */
    containDetailsComponent: AlertDetailsComponent;
    /**
     * @ignore
     */
    private viewInitTimeout;
    /**
     * @ignore
     */
    constructor(alertService: AlertService);
    /**
     * AlertComponent adds new alert to collection stored in alertService after view init.
     */
    ngAfterViewInit(): void;
    /**
     * AlertComponent removes alert from collection stored in alertService on destroy component.
     */
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AlertComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AlertComponent, "c8y-alert", never, { "type": { "alias": "type"; "required": false; }; "onDetail": { "alias": "onDetail"; "required": false; }; "onClose": { "alias": "onClose"; "required": false; }; }, {}, ["containDetailsComponent"], ["c8y-alert-text", "*", "c8y-alert-details"], false, never>;
}
//# sourceMappingURL=alert.component.d.ts.map