36 lines
922 B
TypeScript
36 lines
922 B
TypeScript
|
|
export type TAlertSeverity = 'low' | 'medium' | 'high' | 'critical';
|
||
|
|
|
||
|
|
export type TAlertStatus = 'pending' | 'seen' | 'dismissed';
|
||
|
|
|
||
|
|
export type TAlertCategory = 'security' | 'admin' | 'system';
|
||
|
|
|
||
|
|
export type TAlertNotificationStatus = 'pending' | 'sent' | 'failed' | 'seen';
|
||
|
|
|
||
|
|
export interface IAlert {
|
||
|
|
id: string;
|
||
|
|
data: {
|
||
|
|
recipientUserId: string;
|
||
|
|
organizationId?: string;
|
||
|
|
category: TAlertCategory;
|
||
|
|
eventType: string;
|
||
|
|
severity: TAlertSeverity;
|
||
|
|
title: string;
|
||
|
|
body: string;
|
||
|
|
actorUserId?: string;
|
||
|
|
relatedEntityId?: string;
|
||
|
|
relatedEntityType?: string;
|
||
|
|
notification: {
|
||
|
|
hintId: string;
|
||
|
|
status: TAlertNotificationStatus;
|
||
|
|
attemptCount: number;
|
||
|
|
createdAt: number;
|
||
|
|
deliveredAt?: number | null;
|
||
|
|
seenAt?: number | null;
|
||
|
|
lastError?: string | null;
|
||
|
|
};
|
||
|
|
createdAt: number;
|
||
|
|
seenAt?: number | null;
|
||
|
|
dismissedAt?: number | null;
|
||
|
|
};
|
||
|
|
}
|