UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

59 lines 2.41 kB
import { Observable } from 'rxjs'; import { AlertGroupData, DismissAlertStrategy, DynamicComponentAlert } from './dynamic-component-alert.model'; import { AlertType } from '../alert'; export declare class DynamicComponentAlertAggregator { anyAlertExists$: Observable<boolean>; /** * Array containing grouped alerts with data necessary to display alerts and whether alert group should be dismissible. */ alertGroups: Array<{ type: AlertType; value: AlertGroupData; }>; /** * Private Map of alerts data. */ private aggregatedAlertsData; private anyAlertExistsSubject; constructor(alerts?: DynamicComponentAlert[]); /** * Adds alert to aggregator. * * @param {DynamicComponentAlert[]} alerts List of alerts that should be added to aggregator. * */ addAlerts(...alerts: DynamicComponentAlert[]): void; /** * Remove alerts in group by provided alert type or removes all alerts when no param is provided. * * @param {AlertType} type Type of alerts group that should be removed. * */ clear(type?: AlertType): void; /** * Sets possibility of alert to be dismissed in specific way. * * @param {AlertType} alertType Type of alerts for which the dismissal strategy should be set. * @param {dismissStrategy} dismissStrategy Type of dismissal strategy that will be set for the alert type. * */ setAlertGroupDismissStrategy(alertType: AlertType, dismissStrategy: DismissAlertStrategy): void; /** * Removes alerts in group due to dismissal dismissStrategy and sets userDismissalChoice property. * If group has dismissal strategy declared as TEMPORARY_OR_PERMANENT, its userDismissalChoice property can be set to * REMIND_ALLOWED or REMIND_DISALLOWED depending on parameter. * * @param {AlertType} alertType Type of alerts group that should be dismissed. * @param {boolean} permanent Determines whether the dismissal of alerts of a given type is permanent. * */ dismissAlertGroup(alertType: AlertType, isPermanent?: boolean): void; /** * Alert aggregator as a widget property should not be serialized and stored in database. */ toJSON(): any; private initAlertsGroups; private setAlerts; private onDataChanged; } //# sourceMappingURL=dynamic-component-alert-aggregator.d.ts.map