atozas-push-notification
Version:
Real-time push notifications across platforms using socket.io
48 lines (43 loc) • 1.12 kB
text/typescript
// Main exports
export { AtozasPushNotificationClient } from './client';
export { AtozasPushNotificationServer } from './server';
export { NotificationDisplayManager } from './notification-display';
// Type exports
export {
NotificationData,
UserInfo,
NotificationOptions,
NotificationAction,
ClientConfig,
ServerConfig,
SendNotificationParams,
NotificationCallback,
ConnectionCallback,
ErrorCallback,
UserStatusCallback,
NotificationPermission
} from './types';
// Import types for internal use
import { NotificationData } from './types';
// Utility functions
export const generateNotificationId = (): string => {
return `notification_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
};
export const createNotification = (
title: string,
message: string,
data?: any,
options?: Partial<Omit<NotificationData, 'id' | 'title' | 'message' | 'timestamp'>>
): NotificationData => {
return {
id: generateNotificationId(),
title,
message,
timestamp: Date.now(),
data,
priority: 'normal',
...options
};
};
// Version
export const VERSION = '1.1.0';